1. 安裝CentOS 7.x 在任意一台電腦
2. 停用SELinux(做完的無碟系統仍然會是開啟SELinux的)
• Edit /etc/sysconfig/selinux
• Set SELINUX=disabled
• reboot to apply the new SELinux configuration
3. 設定臨時環境變數
# export NFSROOT=/home/nfsroot
# mkdir ${NFSROOT}
4. 透過yum安裝OS到nfsroot下
# yum -y groupinstall "Server with GUI" --installroot=${NFSROOT} --releasever=/
5. 將其它所需的套件補完
# yum -y install kernel nfs-utils ipmitool dialog --installroot=${NFSROOT} --releasever=/
6. 配置nfsroot OS
# cp /etc/resolv.conf ${NFSROOT}/etc/resolv.conf
# vim ${NFSROOT}/etc/fstab
none /tmp tmpfs defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
關閉selinux
# vim ${NFSROOT}/etc/selinux/config
SELINUX=disabled
設定hostname
# vim ${NFSROOT}/etc/hosts
127.0.0.1 localhost
192.168.0.100 nfsserver
7. 設定nfsroot os root password(沒有關閉SELinux會不成功)
# chroot ${NFSROOT}
# passwd root
# exit
8. 建立含有nfs的initramfs
# vim $NFSROOT/etc/dracut.conf
add_dracutmodules+="nfs"
# chroot $NFSROOT
# dracut --no-hostonly --nolvmconf -m "nfs network base" --xz /boot/initramfs.pxe-$(uname -r) $(uname -r)
# chmod ugo+r /boot/initramfs.pxe-$(uname -r) --> user,group,other給予讀的權限
# exit
9. 將nfsroot的資料複製到nfsserver上
# rsync -av ${NFSROOT}/ root@192.168.100.1:/home/CentOS74 --> -a 歸檔模式 -v 詳細內容
10. 在PXE上建立資料匣
# mkdir -p /var/lib/tftpboot/pxelinux/nfsroot
q
11. 在PXE上建立NFS server
# yum -y install nfs-utils
# vim /etc/exports
/home/CentOS74 192.168.100.*(rw,sync,no_root_squash)
# systemctl start nfs.service
12. 複製nfsroot的vmlinux initramfs到PXE
# scp ${NFSROOT}/boot/vmlinuz-3.10.0-693.el7.x86_64 ${NFSROOT}/boot/initramfs.pxe-3.10.0-693.el7.x86_64 root@192.168.100.1:/var/lib/tftpboot/pxelinux/nfsroot/
12. 設定PXE file
# vim /var/lib/tftpboot/pxelinux/pxelinux.cfg/defaults
default menu.c32
prompt 0
label centos7
kernel vmlinuz-3.10.0-514.21.2.el7.x86_64
append root=/dev/nfs initrd=initramfs.pxe-3.10.0-514.21.2.el7.x86_64 nfsroot=192.168.130.11:/path/to/exportdir rw panic=60 ipv6.disable=1
2. 停用SELinux(做完的無碟系統仍然會是開啟SELinux的)
• Edit /etc/sysconfig/selinux
• Set SELINUX=disabled
• reboot to apply the new SELinux configuration
3. 設定臨時環境變數
# export NFSROOT=/home/nfsroot
# mkdir ${NFSROOT}
4. 透過yum安裝OS到nfsroot下
# yum -y groupinstall "Server with GUI" --installroot=${NFSROOT} --releasever=/
5. 將其它所需的套件補完
# yum -y install kernel nfs-utils ipmitool dialog --installroot=${NFSROOT} --releasever=/
6. 配置nfsroot OS
# cp /etc/resolv.conf ${NFSROOT}/etc/resolv.conf
# vim ${NFSROOT}/etc/fstab
none /tmp tmpfs defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
關閉selinux
# vim ${NFSROOT}/etc/selinux/config
SELINUX=disabled
設定hostname
# vim ${NFSROOT}/etc/hosts
127.0.0.1 localhost
192.168.0.100 nfsserver
7. 設定nfsroot os root password(沒有關閉SELinux會不成功)
# chroot ${NFSROOT}
# passwd root
# exit
8. 建立含有nfs的initramfs
# vim $NFSROOT/etc/dracut.conf
add_dracutmodules+="nfs"
# chroot $NFSROOT
# dracut --no-hostonly --nolvmconf -m "nfs network base" --xz /boot/initramfs.pxe-$(uname -r) $(uname -r)
# chmod ugo+r /boot/initramfs.pxe-$(uname -r) --> user,group,other給予讀的權限
# exit
9. 將nfsroot的資料複製到nfsserver上
# rsync -av ${NFSROOT}/ root@192.168.100.1:/home/CentOS74 --> -a 歸檔模式 -v 詳細內容
10. 在PXE上建立資料匣
# mkdir -p /var/lib/tftpboot/pxelinux/nfsroot
q
11. 在PXE上建立NFS server
# yum -y install nfs-utils
# vim /etc/exports
/home/CentOS74 192.168.100.*(rw,sync,no_root_squash)
# systemctl start nfs.service
12. 複製nfsroot的vmlinux initramfs到PXE
# scp ${NFSROOT}/boot/vmlinuz-3.10.0-693.el7.x86_64 ${NFSROOT}/boot/initramfs.pxe-3.10.0-693.el7.x86_64 root@192.168.100.1:/var/lib/tftpboot/pxelinux/nfsroot/
12. 設定PXE file
# vim /var/lib/tftpboot/pxelinux/pxelinux.cfg/defaults
default menu.c32
prompt 0
label centos7
kernel vmlinuz-3.10.0-514.21.2.el7.x86_64
append root=/dev/nfs initrd=initramfs.pxe-3.10.0-514.21.2.el7.x86_64 nfsroot=192.168.130.11:/path/to/exportdir rw panic=60 ipv6.disable=1
沒有留言:
張貼留言