| | 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 | }}} |