2018年3月21日 星期三

CentOS 7 diskless boot

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

沒有留言:

張貼留言