前面我們已經使用CentOS6.7的平臺搭建了pxe服務器,現在我們利用此服務器繼續安裝Ubuntu 14.04.4 server系統的客戶機。
參見 http://1130739.blog.51cto.com/1120739/1740925
部署方法:
在pxe安裝菜單文件/var/lib/tftpboot/msgs/boot.msg添加Ubuntu系統的選項
在default文件添加Ubuntu系統引導內核、加載映像、自動應答等文件。
####### Install Ubuntu14.04.4 amd64 #######
label 5
kernel kernel/linux.ubuntu14.04.4
ipappend 2
append vga=788 initrd=image/initrd.ubuntu14.04.4.gz ks=http://192.168.150.20/os/ubuntu-14.04.4/ks.cfg live-installer/net-image=http://192.168.150.20/os/ubuntu-14.04.4/install/filesystem.squashfs clock-setup/ntp=false ip=dhcp ksdevice=bootif
這裏live-installer/net-image參數是指定live image,如果不指定或指定有誤則安裝會橙屏報錯。
clock-setup/ntp=false 參數是指定安裝過程中禁用ntp服務與時間服務器同步時間,建議在安裝完系統後在%post加命令與時間服務器同步時間。如果不指定此參數,默認安裝過程中會自動與Ubuntu官方時間服務器同步時間。
當然也可以直接指定一個響應較快的時間服務器 clock-setup/ntp=true clock-setup/ntp-server=0.ubuntu.pool.ntp.org
關於更多參數及其用法,請參閱Ubuntu 14.04官方安裝文檔。https://help.ubuntu.com/lts/installation-guide/amd64/install.en.pdf
從Ubuntu官網下載ubuntu-14.04.4-server-amd64.iso的ISO鏡像到pxe服務器,鏈接http://mirror.bjtu.edu.cn/ubuntu-releases/14.04.4/ubuntu-14.04.4-server-amd64.iso
下載完成後掛載鏡像,拷貝全部文件到http服務根目錄裏對應os目錄下。
mount -o loop ubuntu-14.04.4-server-amd64.iso /media/
mkdir /var/www/html/os/ubuntu-14.04.4
cp -r /media/* /var/www/html/os/ubuntu-14.04.4/
拷貝網絡安裝引導內核、映像文件到tftp服務根目錄
cp /media/install/netboot/ubuntu-installer/amd64/linux /var/lib/tftpboot/kernel/linux.ubuntu14.04.4
cp /media/install/netboot/ubuntu-installer/amd64/initrd.gz /var/lib/tftpboot/image/initrd.ubuntu14.04.4.gz
無人應答kickstart文件的生成,兩種方法:使用system-config-kickstart配置或從本章附件下載後修改使用。
system-config-kickstart工具的使用跟CentOS/RHEL平臺下類似,需要在桌面環境下使用。一臺已經安裝好的Ubuntu Server系統如果未安裝桌面環境,使用官方apt-get源安裝桌面環境與system-config-kickstart軟件,使用sudo的時候需要鍵入當前普通用戶密碼來提權。
sudo apt-get update
sudo apt-get install ubuntu-desktop system-config-kickstart -y
重啓,控制檯(本地)或遠程登錄到桌面環境。打開terminal鍵入命令system-config-kickstart進入配置界面,基本配置包括,默認語言、鼠標、鍵盤、時區、添加語言支持、安裝後是否重啓的選項。
安裝源的配置,這裏根據實際情況指定http服務器地址以及Ubuntu系統文件絕對網絡路徑。
boot loader選項的設置,是否安裝新的boot loader以及安裝位置。
分區信息,按照如下配置即可。
點擊Add添加分區信息,根分區文件系統類型、容量大小、強制主分區、是否指定磁盤等。
sawp分區容量大小,根分區與swap分區必須指定。
分區總覽信息如下
用戶配置可以指定是否啓用root用戶以及設置密碼。Ubuntu手工安裝默認不啓用root用戶,創建一個普通用戶來登錄,所以這裏普通用戶必須指定。
防火牆配置,測試環境與開發環境可禁用防火牆服務避免給測試時帶來的麻煩;生產環境與互聯網環境,則強烈建議使用防火牆來構建主機的防禦系統。
軟件包的選擇,右邊全部爲空也不可添加,不用擔心。後面對生成後的ks.cfg文件編輯,手工添加需要安裝的軟件包。
安裝前後執行的腳本配置,根據實際需求添加。
配置完所有的參數後,點擊左上角的文件菜單來保存配置文件。
確定保存位置,與文件名ks.cfg。
最後點擊左上角文件菜單裏退出配置界面
使用vi編輯生成的ks.cfg文件,在skipx後面手工添加需要安裝的軟件包。
在%post後面添加需要安裝後執行的腳本或命令
關於kickstart更多語法信息請參閱Ubuntu14.04官方安裝文檔,文檔中提及到也可以參考Linux發行版本Red Hat文檔kickstart語法詳細介紹。https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/ch-kickstart2.html
最後將製作的ks.cfg文件拷貝到pxe服務器http根目錄下/var/www/html/os/ubuntu-14.04.4/
pxe服務器停止防火牆與selinux服務,確保dhcp、tftp、http服務正常運行。
待安裝的客戶機開機從網卡啓動,獲取到啓動菜單後按數字5回車開始Ubuntu系統的自動安裝。
等待一段時間系統自動完成安裝。
我在測試過程中發現:如果dhcp分配給客戶機的IP能夠訪問到Ubuntu官方服務器,那麼在安裝過程中會自動連接服務器下載一些更新的軟件包或文件等,這對於網絡質量不夠優越的環境來說嚴重影響了整個安裝進度。那麼,我建議在安裝Ubuntu前,要給予dhcp所分配的IP網段無法訪問互聯網的權限,系統安裝完成後再進行系統更新的操作。