サーバー設定 · 1 min read · Sep 14, 2025

Ubuntu Edgy Eftを使用した複数のLinuxディストリビューション用のPXEインストールサーバーの設定

Ubuntu Edgy Eftを使用した複数のLinuxディストリビューション用のPXEインストールサーバーの設定

バージョン 1.0
著者: Falko Timme

このチュートリアルでは、Ubuntu 6.10(Edgy Eft)を使用してPXE(p reboot x ecution e nvironmentの略)インストールサーバーを設定する方法を示します。PXEインストールサーバーを使用すると、クライアントコンピュータがネットワーク経由でLinuxディストリビューションをブートしてインストールでき、LinuxのisoイメージをCD/DVDに焼く必要がありません。これは、クライアントコンピュータにCDまたはフロッピードライブがない場合や、複数のコンピュータを同時に設定したい場合(例:大規模な企業で)、または単にCD/DVDの費用を節約したい場合に便利です。この記事では、複数のディストリビューションをブートできるPXEサーバーの設定方法を示します:Ubuntu Edgy/Dapper、Debian Etch/Sarge、Fedora Core 6、CentOS 4.4、OpenSuSE 10.2、Mandriva 2007。

まず最初に、これはそのようなシステムを設定する唯一の方法ではないことを言いたいです。この目標を達成する方法はたくさんありますが、これは私が取る方法です。これがあなたにとって機能するという保証はありません!

1 予備ノート

適切なインターネット接続があることが重要です。なぜなら、クライアントコンピュータはインターネット上のリポジトリから必要なすべてのパッケージを取得するからです(私はこれを16MBit ADSL2+接続でテストしましたが、十分に速いようです。;-))。すべてのパッケージをPXEサーバーに保存することも可能ですが、その場合はPXEサーバーに多くのストレージスペースが必要です(複数のディストリビューションにサービスを提供することを忘れないでください)、したがってここではこの点をカバーしません。

そして最も重要なことは、クライアントコンピュータがネットワーク経由でブートをサポートしていることです。このオプションについて各コンピュータのBIOSを確認する必要があります。

PXEサーバーとして機能するシステムには、すでに基本的なUbuntu 6.10サーバーシステムを設定しておく必要があります。たとえば、このチュートリアルのページ1 - 3に示されているように:https://www.howtoforge.com/perfect_setup_ubuntu_6.10

私はここですべてのステップをrootユーザーとして実行することを好みます。したがって、まだrootログインを作成していない場合は、今すぐ作成してください:

sudo passwd root

その後、rootとしてログインします:

su

もしrootではなく通常のユーザーとして作業したい場合は、このチュートリアルに示されているすべてのコマンドの前にsudoを付けることを忘れないでください。したがって、私が実行する場合

apt-get update

あなたは代わりに

sudo apt-get update

を実行する必要があります。

2 すべての必要なパッケージをインストール

まず、次のコマンドを実行してパッケージデータベースを更新します。

apt-get update

netkit-inetd、tftpd-hpa、dhcp3-server、およびlftpパッケージをインストールする必要があるため、次のコマンドを実行します。

apt-get install netkit-inetd tftpd-hpa dhcp3-server lftp    

その後、次のコマンドを実行します。

netstat -uap

そして、次のようなものが表示されるか確認します:

root@server1:~# netstat -uap
アクティブなインターネット接続(サーバーと確立された接続)
プロトコル 受信キュー 送信キュー ローカルアドレス 外部アドレス 状態 PID/プログラム名
udp 0 0 *:tftp

tftp行が表示されない場合は、/etc/inetd.confを開いて、次の内容が含まれていることを確認してください:

vi /etc/inetd.conf

| [...] #:BOOT: Tftpサービスは主にブート用に提供されます。ほとんどのサイトは、これを「ブートサーバー」として機能するマシンでのみ実行します。 tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot [...] |

その後、inetdを再起動します:

/etc/init.d/inetd restart

3 DHCPサーバーの設定

ローカルネットワークにDHCPサーバーが必要です。ローカルネットワークにDHCPサーバーがない場合は、将来のPXEサーバーにあるものを設定して使用してください。単に/etc/dhcp3/dhcpd.confを編集します:

cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_orig
cat /dev/null > /etc/dhcp3/dhcpd.conf

vi /etc/dhcp3/dhcpd.conf

| option domain-name-servers 145.253.2.75, 193.174.32.18; default-lease-time 86400; max-lease-time 604800; authoritative; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.10 192.168.0.49; filename "pxelinux.0"; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; } |

これにより、192.168.0.10から192.168.0.49の範囲からクライアントコンピュータにIPアドレスが動的に割り当てられます。ゲートウェイは192.168.0.1です。もちろん、この設定は自分の環境に合わせて調整する必要があります!

設定に次の行が含まれていることが重要です。

filename "pxelinux.0";

その後、DHCPサーバーを再起動します:

/etc/init.d/dhcp3-server restart 

すでにネットワークにDHCPサーバーがある場合は、その設定を変更する必要があります。次のような設定があると仮定します。

| subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.10 192.168.0.49; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; } |

その設定に

filename “pxelinux.0”;
next-server 192.168.0.100;

を追加する必要があります(192.168.0.100は私たちのUbuntu PXEサーバーのIPアドレスです)ので、次のようになります:

| subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.10 192.168.0.49; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; filename "pxelinux.0"; next-server 192.168.0.100; } |

その後、DHCPサーバーを再起動します。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。