本發(fā)明涉及計(jì)算機(jī)技術(shù),尤指操作系統(tǒng)配置文件的生成方法及裝置。
背景技術(shù):
在基于pxe(prebootexecuteenvironment,預(yù)啟動(dòng)執(zhí)行環(huán)境)服務(wù)的操作系統(tǒng)自動(dòng)化部署中,操作系統(tǒng)自動(dòng)化部署的核心文件就是ks(kickstart,操作系統(tǒng)安裝的配置文件)文件,通常情況下,設(shè)備上需要安裝有生成ks文件所需的服務(wù)才能夠生成kickstart文件,對(duì)于不具備生成kickstart文件所需服務(wù)的設(shè)備則無(wú)法生成kickstart文件。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述技術(shù)問(wèn)題,本發(fā)明提供了一種操作系統(tǒng)配置文件的生成方法及裝置,可以使不具備生成kickstart文件所需服務(wù)的設(shè)備可以生成kickstart文件。
為了達(dá)到本發(fā)明目的,本發(fā)明提供了一種操作系統(tǒng)配置文件的生成方法,所述方法包括:第一設(shè)備獲取第二設(shè)備所需的配置文件kickstart的模板;
根據(jù)所述kickstart的模板的內(nèi)容生成命令行shell命令;
與所述第二設(shè)備建立連接后,將所述shell命令發(fā)送給所述第二設(shè)備,以使所述第二設(shè)備執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,所述第一設(shè)備獲取第二設(shè)備所需的配置文件kickstart的模板包括:
所述第一設(shè)備獲取所述第二設(shè)備所需的操作系統(tǒng)類型;
從預(yù)先設(shè)置的kickstart模板庫(kù)中獲取所述操作系統(tǒng)類型對(duì)應(yīng)的kickstart的模板。
進(jìn)一步,在將所述shell命令發(fā)送給所述第二設(shè)備之前,所述方法還包括:
根據(jù)所述第二設(shè)備的ip地址、用戶名和密碼,基于安全外殼協(xié)議ssh與所述第二設(shè)備的建立連接。
本發(fā)明還提供一種操作系統(tǒng)配置文件的生成方法,所述方法包括:
第二設(shè)備與第一設(shè)備建立連接后,獲取第一設(shè)備發(fā)送的命令行shell命令;其中,所述shell命令含有所述第二設(shè)備所需的配置文件kickstart的模板的內(nèi)容;
執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,在所述獲取第一設(shè)備發(fā)送的命令行shell命令之前,所述方法還包括:
基于安全外殼協(xié)議ssh與所述第一設(shè)備建立連接。
本發(fā)明還提供一種操作系統(tǒng)配置文件的生成裝置,設(shè)置于第一設(shè)備,所述裝置包括:
獲取模塊,用于獲取第二設(shè)備所需的配置文件kickstart的模板;
生成模塊,根據(jù)所述kickstart的模板的內(nèi)容生成命令行shell命令;
發(fā)送模塊,用于與所述第二設(shè)備建立連接后,將所述shell命令發(fā)送給所述第二設(shè)備,以使所述第二設(shè)備執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,所述獲取模塊用于獲取第二設(shè)備所需的配置文件kickstart的模板包括:
所述第一設(shè)備獲取所述第二設(shè)備所需的操作系統(tǒng)類型;
從預(yù)先設(shè)置的kickstart模板庫(kù)中獲取所述操作系統(tǒng)類型對(duì)應(yīng)的kickstart的模板。
進(jìn)一步,所述裝置還包括:
連接模塊,用于在將所述shell命令發(fā)送給所述第二設(shè)備之前,根據(jù)所述第二設(shè)備的ip地址、用戶名和密碼,基于安全外殼協(xié)議ssh與所述第二設(shè)備的建立連接。
本發(fā)明還提供一種操作系統(tǒng)配置文件的生成裝置,設(shè)置于第二設(shè)備,所述裝置包括:
接收模塊,用于與第一設(shè)備建立連接后,獲取第一設(shè)備發(fā)送的命令行shell命令;其中,所述shell命令含有所述第二設(shè)備所需的配置文件kickstart的模板的內(nèi)容;
處理模塊,用于執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,所述接收模塊,還用于在獲取第一設(shè)備發(fā)送的命令行shell命令之前,基于安全外殼協(xié)議ssh與所述第一設(shè)備建立連接。
與現(xiàn)有技術(shù)相比,本發(fā)明包括:第一設(shè)備獲取第二設(shè)備所需的配置文件kickstart的模板;根據(jù)所述kickstart的模板的內(nèi)容生成命令行shell命令;與所述第二設(shè)備建立連接后,將所述shell命令發(fā)送給所述第二設(shè)備,以使所述第二設(shè)備執(zhí)行所述shell命令后生成kickstart文件。本發(fā)明可以使不具備生成kickstart文件所需服務(wù)的設(shè)備能夠生成kickstart文件。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說(shuō)明書中闡述,并且,部分地從說(shuō)明書中變得顯而易見,或者通過(guò)實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過(guò)在說(shuō)明書、權(quán)利要求書以及附圖中所特別指出的結(jié)構(gòu)來(lái)實(shí)現(xiàn)和獲得。
附圖說(shuō)明
附圖用來(lái)提供對(duì)本發(fā)明技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說(shuō)明書的一部分,與本申請(qǐng)的實(shí)施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對(duì)本發(fā)明技術(shù)方案的限制。
圖1為本發(fā)明實(shí)施例的操作系統(tǒng)配置文件的生成方法的流程圖;
圖2為本發(fā)明實(shí)施例的操作系統(tǒng)配置文件的生成方法的另一流程圖;
圖3為本發(fā)明實(shí)施例的操作系統(tǒng)配置文件的生成方法的又一流程圖;
圖4為本發(fā)明實(shí)施例的操作系統(tǒng)配置文件的生成裝置的結(jié)構(gòu)示意圖;
圖5為本發(fā)明實(shí)施例的操作系統(tǒng)配置文件的生成裝置的另一結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說(shuō)明。需要說(shuō)明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。
在附圖的流程圖示出的步驟可以在諸如一組計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
如圖1所示,本實(shí)施例提供一種操作系統(tǒng)配置文件的生成方法,所述方法包括:
步驟s100:第一設(shè)備獲取第二設(shè)備所需的配置文件kickstart的模板;
步驟s101:根據(jù)所述kickstart的模板的內(nèi)容生成命令行shell命令;
步驟s102:與所述第二設(shè)備建立連接后,將所述shell命令發(fā)送給所述第二設(shè)備,以使所述第二設(shè)備執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,所述第一設(shè)備獲取第二設(shè)備所需的配置文件kickstart的模板包括:
所述第一設(shè)備獲取所述第二設(shè)備所需的操作系統(tǒng)類型;
從預(yù)先設(shè)置的kickstart模板庫(kù)中獲取所述操作系統(tǒng)類型對(duì)應(yīng)的kickstart的模板。
本實(shí)施例中,系統(tǒng)管理員可以在第一設(shè)備上輸入第二設(shè)備所需的操作系統(tǒng)類型,第一設(shè)備獲取該操作系統(tǒng)類型后,從預(yù)先配置的kickstart模板庫(kù)中查找該操作系統(tǒng)類型對(duì)應(yīng)的kickstart的模板。
進(jìn)一步,在將所述shell命令發(fā)送給所述第二設(shè)備之前,所述方法還包括:
根據(jù)所述第二設(shè)備的ip地址、用戶名和密碼,基于ssh(secureshell,安全外殼協(xié)議)與所述第二設(shè)備的建立連接。
如圖2所示,本實(shí)施例還提供一種操作系統(tǒng)配置文件的生成方法,所述方法包括:
步驟s103:第二設(shè)備與第一設(shè)備建立連接后,獲取第一設(shè)備發(fā)送的命令行shell命令;其中,所述shell命令含有所述第二設(shè)備所需的配置文件kickstart的模板的內(nèi)容;
步驟s104:執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,在所述獲取第一設(shè)備發(fā)送的命令行shell命令之前,所述方法還包括:
基于安全外殼協(xié)議ssh與所述第一設(shè)備建立連接。
如圖3所示,本實(shí)施例提供的操作系統(tǒng)配置文件的生成方法包括:
步驟s200:第一設(shè)備獲取第二設(shè)備所需的配置文件kickstart的模板;
步驟s201:根據(jù)所述kickstart的模板的內(nèi)容生成命令行shell命令;
步驟s202:第一設(shè)備與第二設(shè)備基于安全外殼協(xié)議ssh建立連接;
步驟s203:第一設(shè)備將所述shell命令發(fā)送給所述第二設(shè)備;
步驟s204:第二設(shè)備接收到第一設(shè)備發(fā)送的shell命令后,執(zhí)行所述shell命令后生成kickstart文件。
本實(shí)施例中,第一設(shè)備可以將kickstart的模板的內(nèi)容以字符串的形式放置到一個(gè)字符串變量(content)中,生成shell命令,該命令用于生成kickstart文件。本實(shí)施例中,shell命令的格式可以如下:echo‘content’>>filename,其中,echo為linux操作系統(tǒng)下的字符串輸出命令;content的內(nèi)容為kickstart的模板的內(nèi)容;“>>”為linux系統(tǒng)下輸出內(nèi)容重定向命令;filename為生成的kickstart文件需要放置的位置及kickstart的模板的內(nèi)容文件名字。
第一設(shè)備通過(guò)調(diào)用ssh的工具類將該shell命令發(fā)送給第二設(shè)備,第二設(shè)備執(zhí)行該shell命令后生成kickstart文件。
本實(shí)施例中,第一設(shè)備可以為具備生成ks文件所需服務(wù)的設(shè)備;第二設(shè)備可以為不具備生成ks文件所需服務(wù)的設(shè)備。通過(guò)在第一設(shè)備和第二設(shè)備之間建立連接,可以使第二設(shè)備通過(guò)第一設(shè)備獲取所需的ks模板文件的內(nèi)容,從而生成ks文件。
需要說(shuō)明的是,步驟s202的執(zhí)行順序只要在步驟s203之前即可。此外,本實(shí)施例中,第一設(shè)備和第二設(shè)備可以相同,也可以不相同。本實(shí)施例的技術(shù)方案同樣適用于已具備生成ks文件所需服務(wù)的設(shè)備,這時(shí)第一設(shè)備與第二設(shè)備相同,并將第二設(shè)備的ip地址設(shè)置為第一設(shè)備的ip地址,同樣可以通過(guò)本發(fā)明技術(shù)方案生成ks文件。
如圖4所示,本實(shí)施例還提供一種操作系統(tǒng)配置文件的生成裝置,設(shè)置于第一設(shè)備,所述裝置包括:
獲取模塊11,用于獲取第二設(shè)備所需的配置文件kickstart的模板;
生成模塊12,根據(jù)所述kickstart的模板的內(nèi)容生成命令行shell命令;
發(fā)送模塊13,用于與所述第二設(shè)備建立連接后,將所述shell命令發(fā)送給所述第二設(shè)備,以使所述第二設(shè)備執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,所述獲取模塊用于獲取第二設(shè)備所需的配置文件kickstart的模板包括:
所述第一設(shè)備獲取所述第二設(shè)備所需的操作系統(tǒng)類型;
從預(yù)先設(shè)置的kickstart模板庫(kù)中獲取所述操作系統(tǒng)類型對(duì)應(yīng)的kickstart的模板。
進(jìn)一步,所述裝置還包括:
連接模塊14,用于在將所述shell命令發(fā)送給所述第二設(shè)備之前,根據(jù)所述第二設(shè)備的ip地址、用戶名和密碼,基于安全外殼協(xié)議ssh與所述第二設(shè)備的建立連接。
如圖5所示,本實(shí)施例還提供一種操作系統(tǒng)配置文件的生成裝置,設(shè)置于第二設(shè)備,所述裝置包括:
接收模塊21,用于與第一設(shè)備建立連接后,獲取第一設(shè)備發(fā)送的命令行shell命令;其中,所述shell命令含有所述第二設(shè)備所需的配置文件kickstart的模板的內(nèi)容;
處理模塊22,用于執(zhí)行所述shell命令后生成kickstart文件。
進(jìn)一步,所述接收模塊21,還用于在獲取第一設(shè)備發(fā)送的命令行shell命令之前,基于安全外殼協(xié)議ssh與所述第一設(shè)備建立連接。
雖然本發(fā)明所揭露的實(shí)施方式如上,但所述的內(nèi)容僅為便于理解本發(fā)明而采用的實(shí)施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實(shí)施的形式及細(xì)節(jié)上進(jìn)行任何的修改與變化,但本發(fā)明的專利保護(hù)范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。