随着linux程式的增多,軟體的安裝過程中經常出現如下問題:
1、硬體配置類似或者相同時,批量安裝系統和軟體,希望實作自動化安裝,減少安裝時間和人為出錯。
2、工程實施人員在不同客戶現場進行系統和軟體安裝(硬體配置不同),由于硬體有差别,不容易實作自動化。
筆者針對以上場景,從提高生産效率,減少誤操作的立場,提出如下解決方案,希望能達到抛磚引玉的目的,并能與同行進行深入的探讨,發現不足之處。
背景知識點
anaconda是redhat、centos、fedora等linux的安裝管理程式,它可以提供文本、圖形等安裝管理方式,并支援kickstart等腳本提供自動安裝的功能。定制安裝時,它提供的定制界面,可以實作互動式界面供使用者選擇配置(如選擇語言、鍵盤、時區等資訊)。
anaconda支援的管理模式:
(1)kickstart提供自動化安裝;
(2)對一個redhat實施upgrade。
可用的安裝方式:本地cdrom、usb、網絡方式(nfs、ftp、http)等。
對于kickstart,它是一個利用anconda工具實作伺服器自動化安裝的方法。通過生成的kickstart配置檔案ks.cfg,可以實作從裸機到全功能服務的的非互動式(無人值守式)安裝配置;ks.cfg是一個簡單的文本檔案,檔案包含anconda在安裝系統及安裝後配置服務時所需要擷取的一些必要配置資訊(如鍵盤設定、語言設定、分區設定等)。
anconda直接從該檔案中讀取必要的配置,隻要該檔案資訊配置正确無誤且滿足所有系統需求,就不再需要同使用者進行互動擷取資訊,進而實作安裝的自動化。一旦使用者進行了選擇,安裝會以非互動的方式繼續。使用kickstart可以實作流線化自動化的安裝、強制建立一緻性(軟體包、分區、配置、監控、安全性)、以及減少人為部署的失誤。
centos定制方法
第一步:準備軟體安裝包(rpm)
· 打包開發的程式
· 制作spec檔案
· 使用rpmbuild指令生成rpm包
rpmbuild -bb /root/rpmbuild/specs/apm_c.spec
生成 apm_c-2.5.0-1.x86_64.rpm
第二步:定制kickstart配置檔案
· 定制isolinux/isolinux.cfg檔案
· 配置ks.cfg
第三步:定制安裝界面
· 配置repodata/xxx-comps.xml檔案
· 配置install.img檔案
第四步:重新生成iso鏡像檔案
使用mkisofs指令重新生成鏡像檔案
———我是分割線———
作者介紹:姚惠龍,現任職優雲軟體,從事軟體定制開發10多年,經曆了c/s架構的資訊系統和b/s架構的web程式開發,也從事過linux應用程式和核心程式的開發。