1*9a747e4fSDavid du Colombier# 2*9a747e4fSDavid du Colombier# Assumptions: 3*9a747e4fSDavid du Colombier# 1) $fileserver and /env/sysname will be correctly set 4*9a747e4fSDavid du Colombier# 2) the standalone kernel will eventually be booted with 5*9a747e4fSDavid du Colombier# bootargs=local -B 4096 6*9a747e4fSDavid du Colombier# 7*9a747e4fSDavid du Colombier# 'From scratch' procedure: 8*9a747e4fSDavid du Colombier# 1) bring system up as a terminal: 9*9a747e4fSDavid du Colombier# boot /386/9pcdisk 10*9a747e4fSDavid du Colombier# root is from 'il' 11*9a747e4fSDavid du Colombier# login as 'bootes' 12*9a747e4fSDavid du Colombier# 2) don't forget to 13*9a747e4fSDavid du Colombier# echo 'dma on'>/dev/sdC0/ctl 14*9a747e4fSDavid du Colombier# 3) initialise the disc from scratch and make a 9fat boot partition: 15*9a747e4fSDavid du Colombier# mk partinit 16*9a747e4fSDavid du Colombier# remember to have up to date local copies of plan9.ini and plan9.nvr 17*9a747e4fSDavid du Colombier# and remember the kernel names will be truncated on the FAT parititon. 18*9a747e4fSDavid du Colombier# 4) ream the kfs partition 19*9a747e4fSDavid du Colombier# mk ream 20*9a747e4fSDavid du Colombier# 5) initialise the fs partition for the system 21*9a747e4fSDavid du Colombier# mk $sysname 22*9a747e4fSDavid du Colombier# 23*9a747e4fSDavid du Colombierpartinit: 24*9a747e4fSDavid du Colombier disk/mbr -m /386/mbr /dev/sdC0/data 25*9a747e4fSDavid du Colombier disk/fdisk -baw /dev/sdC0/data 26*9a747e4fSDavid du Colombier disk/prep -banw /dev/sdC0/plan9 27*9a747e4fSDavid du Colombier disk/format -b /386/pbslba -d -r 2 /dev/sdC0/9fat\ 28*9a747e4fSDavid du Colombier /386/9load\ 29*9a747e4fSDavid du Colombier /386/9pcauth\ 30*9a747e4fSDavid du Colombier $sysname/plan9.ini\ 31*9a747e4fSDavid du Colombier $sysname/plan9.nvr 32*9a747e4fSDavid du Colombier 33*9a747e4fSDavid du Colombierream: 34*9a747e4fSDavid du Colombier disk/kfs -rb16384 -B 4096 -f /dev/sdC0/fs 35*9a747e4fSDavid du Colombier 36*9a747e4fSDavid du Colombierfsinit:V: 37*9a747e4fSDavid du Colombier 9fs kfs 38*9a747e4fSDavid du Colombier 9fs $fileserver 39*9a747e4fSDavid du Colombier disk/kfscmd allow 40*9a747e4fSDavid du Colombier disk/kfscmd 'create /adm sys sys 775 d' 41*9a747e4fSDavid du Colombier disk/kfscmd 'create /adm/users adm adm 664' 42*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/users /n/kfs/adm/users 43*9a747e4fSDavid du Colombier disk/kfscmd user 44*9a747e4fSDavid du Colombier disk/mkfs -u /adm/users -s /n/$fileserver ./authproto 45*9a747e4fSDavid du Colombier 46*9a747e4fSDavid du Colombierboundary:V: 47*9a747e4fSDavid du Colombier mk fsinit 48*9a747e4fSDavid du Colombier disk/kfscmd allow 49*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/keys /n/kfs/adm/keys 50*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/keys.who /n/kfs/adm/keys.who 51*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/netkeys /n/kfs/adm/netkeys 52*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/netkeys.who /n/kfs/adm/netkeys.who 53*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/warn.keys /n/kfs/adm/warn.keys 54*9a747e4fSDavid du Colombier cp -x /n/$fileserver/adm/warn.netkeys /n/kfs/adm/warn.netkeys 55*9a747e4fSDavid du Colombier cp $sysname/auth /n/kfs/lib/ndb/auth 56*9a747e4fSDavid du Colombier cp $sysname/consoledb /n/kfs/lib/ndb/consoledb 57*9a747e4fSDavid du Colombier cp $sysname/httppasswords /n/kfs/sys/lib/httppasswords 58*9a747e4fSDavid du Colombier cp $sysname/lib.ndb.mkfile /n/kfs/lib/ndb/mkfile 59*9a747e4fSDavid du Colombier cp $sysname/namespace.$sysname /n/kfs/lib/namespace.$sysname 60*9a747e4fSDavid du Colombier cp $sysname/cpurc /n/kfs/rc/bin/cpurc 61*9a747e4fSDavid du Colombier cp $sysname/sys.log.mkfile /n/kfs/sys/log/mkfile 62*9a747e4fSDavid du Colombier { 63*9a747e4fSDavid du Colombier cd /n/kfs/lib/ndb; mk 64*9a747e4fSDavid du Colombier bind -c /n/kfs/sys/log /sys/log 65*9a747e4fSDavid du Colombier mk -f /sys/log/mkfile 66*9a747e4fSDavid du Colombier unmount /sys/log 67*9a747e4fSDavid du Colombier cd /n/kfs/sys/src/9; mk clean 68*9a747e4fSDavid du Colombier cd /n/kfs/sys/src/fs; mk clean 69*9a747e4fSDavid du Colombier } 70*9a747e4fSDavid du Colombier disk/kfscmd disallow 71*9a747e4fSDavid du Colombier disk/kfscmd sync 72*9a747e4fSDavid du Colombier 73*9a747e4fSDavid du Colombiersaveboundary:V: 74*9a747e4fSDavid du Colombier 9fs $fileserver 75*9a747e4fSDavid du Colombier savedir=/usr/jmk/auth/$sysname 76*9a747e4fSDavid du Colombier cp /adm/keys /n/$fileserver/$savedir/keys 77*9a747e4fSDavid du Colombier cp /adm/keys.who /n/$fileserver/$savedir/keys.who 78*9a747e4fSDavid du Colombier cp /adm/netkeys /n/$fileserver/$savedir/netkeys 79*9a747e4fSDavid du Colombier cp /adm/netkeys.who /n/$fileserver/$savedir/netkeys.who 80*9a747e4fSDavid du Colombier cp /adm/warn.keys /n/$fileserver/$savedir/warn.keys 81*9a747e4fSDavid du Colombier cp /adm/warn.netkeys /n/$fileserver/$savedir/warn.netkeys 82*9a747e4fSDavid du Colombier cp /lib/ndb/auth /n/$fileserver/$savedir/auth 83*9a747e4fSDavid du Colombier cp /lib/ndb/consoledb /n/$fileserver/$savedir/consoledb 84*9a747e4fSDavid du Colombier cp /sys/lib/httppasswords /n/$fileserver/$savedir/httppasswords 85*9a747e4fSDavid du Colombier cp /lib/ndb/mkfile /n/$fileserver/$savedir/lib.ndb.mkfile 86*9a747e4fSDavid du Colombier cp /lib/namespace.$sysname /n/$fileserver/$savedir/namespace.$sysname 87*9a747e4fSDavid du Colombier cp /rc/bin/cpurc /n/$fileserver/$savedir/cpurc 88*9a747e4fSDavid du Colombier cp /sys/log/mkfile /n/$fileserver/$savedir/sys.log.mkfile 89