Centos Auto Install Cdrom自动安装cdrom的制作

之前介绍过如何制作一个 centos live cdrom 系统

那么,某些情况下我们可能无法弄一个 pxe 系统,而只能通过 idrac 挂载 iso 的方式安装系统

该如何去做呢?

步骤如下:

一、下载Centos的minimal安装光盘

1wget http://mirrors.163.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Minimal-2009.iso
2yum install -y mkisofs

二、准备kickstart安装文件

下载: centos7.ks

  1text
  2skipx
  3install
  4
  5auth  --useshadow  --enablemd5
  6authconfig --enableshadow --passalgo=sha512
  7
  8firstboot --disable
  9keyboard us
 10lang en_US.UTF-8
 11reboot
 12cdrom
 13
 14firewall --disable
 15selinux  --disabled
 16
 17services --enabled="chronyd"
 18logging level=info
 19
 20
 21#ignoredisk --only-use=vda
 22ignoredisk --only-use=sda
 23#bootloader --location=mbr --append="net.ifnames=0 biosdevname=0 crashkernel=auto"
 24bootloader --location=mbr --append="crashkernel=auto"
 25
 26rootpw --plaintext Renren2021!
 27timezone Asia/Shanghai --isUtc
 28
 29network  --device=lo --hostname=localhost.localdomain
 30user --name=supdev --gid=511 --groups="supdev" --uid=511 --password="Renren2021!"
 31
 32zerombr
 33clearpart --all --initlabel 
 34
 35part biosboot --fstype=biosboot --size=1
 36part /boot --fstype ext4 --size=2048 
 37part swap  --asprimary   --size=8192
 38part /     --fstype ext4 --size=1 --grow
 39
 40#part biosboot --fstype=biosboot --size=1
 41#part /boot --fstype ext2 --size 250
 42#part pv.01 --size 1 --grow
 43#volgroup vg pv.01
 44#logvol / --vgname=vg --size=1 --grow --fstype ext4 --fsoptions=discard,noatime --name=root
 45#logvol /tmp --vgname=vg --size=1024 --fstype ext4 --fsoptions=discard,noatime --name=tmp
 46#logvol swap --vgname=vg --recommended --name=swap
 47
 48#uefi
 49#partition /boot/efi --asprimary --fstype=vfat --label EFI  --size=200
 50#partition /boot     --asprimary --fstype=ext4 --label BOOT --size=500
 51#partition /         --asprimary --fstype=ext4 --label ROOT --size=4096 --grow
 52
 53
 54services --enabled=network
 55
 56reboot
 57
 58%pre
 59parted -s /dev/sda mklabel gpt
 60%end
 61
 62%packages
 63@core
 64@system-admin-tools
 65@additional-devel
 66@virtualization-client
 67@virtualization-platform
 68@virtualization-tools
 69libguestfs-tools-c
 70perl-Sys-Virt
 71qemu-guest-agent
 72qemu-kvm-tools
 73curl
 74dstat
 75expect
 76openssl
 77initscripts
 78ipmitool
 79lrzsz
 80lsof
 81mtools
 82nc
 83nmap
 84perl
 85perl-CPAN
 86procps
 87python
 88screen
 89sysstat
 90systemtap
 91systemtap-client
 92systemtap-devel
 93tcpdump
 94telnet
 95vim
 96wget
 97wsmancli
 98zip
 99chrony
100kexec-tools
101net-tools
102ntp
103ntpdate
104man
105acpid
106chrony
107telnet
108%end

三、准备生成iso的脚本

下载: makeiso.sh

 1#!/bin/bash
 2rm -rf /tmp/bootiso /tmp/bootcustom /tmp/boot.iso
 3mkdir /tmp/bootiso 
 4mount -o loop CentOS-7-x86_64-Minimal-2009.iso /tmp/bootiso
 5
 6mkdir /tmp/bootcustom
 7cp -r /tmp/bootiso/* /tmp/bootcustom
 8umount /tmp/bootiso 
 9rmdir /tmp/bootiso
10
11
12chmod -R u+w /tmp/bootcustom
13
14cp centos7.ks /tmp/bootcustom/isolinux/ks.cfg
15
16sed -i '/menu\ default/d' /tmp/bootcustom/isolinux/isolinux.cfg
17sed -i 's/^timeout\ .*/timeout 10/g' /tmp/bootcustom/isolinux/isolinux.cfg
18sed -i '/^label\ linux/i label\ kickstart' /tmp/bootcustom/isolinux/isolinux.cfg
19sed -i '/^label\ linux/i \ \ menu\ label\ ^Install\ Using\ Kickstart\ CentOS 7' /tmp/bootcustom/isolinux/isolinux.cfg
20sed -i '/^label\ linux/i \ \ menu\ default' /tmp/bootcustom/isolinux/isolinux.cfg
21sed -i '/^label\ linux/i \ \ kernel\ vmlinuz\ biosdevname=0' /tmp/bootcustom/isolinux/isolinux.cfg
22sed -i '/^label\ linux/i \ \ append\ initrd=initrd.img\ ks=cdrom:\/ks.cfg' /tmp/bootcustom/isolinux/isolinux.cfg
23sed -i '/^label\ linux/i \\n' /tmp/bootcustom/isolinux/isolinux.cfg
24
25cd /tmp/bootcustom
26mkisofs -o /tmp/boot.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -V "CentOS 7 x86_64" -R -J -v -T isolinux/. .

生成的自动安装光盘文件在 /tmp/boot.iso ,在 idrac 中 mount 出来,就可以用 virtual CD-ROM 自动安装了


Vsftpd的日志设置