使用kickstart自動(dòng)化安裝
使用kickstart自動(dòng)化安裝
總體介紹
概述
優(yōu)缺點(diǎn)對(duì)比
背景知識(shí)
半自動(dòng)化安裝指導(dǎo)
環(huán)境要求
操作步驟
全自動(dòng)化安裝指導(dǎo)
環(huán)境要求
操作步驟
總體介紹
概述
用戶可以使用kickstart工具進(jìn)行openEuler系統(tǒng)的自動(dòng)化安裝,包括如下兩種方式:
半自動(dòng)化安裝:安裝人員不需要手動(dòng)設(shè)定操作系統(tǒng)的鍵盤、語(yǔ)言、分區(qū)等具體屬性(通過(guò)kickstart實(shí)現(xiàn)自動(dòng)化),但是需要手動(dòng)指定kickstart文件的位置。
全自動(dòng)化安裝:實(shí)現(xiàn)操作系統(tǒng)的安裝過(guò)程全自動(dòng)化。
優(yōu)缺點(diǎn)對(duì)比
使用kickstart工具進(jìn)行半自動(dòng)化安裝和全自動(dòng)化安裝的優(yōu)缺點(diǎn)對(duì)比如表1所示,用戶可以自行選擇安裝方式。
表 1 優(yōu)缺點(diǎn)對(duì)比
安裝方式 | 優(yōu)點(diǎn) | 缺點(diǎn) |
---|---|---|
半自動(dòng)化安裝 | 不需要準(zhǔn)備tftp,pxe,dhcp等服務(wù) | 需要手動(dòng)指定kickstart文件的位置 |
全自動(dòng)化安裝 | 操作系統(tǒng)的全自動(dòng)化安裝 | 需要配置tftp,dhcp,pxe等服務(wù) |
背景知識(shí)
kickstart
kickstart是一種無(wú)人值守的安裝方式。它的工作原理是在安裝過(guò)程中記錄典型的需要人工干預(yù)填寫的各種參數(shù),并生成一個(gè)配置文件(ks.cfg),在安裝過(guò)程中,安裝程序首先會(huì)去查找ks配置文件,如果找到合適的參數(shù),就采用所找到的參數(shù);如果沒(méi)有找到合適的參數(shù),便需要安裝者手動(dòng)設(shè)定。所以,如果kickstart文件涵蓋了安裝過(guò)程中需要設(shè)定的所有參數(shù),安裝者只需要告訴安裝程序從何處取ks.cfg文件,就能實(shí)現(xiàn)系統(tǒng)安裝的自動(dòng)化。
kickstart 安裝提供一個(gè)安裝過(guò)程自動(dòng)化的方法,可以是部分自動(dòng)化,也可以是完全自動(dòng)化。
PXE
PXE(Pre-boot Execution Environment,預(yù)啟動(dòng)執(zhí)行環(huán)境),工作于Client/Server的網(wǎng)絡(luò)模式,支持PXE的客戶端在啟動(dòng)過(guò)程中,能夠從DHCP服務(wù)器獲取IP,結(jié)合TFTP(trivial file transfer protocol)等協(xié)議可以實(shí)現(xiàn)客戶端的網(wǎng)絡(luò)引導(dǎo)和安裝。
TFTP
TFTP(Trivial File Transfer Protocol,簡(jiǎn)單文件傳輸協(xié)議),該協(xié)議用來(lái)實(shí)現(xiàn)客戶機(jī)與服務(wù)器之間的簡(jiǎn)單文件傳輸,它提供不復(fù)雜、開(kāi)銷不大的文件傳輸服務(wù)。
半自動(dòng)化安裝指導(dǎo)
環(huán)境要求
使用kickstart進(jìn)行openEuler系統(tǒng)的半自動(dòng)化安裝的環(huán)境要求如下:
物理機(jī)/虛擬機(jī)(虛擬機(jī)創(chuàng)建可參考對(duì)應(yīng)廠商的資料):包括使用kickstart工具進(jìn)行自動(dòng)化安裝的計(jì)算機(jī)和被安裝的計(jì)算機(jī)。
httpd:存放kickstart文件。
ISO: openEuler-20.03-LTS-aarch64-dvd.iso
操作步驟
使用kickstart進(jìn)行openEuler系統(tǒng)的半自動(dòng)化安裝的操作步驟如下:
環(huán)境準(zhǔn)備
說(shuō)明:
安裝之前,請(qǐng)確保http服務(wù)器的防火墻處于關(guān)閉狀態(tài)。關(guān)閉防火墻可參照如下命令:
""iptables -F
安裝并啟動(dòng)httpd。
""# dnf install httpd -y # systemctl start httpd # systemctl enable httpd
準(zhǔn)備kickstart文件。
""# mkdir /var/www/html/ks # vim /var/www/html/ks/openEuler-ks.cfg ===>根據(jù)已安裝openEuler系統(tǒng)自動(dòng)生成的anaconda-ks.cfg修改得到,也可以使用system-config-kickstart工具做成 ==================================== ***以下內(nèi)容需要根據(jù)實(shí)際需求進(jìn)行修改*** #version=DEVEL ignoredisk --only-use=sda autopart --type=lvm # Partition clearing information clearpart --none --initlabel # Use graphical install graphical # Use CDROM installation media cdrom # Keyboard layouts keyboard --vckeymap=cn --xlayouts='cn' # System language lang zh_CN.UTF-8 # Network information network --bootproto=dhcp --device=enp4s0 --ipv6=auto --activate network --hostname=openeuler.com # Root password rootpw --iscrypted $6$fQE83lxEZ48Or4zc$j7/PlUMHn29yTjCD4Fi44WTZL/RzVGxJ/7MGsZMl6QfE3KjIVT7M4UrhFXbafvRq2lUddAFcyWHd5WRmXfEK20 # Run the Setup Agent on first boot firstboot --enable # Do not configure the X Window System skipx # System services services --disabled="chronyd" # System timezone timezone Asia/Shanghai --isUtc--nontp %packages @^minimal-environment @standard %end %anaconda pwpolicy root --minlen=8 --minquality=1 --notstrict --nochanges --notempty pwpolicy user --minlen=8 --minquality=1 --notstrict --nochanges --emptyok pwpolicy luks --minlen=8 --minquality=1 --notstrict --nochanges --notempty %end %post #enable kdump sed -i "s/ ro / ro crashkernel=1024M,high /" /boot/efi/EFI/openEuler/grub.cfg %end =====================================
說(shuō)明:
密碼密文生成方式:
# python3
Python 3.7.0 (default, Apr 1 2019, 00:00:00)
[GCC 7.3.0] on linux
Type “help”, “copyright”, “credits” or “l(fā)icense” for more information.
>>> import crypt
>>> passwd = crypt.crypt(“myPasswd”)
>>> print(passwd)
$6$63c4tDmQGn5SDayV$mZoZC4pa9Jdt6/ALgaaDq6mIExiOO2EjzomB.Rf6V1BkEMJDcMddZeGdp17cMyc9l9ML9ldthytBEPVcnboR/0
將ISO鏡像文件掛載到需要安裝openEuler計(jì)算機(jī)的光驅(qū)上。
另外,也可以選擇NFS等網(wǎng)絡(luò)安裝,kickstart文件中需要指定安裝源位置(默認(rèn)是cdrom)。
安裝系統(tǒng)
啟動(dòng)系統(tǒng)進(jìn)入安裝選擇界面。
在“啟動(dòng)安裝”中的“安裝引導(dǎo)界面”中選擇“InstallopenEuler20.03 LTS”,并按下“e”鍵。
啟動(dòng)參數(shù)中追加“inst.ks=http://server ip/ks/openEuler-ks.cfg”。
按“Ctrl+x”,開(kāi)始系統(tǒng)的自動(dòng)安裝。
確認(rèn)系統(tǒng)安裝完畢。
系統(tǒng)安裝完畢以后會(huì)自動(dòng)重啟,如果優(yōu)先從光驅(qū)啟動(dòng),會(huì)再次進(jìn)入到安裝界面,此時(shí)關(guān)閉計(jì)算機(jī),調(diào)整啟動(dòng)順序(優(yōu)先從硬盤啟動(dòng))。
全自動(dòng)化安裝指導(dǎo)
環(huán)境要求
使用kickstart進(jìn)行openEuler系統(tǒng)的全自動(dòng)化安裝的環(huán)境要求如下:
物理機(jī)/虛擬機(jī)(虛擬機(jī)創(chuàng)建可參考對(duì)應(yīng)廠商的資料):包括使用kickstart工具進(jìn)行自動(dòng)化安裝的計(jì)算機(jī)和被安裝的計(jì)算機(jī)。
httpd:存放kickstart文件。
tftp:提供vmlinuz和initrd文件。
dhcpd/pxe:提供DHCP服務(wù)。
ISO:openEuler-20.03-LTS-aarch64-dvd.iso。
操作步驟
使用kickstart進(jìn)行openEuler系統(tǒng)的全自動(dòng)化安裝的操作步驟如下:
環(huán)境準(zhǔn)備
說(shuō)明:
安裝之前,請(qǐng)確保http服務(wù)器的防火墻處于關(guān)閉狀態(tài)。關(guān)閉防火墻可參照如下命令:
""iptables -F
安裝并啟動(dòng)httpd。
""# dnf install httpd -y # systemctl start httpd # systemctl enable httpd
安裝并配置tftp。
""# dnf install tftp-server -y # vim /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 } # systemctl start tftp # systemctl enable tftp # systemctl start xinetd # systemctl status xinetd # systemctl enable xinetd
安裝源的制作。
""# mount openEuler-20.03-LTS-aarch64-dvd.iso /mnt # cp -r /mnt/* /var/www/html/openEuler/
設(shè)置和修改kickstart配置文件 openEuler-ks.cfg,參考3安裝源的目錄,此處選擇http安裝源。
""#vim /var/www/html/ks/openEuler-ks.cfg ==================================== ***以下內(nèi)容根據(jù)實(shí)際需求進(jìn)行修改*** #version=DEVEL ignoredisk --only-use=sda autopart --type=lvm # Partition clearing information clearpart --none --initlabel # Use graphical install graphical # Keyboard layouts keyboard --vckeymap=cn --xlayouts='cn' # System language lang zh_CN.UTF-8 #Use http installation source url --url=//192.168.122.1/openEuler/ %post #enable kdump sed -i "s/ ro / ro crashkernel=1024M,high /" /boot/efi/EFI/openEuler/grub.cfg %end ...
修改pxe配置文件grub.cfg, 可參考如下內(nèi)容。
""# cp -r /mnt/images/pxeboot/* /var/lib/tftpboot/ # cp /mnt/EFI/BOOT/grubaa64.efi /var/lib/tftpboot/ # cp /mnt/EFI/BOOT/grub.cfg /var/lib/tftpboot/ # ls /var/lib/tftpboot/ grubaa64.efi grub.cfg initrd.img TRANS.TBL vmlinuz # vim /var/lib/tftpboot/grub.cfg set default="1" function load_video { if [ x$feature_all_video_module = xy ]; then insmod all_video else insmod efi_gop insmod efi_uga insmod ieee1275_fb insmod vbe insmod vga insmod video_bochs insmod video_cirrus fi } load_video set gfxpayload=keep insmod gzio insmod part_gpt insmod ext2 set timeout=60 ### BEGIN /etc/grub.d/10_linux ### menuentry 'Install openEuler 20.03 LTS' --class red --class gnu-linux --class gnu --class os { set root=(tftp,192.168.1.1) linux /vmlinuz ro inst.geoloc=0 console=ttyAMA0 console=tty0 rd.iscsi.waitnet=0 inst.ks=http://192.168.122.1/ks/openEuler-ks.cfg initrd /initrd.img }
DHCP的配置(可以使用dnsmasq代替 )。
""# dnf install dhcp -y # # DHCP Server Configuration file. # see /usr/share/doc/dhcp-server/dhcpd.conf.example # see dhcpd.conf(5) man page # # vim /etc/dhcp/dhcpd.conf ddns-update-style interim; ignore client-updates; filename "grubaa64.efi"; # pxelinux 啟動(dòng)文件位置; next-server 192.168.122.1;# (重要)TFTP Server 的IP地址; subnet 192.168.122.0 netmask 255.255.255.0 { option routers 192.168.111.1; # 網(wǎng)關(guān)地址 option subnet-mask 255.255.255.0; # 子網(wǎng)掩碼 range dynamic-bootp 192.168.122.50 192.168.122.200; # 動(dòng)態(tài)ip范圍 default-lease-time 21600; max-lease-time 43200; } # systemctl start dhcpd # systemctl enable dhcpd
安裝系統(tǒng)
在“Start boot option”界面按下“F2”選擇從網(wǎng)絡(luò)pxe啟動(dòng),開(kāi)始自動(dòng)化安裝。
進(jìn)入系統(tǒng)全自動(dòng)化安裝界面。
確認(rèn)系統(tǒng)安裝完畢。
-
openEuler
+關(guān)注
關(guān)注
2文章
316瀏覽量
5897
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論