Origin for each line in
init.mk
from check-in 5f60bcc749:
295630c60d 2019-10-23 1: # Meta targets
295630c60d 2019-10-23 2:
295630c60d 2019-10-23 3: TARGETS+=adjkerntz bootfs cleanvar cleartmp cloned devfs dmesg dumpon fsck hostname ifconfig kld ldconfig mixer mount mountlate msgs newsyslog nextboot nfsclient pwcheck random root rpc_umntall runshm savecore swap sysctl sysdb wlans
295630c60d 2019-10-23 4:
295630c60d 2019-10-23 5: DAEMON: pwcheck sysctl sysdb NETWORK SERVERS ldconfig nfsclient cleartmp
295630c60d 2019-10-23 6:
295630c60d 2019-10-23 7: LOGIN: DAEMON dntpd msgs powerd
295630c60d 2019-10-23 8:
295630c60d 2019-10-23 9: NETWORK: ifconfig devd hostname
295630c60d 2019-10-23 10:
295630c60d 2019-10-23 11: SERVERS: swap mountlate syslogd newsyslog
295630c60d 2019-10-23 12:
295630c60d 2019-10-23 13: SERVICE: ifconfig mount random hostname cleanvar
295630c60d 2019-10-23 14:
295630c60d 2019-10-23 15: # regular targets
295630c60d 2019-10-23 16:
295630c60d 2019-10-23 17: adjkerntz: random mount
295630c60d 2019-10-23 18: echo "MRC:$@> Adjust kernel timezone."
295630c60d 2019-10-23 19: adjkerntz -i
295630c60d 2019-10-23 20:
295630c60d 2019-10-23 21: bootfs: fsck
295630c60d 2019-10-23 22: echo "MRC:$@> Checking whether we need /boot mounted."
295630c60d 2019-10-23 23: mount -vadr | grep -q ' /boot$$' && mount -r /boot || true
295630c60d 2019-10-23 24:
295630c60d 2019-10-23 25: CLEANVAR_DIRS?=/var/run /var/spool/lock /var/spool/uucp/.Temp
295630c60d 2019-10-23 26:
295630c60d 2019-10-23 27: cleanvar: mount
295630c60d 2019-10-23 28: echo "MRC:$@> Cleaning 'var's."
295630c60d 2019-10-23 29: .for dir in ${CLEANVAR_DIRS}
295630c60d 2019-10-23 30: -test -d ${dir} && find ${dir} -mindepth 1 -delete
295630c60d 2019-10-23 31: .endfor
295630c60d 2019-10-23 32: install -m644 /dev/null /var/run/utmpx
295630c60d 2019-10-23 33:
295630c60d 2019-10-23 34: cleartmp: mountlate
295630c60d 2019-10-23 35: echo "MRC:$@> Clearing tmp."; \
295630c60d 2019-10-23 36: find -x /tmp -mindepth 1 ! -name lost+found \
295630c60d 2019-10-23 37: ! -name snapshots ! -path "./snapshots/*" \
295630c60d 2019-10-23 38: ! -name quota.user ! -name quota.group \
295630c60d 2019-10-23 39: -delete -type d -prune ;\
295630c60d 2019-10-23 40: rm -f /tmp/.X*-lock ;\
295630c60d 2019-10-23 41: rm -fr /tmp/.X11-unix ;\
295630c60d 2019-10-23 42: mkdir -m 1777 /tmp/.X11-unix
295630c60d 2019-10-23 43:
295630c60d 2019-10-23 44: cloned: kld
295630c60d 2019-10-23 45: echo "MRC:$@> Cloning interfaces: ${CLONED_INTERFACES}"
295630c60d 2019-10-23 46: .for iface in ${CLONED_INTERFACES}
295630c60d 2019-10-23 47: ifconfig ${iface} create
295630c60d 2019-10-23 48: .endfor
295630c60d 2019-10-23 49:
295630c60d 2019-10-23 50: DEVFS_CONFIG_FILES?=/etc/defaults/devfs.conf /etc/devfs.conf
295630c60d 2019-10-23 51:
295630c60d 2019-10-23 52: devfs:
295630c60d 2019-10-23 53: echo "MRC:$@> Applying rules: ${DEVFS_CONFIG_FILES}"
295630c60d 2019-10-23 54: .for file in ${DEVFS_CONFIG_FILES}
295630c60d 2019-10-23 55: .if exists(${file})
295630c60d 2019-10-23 56: devfsctl -a -f ${file}
295630c60d 2019-10-23 57: .endif
295630c60d 2019-10-23 58: .endfor
295630c60d 2019-10-23 59:
295630c60d 2019-10-23 60: DMESG_FILE?=/var/run/dmesg.boot
295630c60d 2019-10-23 61:
295630c60d 2019-10-23 62: dmesg: mountlate
295630c60d 2019-10-23 63: echo "MRC:$@> Writing dmesg."
295630c60d 2019-10-23 64: umask 022 ; dmesg -a >> ${DMESG_FILE}
295630c60d 2019-10-23 65:
295630c60d 2019-10-23 66: DUMPDEV?=no
295630c60d 2019-10-23 67:
295630c60d 2019-10-23 68: dumpon: random
295630c60d 2019-10-23 69: test -e ${DUMPDEV} && { \
295630c60d 2019-10-23 70: echo "MRC:$@> Setting dumpon device to ${DUMPDEV}"; \
295630c60d 2019-10-23 71: dumpon -v ${DUMPDEV}; \
295630c60d 2019-10-23 72: } || true
295630c60d 2019-10-23 73:
295630c60d 2019-10-23 74: fsck:
295630c60d 2019-10-23 75: echo "MRC:$@> Checking disks." ;\
295630c60d 2019-10-23 76: fsck -p ;\
295630c60d 2019-10-23 77: case $$? in \
295630c60d 2019-10-23 78: 0) ;; \
295630c60d 2019-10-23 79: 2) exit 1 \
295630c60d 2019-10-23 80: ;; \
295630c60d 2019-10-23 81: 4) echo "Rebooting..." ;\
295630c60d 2019-10-23 82: reboot ;\
295630c60d 2019-10-23 83: echo "Reboot failed; help!" ;\
295630c60d 2019-10-23 84: exit 1 \
295630c60d 2019-10-23 85: ;; \
295630c60d 2019-10-23 86: 8) if [ -n "$${FSCK_Y_ENABLE}" ]; then \
295630c60d 2019-10-23 87: echo "File system preen failed, trying fsck -y." ;\
295630c60d 2019-10-23 88: fsck -y || {\
295630c60d 2019-10-23 89: echo "Automatic file system check failed; help!" ;\
295630c60d 2019-10-23 90: exit 1 ;\
295630c60d 2019-10-23 91: }\
295630c60d 2019-10-23 92: else \
295630c60d 2019-10-23 93: echo "Automatic file system check failed; help!" ;\
295630c60d 2019-10-23 94: exit 1 ;\
295630c60d 2019-10-23 95: fi ;\
295630c60d 2019-10-23 96: ;; \
295630c60d 2019-10-23 97: 12) echo "Boot interrupted." ;\
295630c60d 2019-10-23 98: exit 1 \
295630c60d 2019-10-23 99: ;; \
295630c60d 2019-10-23 100: 130) exit 1 \
295630c60d 2019-10-23 101: ;; \
295630c60d 2019-10-23 102: *) echo "Unknown error, help!" ;\
295630c60d 2019-10-23 103: exit 1 \
295630c60d 2019-10-23 104: ;; \
295630c60d 2019-10-23 105: esac
295630c60d 2019-10-23 106:
295630c60d 2019-10-23 107: HOSTNAME?=Amnesiac
295630c60d 2019-10-23 108:
295630c60d 2019-10-23 109: hostname:
295630c60d 2019-10-23 110: echo "MRC:$@> Setting to ${HOSTNAME}."
295630c60d 2019-10-23 111: hostname ${HOSTNAME}
295630c60d 2019-10-23 112:
295630c60d 2019-10-23 113: IFCONFIG_IFACES?=lo0
5f60bcc749 2019-10-23 114: IFCONFIG_lo0?=inet 127.0.0.1/8 up
295630c60d 2019-10-23 115:
295630c60d 2019-10-23 116: ifconfig: adjkerntz wlans cloned kld
295630c60d 2019-10-23 117: echo "MRC:$@> Starting interfaces: ${IFCONFIG_IFACES}"
295630c60d 2019-10-23 118: .for iface in ${IFCONFIG_IFACES}
5f60bcc749 2019-10-23 119: .for item in ${IFCONFIG_${iface}:tW:ts;}
295630c60d 2019-10-23 120: ifconfig ${iface} ${item}
295630c60d 2019-10-23 121: .endfor
5f60bcc749 2019-10-23 122: .undef _IFCONFIG_ARGS
295630c60d 2019-10-23 123: .endfor
295630c60d 2019-10-23 124:
295630c60d 2019-10-23 125: kld: bootfs
295630c60d 2019-10-23 126: .if defined(KLD_LIST)
295630c60d 2019-10-23 127: echo "MRC:$@> Loading kernel modules: ${KLD_LIST}"
295630c60d 2019-10-23 128: kldload -n ${KLD_LIST}
295630c60d 2019-10-23 129: .endif
295630c60d 2019-10-23 130:
295630c60d 2019-10-23 131: LDCONFIG_PATHS?=/lib /usr/lib /usr/local/lib /usr/pkg/lib
295630c60d 2019-10-23 132: LDCONFIG_LOCAL_DIRS?=/usr/local/libdata/ldconfig
295630c60d 2019-10-23 133:
295630c60d 2019-10-23 134: .for path in ${LDCONFIG_PATHS} /etc/ld-elf.so.conf
295630c60d 2019-10-23 135: .if exists(${path})
295630c60d 2019-10-23 136: ldc+=${path}
295630c60d 2019-10-23 137: .endif
295630c60d 2019-10-23 138: .endfor
295630c60d 2019-10-23 139:
295630c60d 2019-10-23 140: .for dir in ${LDCONFIG_LOCAL_DIRS}
295630c60d 2019-10-23 141: .if exists(${dir})
295630c60d 2019-10-23 142: ldc+=${:!find ${dir} -type f!}
295630c60d 2019-10-23 143: .endif
295630c60d 2019-10-23 144: .endfor
295630c60d 2019-10-23 145:
295630c60d 2019-10-23 146: ldconfig: mountlate
295630c60d 2019-10-23 147: echo "MRC:$@> Initializing shared libraries: ${ldc}"; \
295630c60d 2019-10-23 148: ldconfig -elf ${ldc}
295630c60d 2019-10-23 149:
295630c60d 2019-10-23 150: mixers=${:!find /dev -name 'mixer*'!:S/\/dev\///}
295630c60d 2019-10-23 151:
295630c60d 2019-10-23 152: mixer: mount cleanvar
295630c60d 2019-10-23 153: echo "MRC:$@> Restoring levels."
295630c60d 2019-10-23 154: .for mixer in ${mixers}
295630c60d 2019-10-23 155: -test -f /var/db/${mixer}-state && mixer -f /dev/${mixer} `cat /var/db/${mixer}-state`
295630c60d 2019-10-23 156: .endfor
295630c60d 2019-10-23 157:
295630c60d 2019-10-23 158: NETFS_TYPES?=nfs:NFS smbfs:SMB
295630c60d 2019-10-23 159:
295630c60d 2019-10-23 160: excludes=${NETFS_TYPES:C/:.*//}
295630c60d 2019-10-23 161:
295630c60d 2019-10-23 162: mount: root
295630c60d 2019-10-23 163: echo "MRC:$@> Mount local FS."
295630c60d 2019-10-23 164: mount -a -t no${excludes:ts,}
295630c60d 2019-10-23 165:
295630c60d 2019-10-23 166: mountlate: NETWORK mount cleanvar runshm devd
295630c60d 2019-10-23 167: echo "MRC:$@> Mount late FS."
295630c60d 2019-10-23 168: mount -a
295630c60d 2019-10-23 169:
295630c60d 2019-10-23 170: msgs: mount
295630c60d 2019-10-23 171: echo "MRC:$@> Making bounds." ;\
295630c60d 2019-10-23 172: test ! -d /var/msgs -o -f /var/msgs/bound -o -L /var/msgs/bounds || \
295630c60d 2019-10-23 173: echo 0 > /var/msgs/bounds
295630c60d 2019-10-23 174:
295630c60d 2019-10-23 175: NEWSYSLOG_ENABLE?=no
295630c60d 2019-10-23 176:
295630c60d 2019-10-23 177: newsyslog: mountlate sysdb
295630c60d 2019-10-23 178: test -z "$${NEWSYSLOG_ENABLE}" || \
295630c60d 2019-10-23 179: echo "MRC:$@> Trimming log files." ;\
295630c60d 2019-10-23 180: /usr/sbin/newsyslog ${NEWSYSLOG_FLAGS}
295630c60d 2019-10-23 181:
295630c60d 2019-10-23 182: nextboot: mount
295630c60d 2019-10-23 183: .if exists(/boot/nextkernel)
295630c60d 2019-10-23 184: echo "MRC:$@> Removing nextboot setting."
295630c60d 2019-10-23 185: rm -f /boot/nextkernel
295630c60d 2019-10-23 186: .endif
295630c60d 2019-10-23 187:
295630c60d 2019-10-23 188: NFSCLIENT_ENABLE?=no
295630c60d 2019-10-23 189:
295630c60d 2019-10-23 190: .if empty(NFSCLIENT_ENABLE:tl:Mno)
295630c60d 2019-10-23 191: DAEMON_rpcbind_ENABLE=yes
295630c60d 2019-10-23 192: .endif
295630c60d 2019-10-23 193:
295630c60d 2019-10-23 194: nfsclient: NETWORK rpcbind rpc_umntall
295630c60d 2019-10-23 195: test -z "$${NFSCLIENT_ENABLE}" || kldload -n nfs
295630c60d 2019-10-23 196:
295630c60d 2019-10-23 197: pwcheck: mountlate syslogd
295630c60d 2019-10-23 198: echo "MRC:$@> Checking password lock file."
295630c60d 2019-10-23 199: .if exists(/etc/ptmp)
295630c60d 2019-10-23 200: logger -s -p auth.err "password file may be incorrect -- /etc/ptmp exists"
295630c60d 2019-10-23 201: .endif
295630c60d 2019-10-23 202:
295630c60d 2019-10-23 203: ENTROPY_FILE?=/var/db/entropy/random
295630c60d 2019-10-23 204: ENTROPY_DIR?=/var/db/entropy
295630c60d 2019-10-23 205:
295630c60d 2019-10-23 206: random: mount devfs
295630c60d 2019-10-23 207: echo "MRC:$@> Seeding."
295630c60d 2019-10-23 208: sysctl kern.seedenable=1 > /dev/null
295630c60d 2019-10-23 209: ( ps -fauxww; ${SYSCTL} -a; date; df -ib; dmesg; ps -fauxww; ) 2>&1 | dd status=none of=/dev/random bs=8k
295630c60d 2019-10-23 210: cat /bin/ls | dd status=none of=/dev/random bs=8k
295630c60d 2019-10-23 211: .if exists(ENTROPY_DIR)
295630c60d 2019-10-23 212: .for file in ${:!find ${ENTROPY_DIR} -type f!}
295630c60d 2019-10-23 213: dd status=none if=${file} of=/dev/random bs=8k
295630c60d 2019-10-23 214: .endfor
295630c60d 2019-10-23 215: .elif exists(ENTROPY_FILE)
295630c60d 2019-10-23 216: dd status=none if=${ENTROPY_FILE} of=/dev/random bs=8k
295630c60d 2019-10-23 217: .endif
295630c60d 2019-10-23 218: sysctl kern.seedenable=0 > /dev/null
295630c60d 2019-10-23 219:
295630c60d 2019-10-23 220: root: fsck bootfs
295630c60d 2019-10-23 221: echo "MRC:$@> Mount root R/W."
295630c60d 2019-10-23 222: mount -uo rw /
295630c60d 2019-10-23 223: umount -a
295630c60d 2019-10-23 224:
295630c60d 2019-10-23 225: rpc_umntall: mountlate NETWORK rpcbind
295630c60d 2019-10-23 226: .if empty(RPC_UMNTALL_ENABLE:tl:Mno)
295630c60d 2019-10-23 227: echo "MRC:$@> Sending RPC unmount notifications."; \
295630c60d 2019-10-23 228: test -f /var/db/mounttab || true && \
295630c60d 2019-10-23 229: rpc.umntall -k &
295630c60d 2019-10-23 230: .endif
295630c60d 2019-10-23 231:
295630c60d 2019-10-23 232: runshm: cleanvar
295630c60d 2019-10-23 233: echo "MRC:$@> Mount and populate /var/run/shm."; \
295630c60d 2019-10-23 234: mkdir -p /var/run/shm; \
295630c60d 2019-10-23 235: mount_tmpfs -m 01777 dummy /var/run/shm; \
295630c60d 2019-10-23 236: mkdir -p -m 01777 /var/run/shm/tmp; \
295630c60d 2019-10-23 237:
295630c60d 2019-10-23 238: DUMPDIR?=/var/crash
295630c60d 2019-10-23 239: CRASHINFO_ENABLE?=no
295630c60d 2019-10-23 240:
295630c60d 2019-10-23 241: savecore: dumpon
295630c60d 2019-10-23 242: .if empty(DUMPDEV:tl:Mno) && exists(${DUMPDEV}) && exists(${DUMPDIR})
295630c60d 2019-10-23 243: echo "MRC:$@> Saving coredump."; \
295630c60d 2019-10-23 244: savecore ${DUMPDIR} ${DUMPDEV}
295630c60d 2019-10-23 245: .if empty(CRASHINFO_ENABLE:tl:Mno)
295630c60d 2019-10-23 246: crashinfo -d ${DUMPDIR}
295630c60d 2019-10-23 247: .endif
295630c60d 2019-10-23 248: .endif
295630c60d 2019-10-23 249:
295630c60d 2019-10-23 250: swap: savecore
295630c60d 2019-10-23 251: .if ${:!sysctl -n vm.swap_enabled!}} != 0
295630c60d 2019-10-23 252: echo "MRC:$@> Enabling swap."; \
295630c60d 2019-10-23 253: swapon -a
295630c60d 2019-10-23 254: .endif
295630c60d 2019-10-23 255:
295630c60d 2019-10-23 256: sysctl: kld root
295630c60d 2019-10-23 257: .if exists(/etc/sysctl.conf)
295630c60d 2019-10-23 258: echo "MRC:$@> Setting sysctl defaults."; \
295630c60d 2019-10-23 259: awk '$$0~/^[ ]*(#.*)?$$/{next}{print}' < /etc/sysctl.conf | xargs -n1 sysctl
295630c60d 2019-10-23 260: .endif
295630c60d 2019-10-23 261:
295630c60d 2019-10-23 262: sysdb: mountlate
295630c60d 2019-10-23 263: echo "MRC:$@> Building databases."; \
295630c60d 2019-10-23 264: dev_mkdb; \
295630c60d 2019-10-23 265: install -c -m 644 -g wheel /dev/null /var/run/utmpx
295630c60d 2019-10-23 266:
295630c60d 2019-10-23 267: wlans: kld
295630c60d 2019-10-23 268: echo "MRC:$@> Configuring wlans."; \
295630c60d 2019-10-23 269: for dev in `sysctl -n net.wlan.devices`; do \
295630c60d 2019-10-23 270: eval all_wlans=\$${WLANS_$${dev}}; \
295630c60d 2019-10-23 271: for wlan in $${all_wlans}; do \
295630c60d 2019-10-23 272: eval wlan_args=\$${WLANS_$${wlan}_ARGS}; \
295630c60d 2019-10-23 273: ifconfig $${wlan} create wlandev $${dev} $${wlan_args}; \
295630c60d 2019-10-23 274: ifconfig $${wlan} up; \
295630c60d 2019-10-23 275: done; \
295630c60d 2019-10-23 276: done