溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CentOS定制kickstart文件的方法

發(fā)布時間:2020-05-30 01:52:48 來源:億速云 閱讀:2072 作者:鴿子 欄目:系統(tǒng)運維

在上面的實驗中,我們沒有進行任何的安裝配置,全部都是Cobbler幫助我們完成的。可是在實際生產中,我們對每臺主機的硬盤分區(qū),安裝的軟件都有相應的要求,所以我們需要自己來定制KickStart文件,這樣我們就能夠定制地批量安裝操作系統(tǒng)了。
我們就利用實驗環(huán)境(CentOS 7)中的KickStart文件來定制我們自己的KickStart文件。

一、配置ks文件

Cobbler的ks文件存放位置

/var/lib/cobbler/kickstarts/

配置ks的方法

方法1、 每安裝好一臺Centos機器,Centos安裝程序都會創(chuàng)建一個kickstart配置文件,記錄你的真實安裝配置。如果你希望實現(xiàn)和某系統(tǒng)類似的安裝,可以基于該系統(tǒng)的kickstart配置文件來生成你自己的kickstart配置文件。(生成的文件名字叫anaconda-ks.cfg位于/root/anaconda-ks.cfg)
方法2、Centos提供了一個圖形化的kickstart配置工具。在任何一個安裝好的Linux系統(tǒng)上運行該工具,就可以很容易地創(chuàng)建你自己的kickstart配置文件。kickstart配置工具命令為redhat-config-kickstart(RHEL3)或system-config-kickstart(RHEL5/6/7)
方法3、按照格式自定義一個.cfg文件(方法1不可用的情況下)

ks文件說明

kickstart文件是一個簡單的文本文件,它包含了一個項目列表,每個項目由一個關鍵字來識別。

firewall(可選)

這個選項對應安裝程序里的「防火墻配置」屏幕:
firewall –enabled|–disabled [–trust=] [–port=]

graphical(可選)

在圖形模式下執(zhí)行kickstart安裝.kickstart安裝默認在圖形模式下安裝.text文本安裝。

network(可選)

為系統(tǒng)配置網絡信息.如果 kickstart安裝不要求聯(lián)網(換句話說,不從NFS,HTTP或FTP安裝),就不需要為系統(tǒng)配置網絡.如果安裝要求聯(lián)網而kickstart文件 里沒有提供網絡信息,安裝程序會假定從eth0通過動態(tài)IP地址(BOOTP/DHCP)來安裝,并配置安裝完的系統(tǒng)動態(tài)決定IP地址.network選 項為通過網絡的kickstart安裝以及所安裝的系統(tǒng)配置聯(lián)網信息.
    –ip=,要安裝的機器的IP地址.
    –gateway=,IP地址格式的默認網關.
    –nameserver=,主名稱服務器,IP地址格式.
    –nodns,不要配置任何 DNS 服務器.
    –netmask=,安裝的系統(tǒng)的子網掩碼.
    –hostname=,安裝的系統(tǒng)的主機名.
    –ethtool=,指定傳給ethtool程序的網絡設備的其他底層設置.
    –essid=,無線網絡的網絡ID.
    –wepkey=,無線網絡的加密密鑰.
    –onboot=,是否在引導時啟用該設備.
    –class=,DHCP類型.
    –mtu=,該設備的MTU.
    –noipv4=,禁用此設備的IPv4.
    –noipv6=,禁用此設備的IPv6

multipath(可選)

multipath –name= –device= –rule=part或partition(對于安裝是必需的,升級可忽略). 在系統(tǒng)上創(chuàng)建分區(qū). 如果不同分區(qū)里有多個紅帽企業(yè)Linux系統(tǒng),安裝程序會提示用戶升級哪個系統(tǒng).
 注意:作為安裝過程的一部分,所有被創(chuàng)建的分區(qū)都會被格式化,除非使用了–noformat和–onpart.,如果是分區(qū)的掛載點,它必須是下列形式中的一種:
/ ,例如,/,/usr,/home
swap,該分區(qū)被用作交換空間,要自動決定交換分區(qū)的大小,使用–recommended選項.
swap –recommended
自動生成的交換分區(qū)的最小值大于系統(tǒng)內存的數(shù)量,但小于系統(tǒng)內存的兩倍.
raid. ,該分區(qū)用于 software RAID(參考 raid).
pv. ,該分區(qū)用于 LVM(參考 logvol).
    –size=,以MB為單位的分區(qū)最小值.在此處指定一個整數(shù)值,如500.不要在數(shù)字后面加MB.
    –grow,告訴分區(qū)使用所有可用空間(若有),或使用設置的最大值.
    –maxsize=,當分區(qū)被設置為可擴充時,以MB為單位的分區(qū)最大值.在這里指定一個整數(shù)值,不要在數(shù)字后加MB.
    –noformat,用–onpart命令來告訴安裝程序不要格式化分區(qū).
    –onpart=或–usepart=,把分區(qū)放在已存在的設備上.
例如:partition /home –onpart=hda1,把/home置于必須已經存在的/dev/hda1上.
    –ondisk=或–ondrive=,強迫分區(qū)在指定磁盤上創(chuàng)建.
例如:–ondisk=sdb把分區(qū)置于系統(tǒng)的第二個SCSI磁盤上.
    –asprimary,強迫把分區(qū)分配為主分區(qū),否則提示分區(qū)失敗.
    –type=(用fstype代替),這個選項不再可用了.應該使用fstype.
    –fstype=,為分區(qū)設置文件系統(tǒng)類型.有效的類型為ext2,ext3,swap和vfat.
    –start=,指定分區(qū)的起始柱面,它要求用–ondisk=或ondrive=指定驅動器.它也要求用–end=指定結束柱面或用 –size=指定分區(qū)大小.
    –end=,指定分區(qū)的結束柱面.它要求用–start=指定起始柱面.
    –bytes-per-inode=,指定此分區(qū)上創(chuàng)建的文件系統(tǒng)的節(jié)點大小.不是所有的文件系統(tǒng)都支持這個選項,所以在其他情況下它都被忽略.
    –recommended,自動決定分區(qū)的大小.
    –onbiosdisk,強迫在 BIOS 找到的特定磁盤上創(chuàng)建分區(qū).
注:如果因為某種原因分區(qū)失敗了,虛擬終端3上會顯示診斷信息

定義安裝的包:

%packages
(xxx)
%end

定義安裝后執(zhí)行的命令或腳本:

%post
(xxx)
%end

ks文件示例

centos7

cat /var/lib/cobbler/kickstarts/centos7.cfg
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
# old format: keyboard us
# new format:
keyboard --vckeymap=us --xlayouts='us'
# Root password
rootpw --iscrypted $1$1qaz!QAZ$L4d6kVwN3toE.0oAS.dQ31
# Use network installation
url --url="http://192.168.42.128/cobbler/ks_mirror/CentOS-7-x86_64_new-x86_64/"
# System language
lang en_US.UTF-8
# Firewall configuration
firewall --disabled
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
#graphical
reboot
text
# Run the Setup Agent on first boot
firstboot --enable
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# System services
services --disabled="chronyd"
ignoredisk --only-use=sda
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai
# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --asprimary --fstype="xfs" --size=1024
part swap --fstype="swap" --size=2048
part / --fstype="xfs" --grow --size=1
%packages
@^minimal
@core
%end

%post

cat >/etc/profile<<EOF
HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S  `whoami` "
ulimit -n 65536
EOF
cat >/etc/security/limits.conf<<EOF
* soft nofile = 65536
* hard nofile = 65536
root soft nofile 65536
root hard nofile 65536
EOF
hwclock -w

%end

centos6.8

#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.137.38/cobbler/ks_mirror/CentOS-6.8-x86_64/"
#repo --name="CentOS" --baseurl=cdrom:sr0 --cost=100
# Root password
rootpw --iscrypted $1$ljohn$yBMDpKkntQ9jfV1ZAWKpU1
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
# System keyboard
keyboard us
# System language
lang en_US.UTF-8
# SELinux configuration
selinux --disabled
# Do not configure the X Window System
skipx
# Installation logging level
#logging --level=info
# Reboot after installation
reboot
# System timezone
timezone  Asia/Shanghai
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
#network  --bootproto=dhcp --device=eth2 --onboot=on
# System bootloader configuration
bootloader --append="crashkernel=auto rhgb quiet" --location=mbr --driveorder="sda"
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all --initlabel
# Disk partitioning information
part /boot --asprimary --fstype="ext4" --size=500
part swap --fstype="swap" --size=2048
part / --fstype="ext4" --grow --size=1
%packages --nobase
@core
%end

二、 將KickStart文件和yum源做關聯(lián)

在Cobbler 自動創(chuàng)建了yum源之后,會自動有一個ks文件與該源相對應。現(xiàn)在我們需要將自己制作的KS文件與原有的yum源進行關聯(lián)。

# --name 我們需要添加的啟動菜單的名字
# --distro  我們自定制的ks文件關聯(lián)的yum庫
# --kickstart 我們自定制的ks文件的路徑
[root@localhost kickstarts]#cobbler profile add --name=centos7-x86_64-new --distro=centos7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.cfg

查看Cobbler中現(xiàn)在還有多少個啟動項

[root@localhost kickstarts]#cobbler profile list
   centos6.9-x86_64
   centos7-x86_64
   centos7-x86_64-new

三、同步

每次對cobbler更改都要執(zhí)行同步

#cobbler sync
向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI