2,125 瀏覽數

RedHat – KICKSTART 自動安裝設定檔

通常 RedHat 跟 CentOS 安裝完成之後在 root 資料夾會留下當初安裝的設定檔 anaconda-ks.cfg ,這可以當做下次安裝的自動安裝設定檔 KICKSTART ,不過這預設的 KICKSTART 最會還是會停在

Initial setup of centos linux 7 
Licence not accepted

這預設的 anaconda-ks.cfg 設定檔並沒有設定 End User License Agreement (EULA)使用條款,所以我們得自己把這一行設定寫到 anaconda-ks.cfg 裡面.連 firstboot 也建議直接設定為 –disable ,這些設定沒有順序性.

eula --agreed 
firstboot --disable 

我的 KICKSTART 檔案就會像這樣.

# cat /root/anaconda-ks.cfg 
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use network installation
url --url="http://172.16.0.2/centos7-64/"
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --disable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8
eula --agreed
# Network information
network  --bootproto=dhcp --device=eth0 --ipv6=auto --activate
network  --hostname=localhost.localdomain

# Root password
rootpw --iscrypted $6$FPvqGI9U9miJL67P$7JIToZoCBzcoIk3hdONuHbRWfnGy.VaTW5vM78Hl0SPZA3NVoWqRF7Wnm50yFGs2HOlbDTP9uqOENdRRacMoE0
# System services
services --enabled="chronyd"
# System timezone
timezone Asia/Taipei --isUtc
# X Window System configuration information
xconfig  --startxonboot
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
autopart --type=lvm
# Partition clearing information
clearpart --all --initlabel --drives=sda

%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools

%end

%addon com_redhat_kdump --enable --reserve-mb='auto'

%end

如果你有一些設定需要在安裝前或是安裝後順便完成,在 Kickstart 也是可以做設定,不過這設定必須放在 Kickstart 檔案的最後面.

  • 安裝前 以 %pre 開始,以 %end 結尾
  • 安裝後 以 %post 開始,以 %end 結尾

%pre 與 %post 的順序是沒有關係的.

%pre 

%end

%post 

%end

用文字編輯很累人 RedHat 提供了一隻工具(#system-config-kickstart)可以讓我們透過勾選選單的方式來設定安裝時的設定值.
kickstart
Kickstart 詳細設定可以參考 https://access.redhat.com/documentation/zh-TW/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/sect-kickstart-syntax.html

當你的電腦有多個網路埠時,自動安裝還是會停在選擇網路埠,此時你可以設定 ksdevice=bootif

# vi /var/lib/tftpboot/linux-install/pxelinux.cfg/default
RHEL6.5
  kernel rhel6.5-64/vmlinuz
  append initrd=rhel6.5-64/initrd.img xdriver=vesa nomodeset ks=http://172.16.0.2/rhel6.5-64/ks.cfg ksdevice=bootif
  IPAPPEND 2

關於 ksdevice 參數使用請參考 https://access.redhat.com/documentation/zh-TW/Red_Hat_Enterprise_Linux/7/html/Installation_Guide/chap-anaconda-boot-options.html

發表迴響