PXE Boot : ディスクレスクライアント2022/07/13 |
ハードディスクを搭載していないクライアントコンピューターから、PXE サーバーに配置した OS イメージを読み込んでシステムを起動します。
|
|
[1] | |
[2] | PXE サーバーへ追加でパッケージをインストールします。 |
[root@dlp ~]# dnf -y install dracut-network nfs-utils
|
[3] | PXE サーバー上にクライアント配信用システムを用意します。インストールパッケージは必要に応じて変更ください。 |
[root@dlp ~]#
mkdir -p /var/lib/tftpboot/centos-st9/root [root@dlp ~]# dnf group -y install "Server with GUI" --installroot=/var/lib/tftpboot/centos-st9/root/ # root パスワード生成 (後で入力するのでメモしておく) [root@dlp ~]# /usr/libexec/platform-python -c 'import crypt,getpass; \
Password:print(crypt.crypt(getpass.getpass(), \ crypt.mksalt(crypt.METHOD_SHA512)))' $6$PF3scDJw51cmx.....
[root@dlp ~]#
vi /var/lib/tftpboot/centos-st9/root/etc/shadow # クライアント配信用システムの root パスワードを設定 root: $6$PF3scDJw51cmx..... :16372:0:99999:7:::
LANG="en_US.UTF-8"
localhost.localdomain
|
[4] | クライアント配信用のファイルをネットワークで共有できるよう NFS サーバーを起動します。 |
[root@dlp ~]#
vi /etc/exports
/var/lib/tftpboot/centos-st9/root 10.0.0.0/24(rw,no_root_squash)
[root@dlp ~]#
systemctl enable --now nfs-server
# Firewalld 稼働中の場合はサービス許可 [root@dlp ~]# firewall-cmd --add-service=nfs [root@dlp ~]# firewall-cmd --runtime-to-permanent |
[5] | BIOS ベースでネットワークブートするクライアントシステムへは以下のように設定します。 |
[root@dlp ~]#
wget -P /var/lib/tftpboot/centos-st9/ \
http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/images/pxeboot/vmlinuz \ http://mirror.stream.centos.org/9-stream/BaseOS/x86_64/os/images/pxeboot/initrd.img
[root@dlp ~]#
vi /var/lib/tftpboot/pxelinux.cfg/default # 新規作成 default centos-st9 label centos-st9 kernel centos-st9/vmlinuz append initrd=centos-st9/initrd.img root=nfs:10.0.0.30:/var/lib/tftpboot/centos-st9/root rw selinux=0 |
[6] | 以上で設定完了です。 ネットワークブートが有効なクライアントコンピューターを起動すると、以下のように PXE サーバーからファイルを読み込み、システムが起動します。 |
Sponsored Link |