| 6 | |
| 7 | == setup NIC and servers == |
| 8 | * eth1を192.168.100.254に固定し、dhcpdとtftpdを立てる |
| 9 | |
| 10 | === NIC === |
| 11 | * mitty@ubuntu:~$ sudo vim /etc/network/interfaces |
| 12 | {{{#!diff |
| 13 | @@ -8,3 +8,8 @@ |
| 14 | # The primary network interface |
| 15 | auto eth0 |
| 16 | iface eth0 inet dhcp |
| 17 | + |
| 18 | +auto eth1 |
| 19 | +iface eth1 inet static |
| 20 | + address 192.168.100.254 |
| 21 | + netmask 255.255.255.0 |
| 22 | }}} |
| 23 | |
| 24 | === DHCPd === |
| 25 | * mitty@ubuntu:~$ sudo aptitude install -R dhcp3-server |
| 26 | {{{ |
| 27 | dhcp3-server |
| 28 | }}} |
| 29 | * mitty@ubuntu:~$ sudo vim /etc/default/dhcp3-server |
| 30 | {{{#!diff |
| 31 | @@ -8,4 +8,4 @@ |
| 32 | |
| 33 | # On what interfaces should the DHCP server (dhcpd) serve DHCP requests? |
| 34 | # Separate multiple interfaces with spaces, e.g. "eth0 eth1". |
| 35 | -INTERFACES="" |
| 36 | +INTERFACES="eth1" |
| 37 | }}} |
| 38 | * mitty@ubuntu:~$ sudo vim /etc/dhcp3/dhcpd.conf |
| 39 | {{{#!diff |
| 40 | @@ -14,15 +14,15 @@ |
| 41 | ddns-update-style none; |
| 42 | |
| 43 | # option definitions common to all supported networks... |
| 44 | -option domain-name "example.org"; |
| 45 | -option domain-name-servers ns1.example.org, ns2.example.org; |
| 46 | +option domain-name "local.mitty.jp"; |
| 47 | +option domain-name-servers 192.168.100.254; |
| 48 | |
| 49 | default-lease-time 600; |
| 50 | max-lease-time 7200; |
| 51 | |
| 52 | # If this DHCP server is the official DHCP server for the local |
| 53 | # network, the authoritative directive should be uncommented. |
| 54 | -#authoritative; |
| 55 | +authoritative; |
| 56 | |
| 57 | # Use this to send dhcp log messages to a different log file (you also |
| 58 | # have to hack syslog.conf to complete the redirection). |
| 59 | @@ -108,4 +108,12 @@ |
| 60 | # deny members of "foo"; |
| 61 | # range 10.0.29.10 10.0.29.230; |
| 62 | # } |
| 63 | -#} |
| 64 | +#}a |
| 65 | + |
| 66 | +subnet 192.168.100.0 netmask 255.255.255.0 { |
| 67 | + range 192.168.100.100 192.168.100.199; |
| 68 | + option routers 192.168.100.254; |
| 69 | + option ntp-servers 192.168.100.254; |
| 70 | + option broadcast-address 192.168.100.255; |
| 71 | + filename "/pxeboot/pxelinux.0"; |
| 72 | +} |
| 73 | }}} |
| 74 | |
| 75 | === tftpd === |
| 76 | * see [../PXE#PrebooteXecutionEnvironment] |
| 77 | * tftpdは使用せず、代わりにatftpdを使用する |
| 78 | |
| 79 | * mitty@ubuntu:~$ sudo aptitude install -R atftpd |
| 80 | {{{ |
| 81 | The following NEW packages will be installed: |
| 82 | atftpd |
| 83 | The following packages are RECOMMENDED but will NOT be installed: |
| 84 | inetutils-inetd openbsd-inetd rlinetd xinetd |
| 85 | 0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded. |
| 86 | }}} |
| 87 | * mitty@ubuntu:~$ sudo vim /etc/default/atftpd |
| 88 | {{{#!diff |
| 89 | @@ -1,2 +1,2 @@ |
| 90 | -USE_INETD=true |
| 91 | -OPTIONS="--tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.239.239.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 /srv/tftp" |
| 92 | +USE_INETD=false |
| 93 | +OPTIONS="--tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.239.239.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 /srv/tftp --bind-address 192.168.100.254" |
| 94 | }}} |
| 95 | |
| 96 | == set data == |
| 97 | * tftp越しに転送されるpxelinuxと、その他カーネル等を配置する |
| 98 | * Ubuntu 10.04のsyslinuxパッケージは2:3.63+dfsg-2ubuntu3で、Debian Squeezeの起動に対応していない |
| 99 | * see also http://syslinux.zytor.com/wiki/index.php/Download |
| 100 | |
| 101 | * mitty@ubuntu:~$ sudo mkdir /srv/tftp/pxeboot |
| 102 | |
| 103 | === Ubuntu 10.04 Lucid === |
| 104 | * mitty@ubuntu:~$ sudo wget -m -np -nv -nH --cut-dir=8 -erobots=off http://jp.archive.ubuntu.com/ubuntu/dists/lucid/main/installer-i386/current/images/netboot/ubuntu-installer/ -P /srv/tftp/pxeboot |
| 105 | * mitty@ubuntu:~$ sudo wget -m -np -nv -nH --cut-dir=8 -erobots=off http://jp.archive.ubuntu.com/ubuntu/dists/lucid/main/installer-amd64/current/images/netboot/ubuntu-installer/ -P /srv/tftp/pxeboot |
| 106 | |
| 107 | === Debian 6.0 Squeeze === |
| 108 | * mitty@ubuntu:~$ sudo wget -m -np -nv -nH --cut-dir=8 -erobots=off http://ftp.jp.debian.org/debian/dists/squeeze/main/installer-i386/current/images/netboot/debian-installer/ -P /srv/tftp/pxeboot |
| 109 | * mitty@ubuntu:~$ sudo wget -m -np -nv -nH --cut-dir=8 -erobots=off http://ftp.jp.debian.org/debian/dists/squeeze/main/installer-amd64/current/images/netboot/debian-installer/ -P /srv/tftp/pxeboot |
| 110 | |
| 111 | * mitty@ubuntu:~$ sudo rm !`find /srv/tftp/pxeboot -name *html*` |
| 112 | |
| 113 | === pxelinux.0 === |
| 114 | * mitty@ubuntu:~$ sudo ln -s debian-installer/amd64/pxelinux.0 /srv/tftp/pxeboot/pxelinux.0 |
| 115 | * Debian Squeezeのpxelinuxを用いる |
| 116 | |
| 117 | === memtest === |
| 118 | * mitty@ubuntu:~$ sudo mkdir /srv/tftp/pxeboot/memtest |
| 119 | |
| 120 | * mitty@ubuntu:~$ wget http://www.memtest86.com/memtest86-3.5a.tar.gz |
| 121 | * mitty@ubuntu:~$ tar xzf memtest86-3.5a.tar.gz |
| 122 | * mitty@ubuntu:~$ sudo cp --preserve=timestamp memtest86-3.5a/precomp.bin /srv/tftp/pxeboot/memtest/memtest86 |
| 123 | |
| 124 | * mitty@ubuntu:~$ sudo wget http://www.memtest.org/download/4.20/memtest86+-4.20.bin.gz -O /srv/tftp/pxeboot/memtest/memtest86.plus.gz |
| 125 | * mitty@ubuntu:~$ sudo gunzip /srv/tftp/pxeboot/memtest/memtest86.plus.gz |
| 126 | |
| 127 | * mitty@ubuntu:~$ sudo mkdir /srv/tftp/pxeboot/pxelinux.cfg |
| 128 | * mitty@ubuntu:~$ sudo wget http://lab.mitty.jp/svn/lab/trunk/TipAndDoc/pxelinux.cfg/default -P /srv/tftp/pxeboot/pxelinux.cfg |
| 129 | * mitty@ubuntu:~$ sudo wget http://lab.mitty.jp/svn/lab/trunk/TipAndDoc/pxelinux.cfg/memtest.cfg -P /srv/tftp/pxeboot/pxelinux.cfg |
| 130 | |
| 131 | == file list == |
| 132 | * mitty@ubuntu:~$ tree /srv/tftp/pxeboot/ -a --charset=ASCII -L 3 |
| 133 | {{{ |
| 134 | /srv/tftp/pxeboot/ |
| 135 | |-- debian-installer |
| 136 | | |-- amd64 |
| 137 | | | |-- boot-screens |
| 138 | | | |-- initrd.gz |
| 139 | | | |-- linux |
| 140 | | | |-- pxelinux.0 |
| 141 | | | `-- pxelinux.cfg |
| 142 | | `-- i386 |
| 143 | | |-- boot-screens |
| 144 | | |-- initrd.gz |
| 145 | | |-- linux |
| 146 | | |-- pxelinux.0 |
| 147 | | `-- pxelinux.cfg |
| 148 | |-- memtest |
| 149 | | |-- memtest86 |
| 150 | | `-- memtest86.plus |
| 151 | |-- pxelinux.0 -> debian-installer/amd64/pxelinux.0 |
| 152 | |-- pxelinux.cfg |
| 153 | | |-- default |
| 154 | | `-- memtest.cfg |
| 155 | `-- ubuntu-installer |
| 156 | |-- amd64 |
| 157 | | |-- boot-screens |
| 158 | | |-- initrd.gz |
| 159 | | |-- linux |
| 160 | | |-- pxelinux.0 |
| 161 | | `-- pxelinux.cfg |
| 162 | `-- i386 |
| 163 | |-- boot-screens |
| 164 | |-- initrd.gz |
| 165 | |-- linux |
| 166 | |-- pxelinux.0 |
| 167 | `-- pxelinux.cfg |
| 168 | |
| 169 | 16 directories, 17 files |
| 170 | }}} |