]> git.lizzy.rs Git - plan9front.git/commitdiff
remove bootes, fix inst/authsetup, use ndb for ipconfig before trying dhcp
authorcinap_lenrek <cinap_lenrek@centraldogma>
Thu, 9 Jun 2011 04:56:16 +0000 (04:56 +0000)
committercinap_lenrek <cinap_lenrek@centraldogma>
Thu, 9 Jun 2011 04:56:16 +0000 (04:56 +0000)
adm/keys.who [deleted file]
rc/bin/cpurc
rc/bin/inst/authsetup
rc/bin/inst/bootsetup
rc/bin/inst/mountcwfs
rc/bin/termrc
sys/lib/sysconfig/proto/cdproto

diff --git a/adm/keys.who b/adm/keys.who
deleted file mode 100644 (file)
index e69de29..0000000
index f6bd2eb563cb2d42a7fff0461bacf22bcca9676d..0c8c8beb108004b516c3d2908dd627e28cbbb694 100755 (executable)
@@ -19,8 +19,8 @@ sysname=`{cat /dev/sysname}
 # parallelism for mk
 NPROC = `{wc -l </dev/sysstat}
 
-if (~ $#sysname 0 || ~ $sysname '') {
-       sysname = cirno                 # default
+if (~ $#sysname 0 || ~ $sysname ''){
+       sysname=cirno                   # default
        echo -n $sysname >/dev/sysname
 }
 prompt=($sysname^'# ' '        ')
@@ -29,37 +29,41 @@ prompt=($sysname^'# ' '     ')
 if(test -e /cfg/$sysname/cpurc)
        . /cfg/$sysname/cpurc
 
-# start up internet if we don't already have an address
-if(! grep u /net/ipselftab | grep -sv 127.0.0.1)
-       ip/ipconfig
+# automatic ip address setup
+if(! grep u /net/ipselftab | grep -sv 127.0.0.1){
+       ether=`{ndb/query sys $sysname ether}
+       if(~ $#ether 1){
+               # try /lib/ndb first, then do dhcp
+               ip/ipconfig -N || ip/ipconfig
+       }
+       rm -f /env/ether
+}
 
-# if we're not a server, start a dns resolver
 if(! test -e /srv/dns)
        ndb/dns -r
 
-# If you are on an auth server, start these before listening:
-#
-auth/keyfs -wp -m /mnt/keys /adm/keys >/dev/null >[2=1]
-auth/cron >>/sys/log/cron >[2=1] &
-#
-# also rename some files:
-#
-# if(! test -e /rc/bin/service.auth/tcp567){
-#      mv /rc/bin/service.auth/authsrv.il566 /rc/bin/service.auth/il566
-#      mv /rc/bin/service.auth/authsrv.tcp567 /rc/bin/service.auth/tcp567
-#      mv /rc/bin/service/il566 /rc/bin/service/_il566
-#      mv /rc/bin/service/tcp567 /rc/bin/service/_tcp567
-# }
-
-# start listeners
-aux/listen -q -t /rc/bin/service.auth -d /rc/bin/service tcp
+if(! ps|grep -s timesync){
+       if(~ $#ntp 0)
+               eval `{ndb/ipquery sys $sysname ntp}
+       if(~ $#ntp 0)
+               ntp=pool.ntp.org
+       aux/timesync -n $ntp
+       sleep 2
+}
 
-if(! ps|grep -s timesync) {
-       aux/timesync -n pool.ntp.org
-       if (test -e '#r/rtc') @ {
-               sleep 10                        # let timesync correct the time
-               awk '{print $1}' /dev/time >'#r/rtc'    # fix hw clock
-       } &
+if(~ $#auth 0)
+       eval `{ndb/ipquery sys $sysname auth}
+switch($auth){
+case `{        echo $sysname; ndb/query sys $sysname dom
+       for(i in `{awk '/u\ *$/{print $1}' /net/ipselftab}){
+               echo $i; ndb/ipquery ip $i dom; ndb/ipquery ip $i sys
+       } | sed 's,[^ ]+=,,g'}
+       # cpu+auth server
+       auth/keyfs -wp -m /mnt/keys /adm/keys
+       aux/listen -q -t /rc/bin/service.auth -d /rc/bin/service tcp
+case *
+       # cpu server
+       aux/listen -q -d /rc/bin/service tcp
 }
 
 # cpu-specific late startup
@@ -70,5 +74,4 @@ if(test -e /cfg/$sysname/cpustart)
 # other /proc files, such as note, so let listen be killed.
 dontkill '^(ipconfig|factotum|mntgen|venti|kfs|cwfs.*|cs|dns|reboot)$'
 
-# echo `{date} $sysname >>/sys/log/boot
 exit ''
index dc23e73b3ca164d2e982235bc9aa2bf9bfa8dd3d..e4bea7dc3e29d9fd5b19e08c6bb8c612b547f313 100755 (executable)
@@ -1,36 +1,34 @@
 #!/bin/rc
 
-# desc: set system password for auth, invalidate nvram
+# desc: invalidate nvram
 # prereq: systype copydist
 
-nvram=`{echo `{basename -d $fs}^/nvram}
+nvram=(/dev/sd*/nvram)
+nvram=nvram(1)
 
 switch($1) {
-case checkdone
-       if(! ~ $syst cpu || ! grep trust $nvram){
-               authsetup=ready
-               export authsetup
-       }
 case go
        echo
-       echo 'Setup keyfs and provide a password for the machine'
+       echo 'Invalidate nvram'
        echo
 
-       auth/keyfs
-
-       if(! grep trust $nvram)
-               echo 'trust, but verify' >$nvram >[2=1]
+       echo 'trust, but verify' >$nvram
 
        echo
        echo 'You will be asked to enter an authid, authdom, secstore key,'
        echo 'and password upon next boot. The authid is the hostowner.'
        echo 'The authdom is the domain from your network configuration.'
        echo 'The secstore key and password should be a secret password'
-       echo 'of eight characters or greater in length. Remember the'
-       echo 'password, you will need to use it again when creating the'
-       echo 'bootes user on the auth server.'
+       echo 'of eight characters or greater in length. On an auth server,'
+       echo 'the password will be used to encrypt the user database'
+       echo '/adm/keys'
        echo
 
        authsetup=done
        export authsetup
+case checkdone
+       if(~ $syst cpu && test -w $nvram && ! grep -s trust $nvram){
+               authsetup=ready
+               export authsetup
+       }
 }
index cbd472df7c86c6e39af8cd18b114ea93fb3cbed2..08448f516765acf38edcb9ea521cb208d51bf0c0 100755 (executable)
@@ -25,7 +25,6 @@ case go
                {
                        echo 'bootfile='^$bootfile
                        echo 'bootargs=local!'^$fs
-                       echo 'sysname=cirno'
                        echo 'mouseport='^$mouseport
                        echo 'monitor='^$monitor
                        echo 'vgasize='^$vgasize
index 2c1416f3a361212c050f6b9ab0b5d0306f0f5898..3a917b7bc46257498000ff49934fe916a6e76898 100755 (executable)
@@ -3,6 +3,8 @@
 # desc: choose and mount file system partition
 # prereq: systype
 
+service=cwfs
+
 switch($1){
 case go
        echo
@@ -53,13 +55,13 @@ case go
 
        log Starting $fstype file server for $fs
        unmount /n/newfs >[2]/dev/null
-       echo halt >>/srv/cwfs.cmd >[2]/dev/null
-       rm -f /srv/cwfs /srv/cwfs.cmd
+       echo halt >>/srv/$service.cmd >[2]/dev/null
+       rm -f /srv/$service /srv/$service.cmd
 
        if(~ $ream yes){
                if(! test -f /tmp/fsconfig){
                        {
-                               echo service cwfs
+                               echo service $service
                                echo config $fs
 
                                if(! ~ $syst cpu){
@@ -86,7 +88,7 @@ case go
        }
        if not {
                echo 'Entering manual configuration mode. when done, type end'
-               if(! $fstype -n cwfs -f $fs -c){
+               if(! $fstype -n $service -f $fs -c){
                        mountfs=ready
                        export mountfs
                        exit oops
@@ -95,6 +97,7 @@ case go
 
        log Configuering $fstype file server for $fs
        {
+               echo noattach
                echo allow
                echo users default
                echo cfs main
@@ -102,9 +105,6 @@ case go
                echo create /adm/users adm adm 664
                echo create /dist sys sys 775 d
                echo create /usr sys sys 775 d
-               echo newuser adm +bootes
-               echo newuser sys +bootes
-               echo newuser upas +bootes
                echo newuser $user
                echo newuser adm +$user
                echo newuser sys +$user
@@ -113,30 +113,26 @@ case go
                        echo cfs other
                        echo create /dist sys sys 775 d
                        echo create /usr sys sys 775 d
-                       echo create /usr/bootes bootes bootes 775 d
-                       echo create /usr/bootes/tmp bootes bootes 750 d
                        echo create /usr/$user $user $user 775 d
                        echo create /usr/$user/tmp $user $user 750 d
                        echo cfs main
                }
-       } >>/srv/cwfs.cmd
-       sleep 5
+               echo noattach
+               sleep 2
+       } >>/srv/$service.cmd
 
        log Mounting $fstype file server for $fs
-       if(! logprog mount -c /srv/cwfs /n/newfs){
-               mountfs=ready
-               export mountfs
-               exit
-       }
+       while(! logprog mount -c /srv/$service /n/newfs)
+               sleep 2
        if(! ~ $fsother ''){
                log Mounting $fstype file server for $fsother
-               if(logprog mount -c /srv/cwfs /n/other other)
+               if(logprog mount -c /srv/$service /n/other other)
                        bind -qc /n/other/dist /n/newfs/dist
        }
 
 case checkready checkdone
        if(! ~ $fstype '' && ~ $#fs 1 && test -f $fs){
-               if(test -f /srv/cwfs && test -d /n/newfs/dist){
+               if(test -f /srv/$service && test -d /n/newfs/dist){
                        mountfs=done
                        export mountfs
                        exit
index 8444bfb78001cd2a042c8f3de8f8cfc67437c20a..e30809719bd12ff7cfec5a60ab21e031ef976d4f 100755 (executable)
@@ -36,19 +36,17 @@ NPROC = `{wc -l </dev/sysstat}
 if(test -e /cfg/$sysname/termrc)
        . /cfg/$sysname/termrc
 
-# start IP on the LAN, if not already configured.  diskless terminals
-# are already configured by now.  It's commented out to avoid a long timeout
-# on startup waiting for DHCP.
-#
-# If your site provides DHCP service,
-#
-#if(! test -e /net/ipifc/0/ctl)
-#      ip/ipconfig
-#
-# Otherwise, see /cfg/$sysname/termrc (/cfg/example/termrc is an example).
+# automatic ip address setup
+if(! grep u /net/ipselftab | grep -sv 127.0.0.1){
+       ether=`{ndb/query sys $sysname ether}
+       if(~ $#ether 1){
+               # try /lib/ndb first, then do dhcp
+               ip/ipconfig -N || ip/ipconfig
+       }
+       rm -f /env/ether
+}
 
-# start dns if we have an internet
-if(test -e /net/ipifc/0/ctl && ! test -e /srv/dns)
+if(! test -e /srv/dns)
        ndb/dns -r
 
 if(! ~ $terminal *vx32*){
@@ -100,7 +98,7 @@ if(! ~ $"vgasize '' text none){
 }
 rm -f '/env/fn#ask'
 
-if (test -f /dev/apm)
+if(test -f /dev/apm)
        aux/apm
 
 dontkill '^(ipconfig|factotum|mntgen|kfs|cwfs.*|cs|dns|listen|reboot)$'
index c655613e351fd713fb7db53d2372b0ee7615ebef..913c908b77873b5f1f92081683bd8115e5486132 100644 (file)
@@ -19,8 +19,6 @@ mail  d775 upas upas
        uid=upas
        gid=upas
        box     d775
-               bootes  d775 bootes bootes
-                       mbox    a662 bootes bootes /sys/lib/dist/empty
                glenda  d775 glenda glenda
                        mbox    a662 glenda glenda /sys/lib/dist/empty
        faxoutqueue     d775
@@ -94,6 +92,7 @@ sys   d775
                +
        log     d775
                auth    a662 sys sys /sys/lib/dist/empty
+               boot    a662 sys sys /sys/lib/dist/empty
                cpu     a662 sys sys /sys/lib/dist/empty
                cron    a662 sys sys /sys/lib/dist/empty
                cs      a662 sys sys /sys/lib/dist/empty
@@ -104,14 +103,15 @@ sys       d775
                httpd   a662 sys sys /sys/lib/dist/empty
                imap4d  a662 sys sys /sys/lib/dist/empty
                ipboot  a662 sys sys /sys/lib/dist/empty
+               ipboot  a662 sys sys /sys/lib/dist/empty
                listen  a662 sys sys /sys/lib/dist/empty
 
                mail            a662 sys sys /sys/lib/dist/empty
+               runq            a662 sys sys /sys/lib/dist/empty
                smtp            a662 sys sys /sys/lib/dist/empty
                smtp.fail       a662 sys sys /sys/lib/dist/empty
                smtpd           a662 sys sys /sys/lib/dist/empty
                smtpd.mx        a662 sys sys /sys/lib/dist/empty
-               runq            a662 sys sys /sys/lib/dist/empty
 
                secstore        a662 sys sys /sys/lib/dist/empty
                timesync        a662 sys sys /sys/lib/dist/empty
@@ -121,20 +121,10 @@ sys       d775
        src     d775
                skip=\.[ao]?[12578vqki]?$
                +
-               
+
 tmp    d555
+
 usr    d775
-       bootes  d775 bootes bootes
-               uid=bootes
-               gid=bootes
-               bin     d775
-                       386     d775
-                               +
-                       rc      d775
-                               +
-               lib     d775
-                       *
-               tmp     d775
        glenda  d775 glenda glenda
                uid=glenda
                gid=glenda