Kickstart 半自動化安裝CentOS系統及pxe安裝雙系統centos6、centos7
阿新 • • 發佈:2020-09-12
實驗一:使用 kickstart 半自動化安裝CentOS系統
1製作應答檔案
vim ks7.cfg install xconfig --startxonboot keyboard --vckeymap=us --xlayouts='us' rootpw --iscrypted $1$bpNEv8S5$lK.CjNkf.YCpFPHskSNiN0 url --url="http://10.0.0.8/centos/7/os/x86_64" lang en_US auth --useshadow --passalgo=sha512 text firstboot --enable selinux --disabled skipx services--disabled="chronyd" ignoredisk --only-use=sda install xconfig --startxonboot keyboard --vckeymap=us --xlayouts='us' install xconfig --startxonboot keyboard --vckeymap=us --xlayouts='us' rootpw --iscrypted $6$0V7M8ctDRIVNIUTw$uQZ2EtfbtgpaW1MRS3CCMvt9Z145BUlYHchG4wlNCXSFAnm3W81twhWJhNQjl0HAPAxYq0I7lwJThaYkTRXNk0 url--url="http://10.0.0.8/centos/7/os/x86_64" lang en_US auth --useshadow --passalgo=sha512 text firstboot --enable selinux --disabled skipx ignoredisk --only-use=sda firewall --disabled network --bootproto=dhcp --device=ens33 reboot timezone Asia/Shanghai --nontp bootloader --append="crashkernel=auto" --location=mbr --boot-drive=sda zerombr clearpart--all --initlabel part / --fstype="xfs" --ondisk=sda --size=102400 part /boot --fstype="xfs" --ondisk=sda --size=1024 part swap --fstype="swap" --ondisk=sda --size=2048 part /data --fstype="xfs" --ondisk=sda --size=51200 %packages @^minimal vim-enhanced wget curl tree %end %post useradd wang echo centos | passwd --stdin wang %end
2.製作安裝網路源
[root@centos7 ~]#yum -y install httpd;systemctl enable --now httpd [root@centos7 ~]#mkdir -pv /var/www/html/centos/7/os/x86_64 mkdir: created directory ‘/var/www/html/centos’ mkdir: created directory ‘/var/www/html/centos/7’ mkdir: created directory ‘/var/www/html/centos/7/os’ mkdir: created directory ‘/var/www/html/centos/7/os/x86_64’ [root@centos7 ~]#mount /dev/sr0 /var/www/html/centos/7/os/x86_64 mount: /dev/sr0 is write-protected, mounting read-only [root@centos7 ~]#ll /var/www/html/centos/7/os/x86_64 total 1666 -rw-rw-r-- 1 root root 14 Apr 22 01:15 CentOS_BuildTag drwxr-xr-x 3 root root 2048 Apr 21 02:00 EFI -rw-rw-r-- 3 root root 227 Aug 30 2017 EULA -rw-rw-r-- 3 root root 18009 Dec 10 2015 GPL drwxr-xr-x 3 root root 2048 Apr 21 02:00 images drwxr-xr-x 2 root root 2048 Apr 21 02:00 isolinux drwxr-xr-x 2 root root 2048 Apr 21 02:00 LiveOS drwxr-xr-x 2 root root 1667072 Apr 21 01:42 Packages drwxr-xr-x 2 root root 4096 Apr 22 07:37 repodata -rw-rw-r-- 3 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r-- 3 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r-- 1 root root 2883 Apr 22 08:55 TRANS.TBL [root@centos7 ~]#mkdir /var/www/html/ksdir [root@centos7 ~]#cp ks7.cfg /var/www/html/ksdir
3.安裝一個新系統
4.安裝完成驗證分割槽和賬戶
實驗二:實現pxe安裝雙系統centos6、centos7
1.安裝相關軟體包並啟動
[root@centos8 ~]#dnf -y install dhcp-server tftp-server httpd syslinux-nonlinux [root@centos8 ~]#systemctl enable --now httpd tftp dhcpd
2.配置DHCP服務
[root@centos8 ~]#vim /etc/dhcp/dhcpd.conf # # DHCP Server Configuration file. # see /usr/share/doc/dhcp-server/dhcpd.conf.example # see dhcpd.conf(5) man page # option domain-name "magedu.com"; option domain-name-servers 180.76.76.76,223.6.6.6; default-lease-time 600; max-lease-time 7200; log-facility local7; subnet 10.0.0.0 netmask 255.255.255.0 { range 10.0.0.100 10.0.0.200; option routers 10.0.0.2; next-server 10.0.0.8; filename "pxelinux.0"; } [root@centos8 ~]#systemctl start dhcpd
3.準備yum 源和相關目錄
[root@centos8 ~]#mkdir -pv /var/www/html/centos/{6,7}/os/x86_64/ mkdir: created directory '/var/www/html/centos' mkdir: created directory '/var/www/html/centos/6' mkdir: created directory '/var/www/html/centos/6/os' mkdir: created directory '/var/www/html/centos/6/os/x86_64/' mkdir: created directory '/var/www/html/centos/7' mkdir: created directory '/var/www/html/centos/7/os' mkdir: created directory '/var/www/html/centos/7/os/x86_64/' [root@centos8 ~]#mount /dev/sr0 /var/www/html/centos/7/os/x86_64/ mount: /var/www/html/centos/7/os/x86_64: WARNING: device write-protected, mounted read-only. [root@centos8 ~]#ll /var/www/html/centos/7/os/x86_64/ total 1666 -rw-rw-r-- 1 root root 14 Apr 22 01:15 CentOS_BuildTag drwxr-xr-x 3 root root 2048 Apr 21 02:00 EFI -rw-rw-r-- 3 root root 227 Aug 30 2017 EULA -rw-rw-r-- 3 root root 18009 Dec 10 2015 GPL drwxr-xr-x 3 root root 2048 Apr 21 02:00 images drwxr-xr-x 2 root root 2048 Apr 21 02:00 isolinux drwxr-xr-x 2 root root 2048 Apr 21 02:00 LiveOS drwxr-xr-x 2 root root 1667072 Apr 21 01:42 Packages drwxr-xr-x 2 root root 4096 Apr 22 07:37 repodata -rw-rw-r-- 3 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7 -rw-rw-r-- 3 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7 -r--r--r-- 1 root root 2883 Apr 22 08:55 TRANS.TBL [root@centos8 ~]#mount /dev/sr1 /var/www/html/centos/6/os/x86_64/ mount: /var/www/html/centos/6/os/x86_64: WARNING: device write-protected, mounted read-only. [root@centos8 ~]#ll /var/www/html/centos/6/os/x86_64/ total 566 -r--r--r-- 2 root root 14 Jun 29 2018 CentOS_BuildTag dr-xr-xr-x 3 root root 2048 Jun 30 2018 EFI -r--r--r-- 2 root root 212 Nov 27 2013 EULA -r--r--r-- 2 root root 18009 Nov 27 2013 GPL dr-xr-xr-x 3 root root 2048 Jun 30 2018 images dr-xr-xr-x 2 root root 2048 Jun 30 2018 isolinux dr-xr-xr-x 2 root root 536576 Jun 30 2018 Packages -r--r--r-- 2 root root 1363 Jun 29 2018 RELEASE-NOTES-en-US.html dr-xr-xr-x 2 root root 4096 Jun 30 2018 repodata -r--r--r-- 2 root root 1706 Nov 27 2013 RPM-GPG-KEY-CentOS-6 -r--r--r-- 2 root root 1730 Nov 27 2013 RPM-GPG-KEY-CentOS-Debug-6 -r--r--r-- 2 root root 1730 Nov 27 2013 RPM-GPG-KEY-CentOS-Security-6 -r--r--r-- 2 root root 1734 Nov 27 2013 RPM-GPG-KEY-CentOS-Testing-6 -r--r--r-- 1 root root 3380 Jun 30 2018 TRANS.TBL
4.準備kickstart檔案
[root@centos8 ~]#mkdir /var/www/html/ks/ [root@centos8 ~]#vim /var/www/html/ks/centos6.cfg install text reboot url --url=http://10.0.0.8/centos/6/os/x86_64/ lang en_US.UTF-8 keyboard us network --onboot yes --device eth0 --bootproto dhcp --noipv6 rootpw --iscrypted $6$j9YhzDUnQVnxaAk8$qv7rkMcPAEbV5yvwsP666DXWYadd3jYjkA9fpxAo9qYotjGGBUclCGoP1TRvgHBpqgc5n0RypMsPTQnVDcpO01 firewall --disabled authconfig --enableshadow --passalgo=sha512 selinux --disabled timezone Asia/Shanghai bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" zerombr clearpart --all --initlabel part /boot --fstype=ext4 --size=1024 part / --fstype=ext4 --size=50000 part /data --fstype=ext4 --size=30000 part swap --size=2048 %packages @core @server-policy @workstation-policy autofs vim-enhanced %end %post useradd wang echo magedu | passwd --stdin wang &> /dev/null mkdir /etc/yum.repos.d/bak mv /etc/yum.repos.d/* /etc/yum.repos.d/bak cat > /etc/yum.repos.d/base.repo <<EOF [base] name=base baseurl=file:///misc/cd gpgcheck=0 EOF %end [root@centos8 ~]#vim /var/www/html/ks/centos7.cfg install xconfig --startxonboot keyboard --vckeymap=us --xlayouts='us' rootpw --iscrypted $6$0V7M8ctDRIVNIUTw$uQZ2EtfbtgpaW1MRS3CCMvt9Z145BUlYHchG4wlNCXSFAnm3W81twhWJhNQjl0HAPAxYq0I7lwJThaYkTRXNk0 url --url="http://10.0.0.8/centos/7/os/x86_64" lang en_US auth --useshadow --passalgo=sha512 text firstboot --enable selinux --disabled skipx ignoredisk --only-use=sda firewall --disabled network --bootproto=dhcp --device=eth0 reboot timezone Asia/Shanghai --nontp bootloader --append="crashkernel=auto" --location=mbr --boot-drive=sda zerombr clearpart --all --initlabel part / --fstype="xfs" --ondisk=sda --size=102400 part /boot --fstype="xfs" --ondisk=sda --size=1024 part swap --fstype="swap" --ondisk=sda --size=2048 part /data --fstype="xfs" --ondisk=sda --size=51200 %packages @^minimal vim-enhanced wget curl tree %end %post useradd wang echo centos | passwd --stdin wang %end
5.準備PXE啟動相關檔案
[root@centos8 ~]#mkdir /var/lib/tftpboot/centos{6,7} [root@centos8 ~]#cp /var/www/html/centos/6/os/x86_64/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/centos6 [root@centos8 ~]#cp /var/www/html/centos/7/os/x86_64/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot/centos7 [root@centos8 ~]#cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/ [root@centos8 ~]#mount /dev/sr2 /misc mount: /misc: WARNING: device write-protected, mounted read-only. [root@centos8 ~]#ll /misc total 12 dr-xr-xr-x 4 root root 2048 Jan 4 2020 AppStream dr-xr-xr-x 4 root root 2048 Jan 4 2020 BaseOS dr-xr-xr-x 3 root root 2048 Jan 4 2020 EFI dr-xr-xr-x 3 root root 2048 Jan 4 2020 images dr-xr-xr-x 2 root root 2048 Jan 4 2020 isolinux -r--r--r-- 1 root root 87 Jan 4 2020 media.repo -r--r--r-- 1 root root 664 Jan 4 2020 TRANS.TBL [root@centos8 ~]#cp /misc/isolinux/{ldlinux.c32,libcom32.c32,libutil.c32} /var/lib/tftpboot/ [root@centos8 ~]#vim /var/lib/tftpboot/pxelinux.cfg/default default menu.c32 timeout 600 menu title Install CentOS Linux label linux7 menu label Auto Install CentOS Linux ^7 kernel centos7/vmlinuz append initrd=centos7/initrd.img ks=http://10.0.0.8/ks/centos7.cfg label linux6 menu label Auto Install CentOS Linux ^6 kernel centos6/vmlinuz append initrd=centos6/initrd.img ks=http://10.0.0.8/ks/centos6.cfg label local menu default menu label Boot from ^local drive localboot 0xffff [root@centos8 ~]#tree /var/lib/tftpboot /var/lib/tftpboot ├── centos6 │ ├── initrd.img │ └── vmlinuz ├── centos7 │ ├── initrd.img │ └── vmlinuz ├── ldlinux.c32 ├── libcom32.c32 ├── libutil.c32 ├── menu.c32 ├── pxelinux.0 └── pxelinux.cfg └── default 3 directories, 10 files
6.安裝系統centos6
7.安裝系統centos7