カテゴリ {{category linux}} {{outline}} !!!VineLinux4.1をネットワークインストール(ネットワークブート) !!はじめに 1スピンドルなサブノートPCなどに FDも CDも使わずネットワークブートして FTPインストールするためのメモ。 [[vine4.0をネットワークインストール]]を加筆、修正したものです。 試した環境はデスクトップ PC(VineLinux4.1)がサーバで、ターゲットPCは CDも FDも未接続のサブノートPC(DELL Latitude L400、IBM ThinkPad X40)。 実際にやってみると結構はまってしまいました、注意点は *ターゲットPCには pxe対応の NICが必要 *サーバPCには tftpd, dhcpd, proftpdを立てる。 *CDは使わずにインストールCDの ISOイメージをループバックマウントする *tftpdは VineLinux4.1の場合 inetd経由なので /etc/inetd.conf を編集する *ネームサーバ(DNS)を立てないので dhcpd.confの next-serverを設定する といったところです !!proftpdの設定 標準で /home/ftp のディレクトリがあるのでここが公開されるような気がしますが /etc/passwd 中でユーザー ftpのホームディレクトリが /var/ftp になっていてこちらが使われるので、ここにインストール CDの ISOイメージファイルをループバックマウント # mount -t iso9660 -o ro,loop=/dev/loop0 Vine41-i386.iso /var/ftp インストールCDの中身が見えるか確認 # ls /var/ftp RELEASE-NOTES RELEASE-NOTES.euc RELEASE-NOTES.ja Vine/ docs/ images/ isolinux/ proftpを起動する(再起動は restart) # /etc/rc.d/init.d/proftpd start 確認 # ftp localhost Connected to localhost (127.0.0.1). 220 ProFTPD 1.2.10 Server (ProFTPD Default Installation) [127.0.0.1] Name (localhost:kyo): anonymous ← ユーザー名 anonymous を入力 331 Anonymous login ok, send your complete email address as your password. Password: ← パスワードは適当なメールアドレスを入力 230 Anonymous access granted, restrictions apply. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 227 Entering Passive Mode (127,0,0,1,160,193). 150 Opening ASCII mode data connection for file list -r--r--r-- 1 root root 7344 Feb 16 14:33 RELEASE-NOTES -r--r--r-- 1 root root 6532 Feb 16 14:33 RELEASE-NOTES.euc -r--r--r-- 1 root root 8764 Feb 16 14:33 RELEASE-NOTES.ja dr-xr-xr-x 4 root root 2048 Nov 9 06:33 Vine dr-xr-xr-x 2 root root 2048 Jan 7 17:54 docs dr-xr-xr-x 3 root root 2048 Feb 20 21:43 images dr-xr-xr-x 2 root root 2048 Feb 20 21:42 isolinux 226 Transfer complete. ftp> quit 221 Goodbye. これで他の PCから anonymousで ftp接続し、インストール CDが見れるようになります !!tftpdの設定 VinePlusから tftp-server-0.42-3vl1.i386.rpm、syslinux-3.07-0vl1.i386.rpm、inetd-0.17-0vl3.i386.rpmをダウンロードしインストールする # apt-get install tftp-server-0.42-3vl1.i386.rpm syslinux-3.07-0vl1.i386.rpm inetd-0.17-0vl3.i386.rpm ディレクトリの作成、ファイルの配置 # mkdir /tftpboot # mkdir /tftpboot/pxeboot # mkdir /tftpboot/pxeboot/pxelinux.cfg # cp /var/ftp/images/pxeboot/initrd.img /tftpboot/pxeboot/ # cp /var/ftp/images/pxeboot/vmlinuz /tftpboot/pxeboot/ # cp /usr/lib/syslinux/pxelinux.0 /tftpboot/pxeboot/ 設定ファイル /tftpboot/pxeboot/pxelinux.cfg/default の作成、内容は以下の通り default vine label vine kernel vmlinuz append load initrd=initrd.img devfs=nomount inetdの設定ファイル /etc/inetd.conf 中の #tftp dgram udp wait root /usr/sbin/tcpd in.tftpd 行の先頭の # を取り去り、" -s /tftpboot"を追加。 tftp dgram udp wait root /usr/sbin/tcpd in.tftpd -s /tftpboot 上記で /tftpboot をルートディレクトリとし、それ以下を公開する。 マニュアル(jman tftpd)では '' "ディレクトリが指定されていない場合、デフォルトは /tftpboot である。" '' とあるが、何も付けないと / (ルート)以下全てが公開されてしまうようなので注意。 man tftpd で英語のマニュアルを参照のこと。 inetd を起動する(再起動は restart) # /etc/rc.d/init.d/inet start 確認する場合は VinePlusから tftp-0.42-3vl1.i386.rpm をダウンロードしてインストール # apt-get install tftp-0.42-3vl1.i386.rpm そして tftpクライアントでファイルを取得してみる $ tftp localhost tftp> verbose Verbose mode on. tftp> binary mode set to octet tftp> get /pxeboot/pxelinux.0 getting from hogehoge:/pxeboot/pxelinux.0 to pxelinux.0 [octet] Received 12912 bytes in 0.1 seconds [1118043 bit/s] tftp> q カレントディレクトリに pxelinux.0 が存在すればOK。 !!dhcpdの設定 /etc/dhcpd.conf を作成する、内容は(アドレスは環境に合わせること) ddns-update-style interim; subnet 192.168.1.0 netmask 255.255.255.0 { option domain-name-servers 192.168.1.1; option routers 192.168.1.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; range dynamic-bootp 192.168.1.40 192.168.1.45; next-server 192.168.1.33; filename "/pxeboot/pxelinux.0"; } dhcpdを起動する(再起動は restart) # /etc/rc.d/init.d/dhcpd start 以上で、ターゲットPCをネットワークブートしてそのままftpインストールができます。 〜 以降 編集中〜 参考: [VineLinux4.0(3)|http://nancha.mine.nu/blog/archives/2006/12/vinelinux403.html]、[ThinkPad X31へVine Linux 4.0 〜PXEサーバの設定〜|http://ryusai.hp.infoseek.co.jp/TPX31-01.htm]、[Debian GNU/Linux インストールガイド|http://d-i.alioth.debian.org/manual/ja.i386/index.html]、jman/man など... {{lastmodified}} (作成: 07年3月7日)