vine4.1をネットワークインストール
PCやフリーソフト関係のTipsと私的備忘録
カテゴリ [linux]
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)、ThinkPad X31へVine Linux 4.0 〜PXEサーバの設定〜、Debian GNU/Linux インストールガイド、jman/man など...
最終更新時間:2007年03月08日 03時00分36秒 (作成: 07年3月7日)