制作光盤引導啟動的含ks應答文件的iso文件,實現iso文件和遠程系統鏡像倉庫的運維自動化安裝系統
阿新 • • 發佈:2018-06-15
ssa 硬盤 JD tor requested fonts shanghai rzsz ica (1)A機器配置如下
mkdir /app/bootiso -pv cd /app/bootiso cp -r /mnt/centos6/isolinux/ ./ mkdir ks cp /root/anaconda-ks.cfg ks/ks6-desktop.cfg cp /root/anaconda-ks.cfg ks/ks6-mini.cfg vim ks/ks6-desktop.cfg #Kickstart file automatically generated by anaconda. #version=DEVEL install url --url=http://192.168.43.60/centos/6 在B機器搭建的http服務中,末尾不加/, 使用公有地址 reboot text #cdrom lang en_US.UTF-8 keyboard us network --onboot yes --device eth0 --bootproto dhcp --noipv6 rootpw --iscrypted $6$jMtvasdUuNqaERA9$EYnjvCNgtGKgKNbr8pQ1mrQgZ43gx.RAa./LHuTUWA1rmfH0AztHJ5yQxu4lJ/zzhmzt4OE73A5OnL7YjiHH.1 firewall --disabled authconfig --enableshadow --passalgo=sha512 selinux --disabled timezone --utc Asia/Shanghai bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet" #The following is the partition information you requested #Note that any partitions you deleted are not expressed #here so unless you clear all partitions first, this is #not guaranteed to work #clearpart --linux --drives=sda clearpart --all --initlabel zerombr part /boot --fstype=ext4 --size=1024 part / --fstype=ext4 --size=50000 part /app --fstype=ext4 --size=20000 part swap --size=2048 #volgroup vg_localhost --pesize=4096 pv.008002 #logvol /home --fstype=ext4 --name=lv_home --vgname=vg_localhost --grow --size=100 #logvol / --fstype=ext4 --name=lv_root --vgname=vg_localhost --grow --size=1024 --maxsize=51200 #logvol swap --name=lv_swap --vgname=vg_localhost --grow --size=2336 --maxsize=2336 #repo --name="CentOS" --baseurl=cdrom:sr0 --cost=100 %packages @base @core @debugging @basic-desktop @desktop-debugging @desktop-platform @directory-client @fonts @general-desktop @graphical-admin-tools @input-methods @internet-applications @network-file-system-client @print-client @remote-desktop-clients @server-platform @server-policy @workstation-policy %end ksvalidator ks/ks6-desktop.cfg 檢測應答文件的語法 vim ks/ks6-mini.cfg #platform=x86, AMD64, or Intel EM64T #version=DEVEL #Firewall configuration firewall --disabled #Install OS instead of upgrade install #Use network installation url --url=http://192.168.43.60/centos/6 在B機器搭建的http服務中,末尾不加/,使用公有地址 #Root password rootpw --iscrypted $1$pJZ2W0AP$nFQbRMMdRE1/YO4ddglBi0 #System authorization information auth --useshadow --passalgo=sha512 #Use text mode install text firstboot --disable #System keyboard keyboard us #System language lang en_US #SELinux configuration selinux --disabled #Installation logging level logging --level=info #Reboot after installation reboot #System timezone timezone Asia/Shanghai #Network information network --bootproto=dhcp --device=eth0 --onboot=on #System bootloader configuration bootloader --location=mbr #Clear the Master Boot Record zerombr #Partition clearing information clearpart --all --initlabel #Disk partitioning information part / --fstype="ext4" --size=10240 part /boot --fstype="ext4" --size=500 part swap --fstype="swap" --size=1024 %post mkdir /root/.ssh/ cat > /root/.ssh/authorized_keys <<EOF ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAruUSGJQ6UYn45lD0TRifnqYzy5izR6Eskjk0DV25Eplc7TDHqKH/98WatoN3l0zyM+v9IWxlg2HCaLdm0dreRVu7YP6q0NO9yyu+dgsasTVNdrNJi5B3qRhpLvboSbltVqdC9eT7txmCp7ZMcUH1YqcPSRnf/DulaeIJYmtivHG68X0WGPgTPcGSZ1ujXs6Ho/v8i+3bPnZ+w+KMMI9ajCCzoG9mV7+zshAQ6hdlMaKbosabYcDXCZJ4Q5EUtpjap0nK6nKsVi6TPU+o7GlD1UJF4qUXNGmcP79erp+TxCVEujgA3JP0TdgYXVu4fDw8rppNfxVejd+Kt00yxlMZEw== [email protected] EOF chmod 600 /root/.ssh/authorized_keys cat > /etc/yum.repos.d/base.repo <<EOF [hello] name=base_centos6 baseurl=https://mirrors.aliyun.com/centos/6/os/x86_64/ gpgcheck=0 EOF useradd wang echo 123789|passwd --stdin wang &> /dev/null %end %packages @core @server-policy @workstation-policy vim-enhanced lrzsz %end ksvalidator ks/ks6-mini.cfg 檢測應答文件的語法 vim isolinux/isolinux.cfg 設置啟動菜單項 default vesamenu.c32 #prompt 1 timeout 600 display boot.msg menu background splash.jpg menu title Welcome to CentOS 6.9! menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000 menu color title 0 #ffffffff #00000000 menu color tabmsg 0 #ffffffff #00000000 menu color unsel 0 #ffffffff #00000000 menu color hotsel 0 #ff000000 #ffffffff menu color hotkey 7 #ffffffff #ff000000 menu color scrollbar 0 #ffffffff #00000000 label desktop menu label ^Install or upgrade an ^Desktop system kernel vmlinuz append initrd=initrd.img ks=hd:sdb1:/ks/ks6-desktop.cfg label mini menu label Install ^Mini system kernel vmlinuz append initrd=initrd.img ks=hd:sdb1:/ks/ks6-mini.cfg label local menu default menu label Boot from ^local drive localboot 0xffff 將目錄打包成iso可啟動文件: mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.9 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.iso /app/bootiso/ sz /root/boot.sio 傳輸文件到桌面 在新建虛擬機上將光盤鏡像文件的路徑指向桌面的iso文件,設置好網絡模式 重啟虛擬機,按ESC進入光盤選擇模式,之後選擇要安裝的系統即可自動化安裝
(2)B機器設置系統倉庫
cd /var/www/html/
cd centos
mkdir 6
在設置中將centos6的光盤掛載上來
echo "- - -" > /sys/class/scsi_host/host0/scan 掃描出光盤
mount /dev/sr1 6/ 掛載光盤,設置系統倉庫
mount 查看是否掛載成功
(3)用虛擬硬盤模擬U盤啟動盤的制作
先在虛擬機設置中添加一塊硬盤 vim /app/bootiso/isolinux/isolinux.cfg ks=hd:sdb1:/ks/ks6-desktop.cfg 此處需要修改將cdrom改為hd:sdb1(硬盤) mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.9 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/boot.iso /app/bootiso/ isohybrid /root/boot.iso 給iso文件的前512字節添加信息 dd if=/root/boot.iso of=/dev/sdb 給新加的硬盤復制信息 sync 將復制的數據進行同步 shutdown -h now 關機 找到新的硬盤,復制到桌面 在新建的虛擬機中,添加一塊已存在的硬盤,在桌面找到 重啟機器,按ESC鍵,進入setup ENTER模式,將啟動項調整順序,新硬盤放到舊硬盤之前 保存退出,即可進入系統選擇界面,進行系統自動化安裝;
(4)純光盤半自動化安裝系統
mkdir /app
cp -rv /mnt/centos6/ /app/centos6
find /app/centos6/ -name TRANS.TBL -exec rm {} \; 刪除TRANS.TBL文件,需要重新生
成;
rm -rf /app/centos6/repodata/* cp /mnt/centos6/repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml /app/centos6/repodata/ 保留此記錄倉庫文件的文件 cd /app/centos6/ createrepo -g repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml ./ 重新生成倉庫元數據 mount /root/boot.iso.bak /mnt/ -o loop 將之前的iso文件掛載以獲取當中的ks文件 mkdir ksdir cp /mnt/ks/* ksdir/ vim isolinux/isolinux.cfg default vesamenu.c32 #prompt 1 timeout 600 display boot.msg menu background splash.jpg menu title Welcome to CentOS 6.9! menu color border 0 #ffffffff #00000000 menu color sel 7 #ffffffff #ff000000 menu color title 0 #ffffffff #00000000 menu color tabmsg 0 #ffffffff #00000000 menu color unsel 0 #ffffffff #00000000 menu color hotsel 0 #ff000000 #ffffffff menu color hotkey 7 #ffffffff #ff000000 menu color scrollbar 0 #ffffffff #00000000 label desktop menu label ^Install or upgrade an ^Desktop system kernel vmlinuz append initrd=initrd.img ks=cdrom:/ksdir/ks6-desktop.cfg label mini menu label Install ^Mini system kernel vmlinuz append initrd=initrd.img ks=cdrom:/ksdir/ks6-mini.cfg label local menu default menu label Boot from ^local drive localboot 0xffff mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.9 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/centos6ks.iso /app/centos6/
制作光盤引導啟動的含ks應答文件的iso文件,實現iso文件和遠程系統鏡像倉庫的運維自動化安裝系統