自動化安裝linux

2021-09-20 20:39:43 字數 2314 閱讀 2834

個人使用的linux的安裝沒有太多難度,但是一旦到生產環境內,那種隨性而裝系統的,將會給伺服器管理員帶來極大的麻煩,這裡需要對生產系統進行一定的定製,定製取決於公司的計算機的型別,公司的計算機往往都是乙個型別乙個型號。這裡定製就很方便了,把分割槽都設定一樣,這樣可以批量部署大批的機器。

回憶一下手動安裝乙個系統的步驟:1選擇語言,2選擇鍵盤布局,3分配分割槽,4選擇安裝型別,5選擇額外的包,6選擇時區,7設定root密碼。安裝時候的主觀感受是配置一步系統執行一步,其實不然,等所有的配置都配置完後,安裝程序才開始,只有分配分割槽是實時執行的。

安裝的程序叫anaconda,使用anaconda安裝系統後,在root目錄下會生成乙個檔案anaconda-ks.cfg檔案,這個檔案就是安裝當前系統時的全部配置資訊,分割槽情況的那幾行被注釋掉了。以下簡稱ks檔案,我們可以直接去掉分割槽那幾行的注釋,直接使用這個配置安裝乙個和當前系統一模一樣的系統。

配置檔案分為三段:

第一段是主要定義的是分割槽、grub密碼、使用者及密碼等等,格式如下(這裡的配置內容僅適合我的網路環境):

install

url--url=

lang en_us.utf-8

keyboard us

network --onbootyes --device eth0 --bootproto dhcp --noipv6

# reboot afterinstallation

reboot

firewall--disabled

authconfig --useshadow  --passalgo=sha512

selinux--disabled

timezoneasia/shanghai#part /boot --fstype=ext4 --size=200

#part pv.008002--size=61440

#volgroup vg0--pesize=8192 pv.008002

#lo**ol /--fstype=ext4 --name=root --vgname=vg0 --size=20480

#lo**ol swap--name=swap --vgname=vg0 --size=2048

#lo**ol /usr--fstype=ext4 --name=usr --vgname=vg0 --size=10240

#lo**ol /var--fstype=ext4 --name=var --vgname=vg0 --size=20480

repo--name="centos" --baseurl= --cost=100

以#開頭的這幾行就是我的分割槽情況

第二段定義的是安裝的包組和安裝的包

%packages

@                 代表包組

代表包%end

第三段定義的是系統安裝前和安裝後的執行的指令碼,格式如下

%pre

這部分定義的安裝前指令碼

%end

%post

這部分定義的是安裝後指令碼

%end

配置檔案的格式比較簡單也比較好理解,但是靠手寫定製乙個ks檔案還是有一定難度,linux中有乙個基於圖形介面定製ks檔案的工具。

安裝ks檔案生成工具kisckstart

yum install system-config-kickstart -y

執行kisckstart

system-config-kickstart

這個介面我們按照linux的介面基本類似,只有兩個部分不一樣,乙個是display configuration,這裡選擇是否安裝圖形介面,不安裝圖形介面的話就是最小安裝;另乙個是package selection,這裡是選擇安裝的包。

centos7使用這個是會有一點問題,可以參考我的另一部落格:

安裝linux的時候,在最開始的選擇安裝還是公升級系統那乙個介面按exc,進入命令列模式,輸入linux ks=ks檔案的位置

這個ks檔案可以是在http伺服器、ftp伺服器或本地檔案系統上。位於本地檔案系統的格式(這個格式只適用我,要用的話需要適當的變更):

ks=cdrom:/myks.cfg

位於網路的格式(同樣這個格式只適用我)

ks=ks=

這裡我們需要定製引導盤,定製步驟如下:

這時會在/root/目錄下生成boot.iso檔案,我們把這個檔案傳送到windows中就可以使用了,或者直接使用dd命令把這個檔案寫到光碟或u盤,就可以自動化安裝系統了。

這一節主要是為了實現自動化安裝linux,大規模部署linux。首先我們要有乙個ks檔案,使用system-config-kisckstart定義我們想要安裝的系統樣式;然後就是製作引導光碟boot.iso

全自動化安裝linux

系統 centos 6.5 工具 system config kickstart 環境 vmware 參考文件 1.原理 從系統安裝說起 在 rhel,centos,fedora 等系統中,安裝系統使用的程式名叫 anaconda,它屬於 fedoraproject,由 python 開發,能夠提供...

自動化安裝

自動安裝 system config kickstart 自動應答指令碼製作工具 yum install system config kickstart y 1 執行system config kickstart命令 basic configuration 基本資訊設定 設定時區,root使用者密碼...

mysql自動化指令碼 mysql自動化安裝指令碼

學習了兩周linux shell指令碼,終於寫出乙個mysql自動化安裝指令碼。加上今天一整天的測試,可以正常執行安裝mysql 5.5.40.其他版本還沒有測試。現分享一下。也請高手指點一下。執行該指令碼的前提是 環境介紹 1 redhat 6.3 x64,最小化安裝 2 ram 2g,hd 30...