  Diskless Linux Mini Howto
  Robert Nemkin buci@math.klte.hu 
  ٹ shorie@ibm.net 
  v0.0.3 12 Sep 1996

  ʸϥǥ̵ Linux ɤΤ褦˹뤫ˤĤ
  ޤǸ Robert Nemkin ˽°ޤǸΰ GPL ˽ޤ
  ʸѸƤ줿 Bela Kis <bkis@cartan.math.klte.hu> 
  դޤ
  ______________________________________________________________________

  Table of Contents:

  1.      ѹ

  2.      ǥʤ Linux ꤹˡ

  3.      Ϣʸ

  4.      ϡɥ

  5.      Ūʹͤ

  5.1.    PC ꤹ

  5.2.    С bootpd ֤

  5.3.    С bootpd ιԤ

  5.4.    tftp 򤹤

  5.5.    ֥С˺Ǿ Linux Ȥ

  5.6.    tftp ιԤ

  5.7.    Ǹκ

  6.      ڤӥǥɬ̡®

  7.      ȯ륨顼

  8.      ꡢӾ˸Ƥʸι
  ______________________________________________________________________

  1.  ѹ

  o  v0.0.3 12 Sep 1996: ʸ򤤤Ĥ

  2.  ǥʤ Linux ꤹˡ

  ʸϥǥ̵ Linux ɤΤ褦˹Τ
   Linux եåԡϡɥǥʤ褦ʵ餻ʤ
  ФʤʤȤ뤫⤷ޤ󡣥ͥåȥȡbootp  tftp 
  NFS Сä Unix  EPROM 饤СLinux 
  ϡɥǥեåԡǥ̵ǵư뤳ȤǤޤ

  3.  Ϣʸ

  o  NFS-root Mini Howto

  o  Linux NET-2/3-HOWTO Terry Dawson, 94004531@postoffice.csu.edu.au

  o  ͥȥѥˤĤƤ /usr/src/linux/README 
     ȤƲ

  4.  ϡɥ

  ʸ˽񤤤ƤƤϰʲιεǳǧƤޤ

  o  ֡ȥСȤSun-OS 4.1.3

  o  Slackware 2.3 + Linux 1.2.8 + WD 8013 Ethernet 

  o  ưƤ Ethernet LAN

  5.  Ūʹͤ

  äȤʤͤϰʲ̤ǤPC ϡIP ɥ쥹֡ȥС
   bootp ץȥˤäꤷޤλIP ɥ쥹νͤ
  0.0.0.0 Ǥꡢͥ tftp ץȥѤꤷޤ (-- 
  ȤĶ(롼̤ơ˵ưȤΤϰǤ
  ǤϤޤ󡣤ǡСȥǥ̵Ʊͥåȥ
  Ȥꤹ뤫Сΰ֤ꤹ뤿ˤʤΥ롼Υ
  ѡ UDP ɥ쥹ꤷƲܤϥ롼ʾ򻲾
  Ƥ--)

  ʾԤˤϡʲμ³򻲾ȤƲ

  5.1.  PC ꤹ

  ޤnfs֡ȥѥåꤷƲʼ Linux ߥ顼Ȥ
  the /pub/Linux/system/Linux-boot ǥ쥯ȥ꡼ͭޤˡΥѥ
  ˤ WD8013 Ѥεư EPROM ᡼ͭꡢΤޤ ROM 饤
  ǾƤȤǤޤ

  PC νˤ¾ˡ⤢ޤ

  o  оݵ˥ǥ쥹Ȥ櫓ǤʤС DOS ץ
     फ鵯ư뤳ȤǤޤ

  o  ޤΥѥåΥХʥꥤ᡼᤿եåԡȤ
     ޤ

     Ԥξ硢եåԡ dd ޥɤǥ᡼񤭹ߤޤ

  Υ᡼ bootp  tftp 饤ȤäƤޤ¾ˡ Linux
  ΥͥѰդʤФʤޤ󡣤Υͥ nfs-root ץ
  դǹۤƤʤФʤޤ

  o  ⤷ǿΰꤷͥǤ Linux-1.2.13 ѤƤʤ
     С nfsboot ѥåΥͥѥåե뤬ɬפǤ (--
     patch(1) 򻲾ȤƤ--)

  o  ⤷ǿǤϤäƤꤷƤʤ Linux-1.3.x ꡼Ѥ
     ʤ nfs-root ץǥͥʤФʤޤ
     

     եåԡϡɥǥȤä֥åǥХ򥫡ͥ˼
     ɬפͭޤ󡣤TCP/IP бǽWD Ethernet 
      NFS ե륷ƥؤбǽɬܤǤεǽ
     顢ͥ򥳥ѥ뤷Ʋ

  5.2.  С bootpd ֤

  bootpd ϡbootpd-2.4.tar.gz äƤޤʾϡLinux ߥ顼
  Ȥ /pub/Linux/system/Network/boot.net ǥ쥯ȥǤˡѥå
  ꤷ饳ѥ뤷Ȥ߹ǲ⤷С¦ Unix 
  Slackware ʤСbootpd ϤϤᤫȤ߹ޤƤޤΤǤμ
  ̵뤷Ƥǡϡޥɥ饤󤫤鵯ư뤳ȤǤ
  

        ________________________________________________________________
                bootpd -s
        ________________________________________________________________

  뤤ϡinetd ⵯưǤޤ

  o  ξ硢/etc/inetd.conf ΰʲιԤ顢Ƭΰäޤ

        ________________________________________________________________
        # tftp   dgram   udp     wait    root    /usr/sbin/in.tftpd     tftpd /export
        # bootps dgram   udp     wait    root    /usr/sbin/in.bootpd    bootpd
        ________________________________________________________________

  o  ޤ/etc/services ΰʲ2ԤΥȤϤƲ⤷
     ιԤʤȤˤϡԤɲäƲϹ
     ƬΤΤϤǤԤΤΤϤϤʤǲ

        ________________________________________________________________
        bootps          67/tcp          # BOOTP server
        tftp            69/udp          # TFTP server
        ________________________________________________________________

  o  inetd ƵưˤϡΤ褦ˤޤ

        ________________________________________________________________
                kill -HUP <process id of inetd>.
        ________________________________________________________________

  5.3.  С bootpd ιԤ

  Ȥˤ⤫ˤ⡢bootptab Ȥ̾Υե bootpd ΤѰդ
  뤳ȤϤޤΥե̤/etc֤ޤԤ
  ˤΥեԽƥȥDNS С IP ɥ쥹
  ӥǥ쥹 Ethernet ɥ쥹򵭽ҤʤФʤޤ
  ȡ

        ________________________________________________________________

        global.prof:\
                :sm=255.255.255.0:\
                :ds=192.168.1.5:\
                :gw=192.168.1.19:\
                :ht=ethernet:\
                :bf=linux:
        machine1:hd=/export/root/machine1:tc=global.prof:ha=0000c0863d7a:ip=192.168.1.140:
        machine2:hd=/export/root/machine2:tc=global.prof:ha=0800110244e1:ip=192.168.1.141:
        machine3:hd=/export/root/machine3:tc=global.prof:ha=0800110244de:ip=192.168.1.142:
        ________________________________________________________________

   globa.prof ϡۥȵѤοǤθ³ġ
  ˶̤λ򵭽Ҥޤˡޤ

  o  smϥ֥ͥåȥޥ

  o  dsϥɥᥤ󡦥͡ࡦСΥɥ쥹

  o  gwϴΥȥɥ쥹

  o  htLANǥΥϡɥ

  o  bfϡ֡ȥե̾

     줾쵭Ҥޤθ塢٤Ƥεǥ쥹
     

  o  hdϥ֡ȥեΥǥ쥯ȥ

  o  tcϥХ롦ƥץ졼Ȥɤ߹ߤ

  o  haEther Net ɤΥϡɥɥ쥹

  o  ipϳƤIPɥ쥹

  줾쵭Ҥޤ

  5.4.  tftp 򤹤

  TFTP (Trivial File Transfer Protocol) FTP Ʊͤʥեžץ
  ǤΥץȥ EPROM ˾Ƥ뤯餤ñ㲽
  Ƥޤ TFTP ˤ2ĤӤͭޤ

  o  simple TFTP ϡ饤Ȥե륷ƥह٤Ƥɤ߽񤭤Ǥ
     褦ӤǤϴñ˼¸Ǥޤ礭ʥƥ
     ۡˤʤޤʲïǤ⤳Υץȥǥѥɥե
     ޤˡ

  o  secure TFTP ǤϡTFTP С chroot.2 ƥॳѤ
     ơʬȤΥ롼ȥǥ쥯ȥѹޤꤵ롼
     ȥǥ쥯ȥγɤ߽񤭤뤳ȤϰڶػߤƤޤchroot
     ˤäơޤǤȤϰ㤦ǥ쥯ȥ꤬롼Ȥˤʤ뤿ᡢǤ
     hdϡδĶбƤɬפޤ㤨С
     simple TFTP ѤƤ硢hd ϥ֡ȥǥ쥯ȥؤΥեѥ
     /export/root/machine1 äƤޤ/export 򿷤롼ȤȤ
     secure TFTP Ѥϡ/export  / ˤʤ뤿ᡢhd 
     /root/machine1 ˤʤޤ

     UnixǤФۤȤɤ٤TFTPСäƤޤ¿ʬʬ
     ƳɬפϤʤǤ礦
  5.5.  ֥С˺Ǿ Linux Ȥ

  Slackware ʤХѥå aapn  x ʤɤѤ뤳Ȥ
  礦󡢤äȥ󥹥ȡ뤷Ƥ⤫ޤޤ󡣤ǥ
  쥹 X üʤо嵭ιǤ⽽ʬǤƳԤˤϼư
  ˤ Linux ɬפǤ⡼ȥޥǥ쥹˥֡
  ǽ󶡤뵡ξ SunOS ˾ˡ٤Υǥΰ
  ݤͥåȥɤ߽񤭤Ǥ褦 export ޤ export 
  ǥ쥯ȥư֤ Linux ΡŬʾ㤨
  /mntˤ˥ޥȤޤơƳ / ǤϤʤ /mnt Ȥơ
   Linux Ρsetup 桼ƥƥѤޤˤ
  ѥåƳƲǥ쥹椷Ѥʤʤ
  ΤޤޤǷ빽Ǥ⤷2ʾ Linux ǥ쥹ȤƻѤ
  ʤ顢ΤޤޤǤϤǤեǥ쥯ȥ꡼ˤϥǥ
  쥹˸ͭξĤΤ뤿Ǥ /usrʤ
  ǥ쥯ȥϵͭäƤʤˤ̤ξ˰ưΤ
  Υǥ쥹˥֥ǥ쥯ȥѰդ뤳ȤˤäƲǤޤ
  ȤС/export/linux/machine1  /mnt ˥ޥȤƤ硢
  θ塢ǥ쥯ȥ깽¤ϰʲΤ褦ˤʤäƤޤ

        ________________________________________________________________
        /export/linux/machine1/bin
        /export/linux/machine1/sbin
        /export/linux/machine1/lib
        /export/linux/machine1/etc
        /export/linux/machine1/var
        /export/linux/machine1/usr
        ________________________________________________________________

  ѹϡʲΤ褦ˤʤޤ

        ________________________________________________________________
        /export/linux/machine1/bin
        /export/linux/machine1/sbin
        /export/linux/machine1/lib
        /export/linux/machine1/etc
        /export/linux/machine1/var
        /export/linux/usr
        ________________________________________________________________

  ǡΤΤΥǥ쥹Ѥ˥֥ǥ쥯ȥѰդޤǥ
  쥹줾 machine1,machine2machine3 ȸƤФƤ
  ꤷޤξ硢줾Υǥ쥹Ѥ˼Τ褦
  bash ץȤȤޤ

        ________________________________________________________________

                cd /export/linux
                for x in machine2 machine3 ; do
                        mkdir $x; cd $x
                        (cd ../machine1; tar cf - *) | tar xvf -
                done
        ________________________________________________________________

  Then do the following export:

  ơʲ export Ԥޤ

  o  /export/linux/usr                       readonly for everyone.

  o  /export/liunx/machine1          only to machine1 with rw,root
     rights.

  o  /export/liunx/machine2          only to machine2 with rw,root
     rights.

  o  /export/liunx/machine3          only to machine3 with rw,root
     rights.

  κȤԤˤϰʲεҤ򸫤Ƥ  (-- 񼰤 SunOS 4.1.3 
  export եΤΤǤ--) 

        ________________________________________________________________

        # This file is /etc/export
        # for remote linux X terminals by Buci
        # this line is only once
        /export/root/usr             -access=linuxnet
        # these lines once for every host
        /export/root/machine1       rw=machine1,root=machine1
        /export/root/machine2       rw=machine2,root=machine2
        /export/root/machine3       rw=machine3,root=machine3
        ________________________________________________________________

  exportfs -a 餻뤳Ȥ˺ʤǲ

  5.6.  tftp ιԤ

  ơTFTP С֤Ǥsecure TFTP Ȥɬפ̵Τ
  äϴñǡ饤Ȥ /export ǥ쥯ȥ꡼鵯ư
  

  secure TFTPѤˤϡ/tftpboot β /export/linux ǥ쥯
  ȥ꡼ʥͥϰĻ¾Υޥ褦ˤϤΥͥؤΥ
  󥯤ĥˤ/exportsecure TFTP εưǥ쥯ȥ꡼Ȥޤ
  뤤ϡ̡ tftpboot ǥ쥯ȥѤʾϥͥĤ
  ¾ΥޥѤˡΥͥؤΡ˥󥯤Ϥޤ
  ԤˤϰʲΤ褦˵Ҥޤ

        ________________________________________________________________
              mkdir -p /tftpboot/export/linux/machine1
              cd /tftpboot/export/linux/machine1
              cp /export/linux/machine1/<name of the kernel> .
        ________________________________________________________________

  Then type the following:

  ưʲΤ褦ϤƤ

        ________________________________________________________________
              mkdir -p /tftpboot/export/linux/machine2
              cd ../machine2
              ln -s ../machine2/<name of the kernel>
        ________________________________________________________________

  5.7.  Ǹκ

  Ǹˡ

        ________________________________________________________________
           /sbin/mount nfs_server:/export/linux/usr /usr
        ________________________________________________________________

  

        ________________________________________________________________
           /export/linux/<machinex>/etc/rc.d/rc.S
        ________________________________________________________________

  Ƭɲäޤ

   <machinex>  machine1machine2򤢤路ޤ

  6.  ڤӥǥɬ̡®

  Slackware 2.3 ǻǤ¾ۤСǤϡʲο
  ѲǤ礦

  o  Diskspace: 28MB + 6.5MB/machine

  o  RAM: X  8 MB ǻȤäƤꡢåפ 4MB ɬפʤΤ褦
     åפϡ/temp ˵˺뤳ȤǤޤmkswap 
     餻뤳Ȥ˺ʤǤƲ

  o  Speed: 486 DX2/66  8 MBιǡ⤢ޤ

  7.  ȯ륨顼

  o  Ѥʥ顼򸫤ĤƤޤ/dev ֥ǥ쥯ȥǡ SunOS ǥ
     ȥƤޤޤΤᡢǥդ Linux ˥
     Ȥ MAKEDEV ¹ԤʤФʤޤǤ(ϡLinux
     nfs  SunOS nfs ΰ㤤ǤξԤȤ⡢ǥХֹ 32
     ӥåȤѤƤޤLinux ϥ᥸㡼ޥʡֹ 16 ӥ
     ȤŤĳơSunOS ϡ14 ӥåȤ᥸㡼18 ӥåȤޤʡ
     ֹ˳դƤΤǤ)

  o  ǥ쥹 Linux ưȤˤϡtftp ФΤηϩ
     ơ֥ΤʤˤϰĤϩäƤϤޤ󡣤
     ơơ֥ꤷʤФʤޤĤˡ
     

  o  ٤ƤεѤ rc.S Ȥꤹ

  o  bootp 饤ȥѥåѤꥹץȤ

  8.  ꡢӾ˸Ƥʸι

  o  ϢʸΰѤ롣

  o  SunOS  BSD ȤˤƤΤǡSVR Ȥˤ(㤨С
     Solaris)ѤѰդ롣

  o  Linux ϡbootp/tftp ФȤƤ SunOS ˻Ƥ뤬Linux 
     ȤˤФȻפ롣

  o  ʸ򸽹Ԥ etherboot ѥåˤ碌롣

  o  ͥ 1.2.13  ͥ 1.3.x Ѥΰ㤤餫ˤ롣Ԥ
     nfs root ѥåäƤ롣

  o  wd8013 ʳ ethercards ǻƤߤ롣

  o  linux Ѥϩơ֥ꤹ뤿ˡbootp 饤Ȥ
      bootpc ɲä롣

  o  æ䤽¾δְ㤤ϡ buci@math.klte.hu Τ餻Ʋ

  o  ܸǤθæְ㤤shorie@ibm.netΤ餻Ƥ
     Ƥ˴ؤϸԤˤꤤޤ(Ԥ)

