作业二

重点 实验一:使用 kickstart 半自动化安装CentOS系统
1.制作应答文件

vim ks7.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=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.安装一个新的系统


3.安装完成验证分区和账户

重点 实验八:实现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


posted @ 2020-09-11 21:33  进击的子卿  阅读(166)  评论(0)    收藏  举报