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