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