基于Linux命令維護Windows應(yīng)用軟件的方法
【專利摘要】本申請公開了一種基于Linux命令維護Windows應(yīng)用軟件的方法,包括:a、預(yù)先利用Cygwin工具構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包,并將所述基礎(chǔ)包配置到所有支持Windows系統(tǒng)的服務(wù)器上;b、當(dāng)需要進行應(yīng)用軟件更新時,應(yīng)用軟件管理服務(wù)器觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述profile文件進行加載;安裝有所述應(yīng)用軟件的服務(wù)器判斷進行更新的應(yīng)用軟件是否正在運行,如果是,則關(guān)閉所述應(yīng)用軟件;所述應(yīng)用軟件管理服務(wù)器將需要更新的所述應(yīng)用軟件更新至安裝有所述應(yīng)用軟件的服務(wù)器中。采用本發(fā)明可以降低軟件系統(tǒng)在服務(wù)器側(cè)的自動更新維護成本。
【專利說明】基于Linux命令維護Windows應(yīng)用軟件的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機網(wǎng)絡(luò)技術(shù),特別是涉及一種基于Linux命令維護Windows應(yīng)用軟件的方法。
【背景技術(shù)】
[0002]在計算機網(wǎng)絡(luò)系統(tǒng)中,當(dāng)一個應(yīng)用系統(tǒng)軟件進行更新后,需要將其更新到相應(yīng)的服務(wù)器中。一個應(yīng)用系統(tǒng)軟件通常會由多個子應(yīng)用系統(tǒng)構(gòu)成,不同的子應(yīng)用系統(tǒng)所基于實現(xiàn)的操作系統(tǒng)可能會不同,例如有的是基于Windows系統(tǒng)的,有的是基于Linux系統(tǒng)的。而目前對于基于某種操作系統(tǒng)的自動部署系統(tǒng),只能針對相應(yīng)的操作系統(tǒng)進行開發(fā),例如,Linux系統(tǒng)的自動部署系統(tǒng)只能運行在Linux系統(tǒng)下,而無法運行在Windows系統(tǒng)下。這樣,對于一個包含基于不同操作系統(tǒng)開發(fā)的子應(yīng)用系統(tǒng)的應(yīng)用系統(tǒng)軟件,就需要維護人員同時掌握多種操作系統(tǒng),才能實現(xiàn)對該應(yīng)用系統(tǒng)軟件的更新維護。
[0003]由此可見,現(xiàn)有的軟件系統(tǒng)在服務(wù)器側(cè)的自動更新維護對維護人員的要求高,相應(yīng)的維護成本也高。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明的主要目的在于提供一種基于Linux命令維護Windows應(yīng)用軟件的方法,該方法可以降低軟件系統(tǒng)在服務(wù)器側(cè)的自動更新維護成本。
[0005]為了達(dá)到上述目的,本發(fā)明提出的技術(shù)方案為:
[0006]一種基于Linux命令維護Windows應(yīng)用軟件的方法,其特征在于,包括:
[0007]a、預(yù)先利用Cygwin工具構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包,并將所述基礎(chǔ)包配置到所有支持Windows系統(tǒng)的服務(wù)器上;
[0008]b、當(dāng)需要進行應(yīng)用軟件更新時,應(yīng)用軟件管理服務(wù)器觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述profile文件進行加載;安裝有所述應(yīng)用軟件的服務(wù)器判斷進行更新的應(yīng)用軟件是否正在運行,如果是,則關(guān)閉所述應(yīng)用軟件;所述應(yīng)用軟件管理服務(wù)器將需要更新的所述應(yīng)用軟件更新至安裝有所述應(yīng)用軟件的服務(wù)器中。
[0009]綜上所述,本發(fā)明提出的基于Linux命令維護Windows應(yīng)用軟件的方法,預(yù)先構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包,然后在Windows系統(tǒng)中加載該基礎(chǔ)包,如此,可以使得系統(tǒng)維護人員不需要掌握Windows系統(tǒng)命令,即可利用Linux命令實現(xiàn)對Windows應(yīng)用軟件的更新維護,從而可以降低對系統(tǒng)維護人員的要求,降低應(yīng)用軟件的更新維護成本。
【專利附圖】
【附圖說明】
[0010]圖1為本發(fā)明實施例一的流程示意圖。
【具體實施方式】
[0011]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例對本發(fā)明作進一步地詳細(xì)描述。
[0012]本發(fā)明的核心思想是:預(yù)先利用Cygwin工具構(gòu)建一個用于模擬Linux環(huán)境的基礎(chǔ)包,然后在Windows系統(tǒng)中加載該基礎(chǔ)包,以實現(xiàn)Windows系統(tǒng)下對Linux環(huán)境的模擬,從而使得系統(tǒng)維護人員不需要掌握Windows系統(tǒng)命令,即可利用Linux命令實現(xiàn)對Windows應(yīng)用軟件的更新維護,進而可以降低對系統(tǒng)維護人員的要求,降低應(yīng)用軟件的更新維護成本。
[0013]圖1為本發(fā)明實施例一的流程示意圖,如圖1所示,該實施例主要包括:
[0014]步驟101、預(yù)先利用Cygwin工具構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包,并將所述基礎(chǔ)包配置到所有支持Windows系統(tǒng)的服務(wù)器上。
[0015]本步驟中需要建立一個用于模擬Linux環(huán)境的基礎(chǔ)包,利用該基礎(chǔ)包可以實現(xiàn)在Windows系統(tǒng)中對Linux環(huán)境的模擬,以便可以在Windows系統(tǒng)中直接運行Linux命令,如此,可以確保維護人員不需要掌握Windows系統(tǒng)命令即可利用Linux命令實現(xiàn)對Windows應(yīng)用軟件的更新維護。
[0016]較佳地,本步驟中可以采用下述步驟構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包:
[0017]步驟1011、利用Cygwin工具將Linux服務(wù)器管理的基礎(chǔ)命令安裝在Windows操作系統(tǒng)下。
[0018]本步驟中,Linux服務(wù)器管理的基礎(chǔ)命令的具體內(nèi)容為本領(lǐng)域人員所掌握,在此不再贅述。
[0019]這里需要說明的是,Cygwin是一個工具包,用于讓W(xué)indows環(huán)境可以執(zhí)行Linux下的命令,提供Linux API的功能;讓Linux下的程序源碼在Cygwin環(huán)境下編譯后可以在Windows系統(tǒng)運行。
[0020]步驟1012、在所述Cygwin的安裝目錄下的etc目錄下的profile文件中,增加用于將編碼方式修改為Windows系統(tǒng)所支持的編碼方式的命令。
[0021]這里需要說明的是,所述profile為應(yīng)用配置文件,通過在其中添加命令可以實現(xiàn)Linux運行環(huán)境的模擬。
[0022]Cygwin工具中默認(rèn)的編碼是utf-8編碼,windows中文一般是GBK編碼,為了解決多系統(tǒng)的亂碼問題,本步驟需要將編碼修改為zh_CN.GBK。具體可以采用下述命令組合實現(xiàn):
[0023]export LC_ALL=zh_CN.GBK
[0024]export LC_CTYPE=zh_CN.GBK
[0025]export LANG=zh_CN.GBK
[0026]export 0UTPUT_CHARSET=GBK
[0027]步驟1013、在所述profile文件中,增加用于將Windows系統(tǒng)的應(yīng)用文件所在目錄轉(zhuǎn)化為所述Cygwin安裝目錄下的程序可以訪問的目錄的命令。
[0028]本步驟用于確保Cygwin安裝目錄下的程序可以訪問Windows系統(tǒng)的應(yīng)用文件,以實現(xiàn)Linux環(huán)境的模擬。
[0029]本步驟的具體實現(xiàn)為本領(lǐng)域技術(shù)人員所掌握,在此不再贅述。
[0030]步驟1014、在所述profile文件中,增加用于添加Windows系統(tǒng)的用戶和組信息的命令。[0031]本步驟,用于使Cygwin安裝目錄下的程序可以訪問Windows系統(tǒng)的用戶和組。
[0032]用于添加Windows系統(tǒng)的用戶和組信息的具體命令,為本領(lǐng)域技術(shù)人員所掌握,在此不再贅述。
[0033]基于上述步驟得到所述基礎(chǔ)包后,需要在所有支持Windows系統(tǒng)的服務(wù)器上安裝該基礎(chǔ)包,也就是將上述Cygwin安裝目錄下的所有內(nèi)容配置到所有支持Windows系統(tǒng)的服務(wù)器上。
[0034]步驟102、當(dāng)需要進行應(yīng)用軟件更新時,應(yīng)用軟件管理服務(wù)器觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述profile文件進行加載;安裝有所述應(yīng)用軟件的服務(wù)器判斷進行更新的應(yīng)用軟件是否正在運行,如果是,則關(guān)閉所述應(yīng)用軟件;所述應(yīng)用軟件管理服務(wù)器觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述應(yīng)用軟件進行更新。
[0035]較佳地,觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述profile文件進行加載的具體方法可以為:
[0036]當(dāng)需要進行應(yīng)用軟件更新時,應(yīng)用軟件管理服務(wù)器向安裝有所述應(yīng)用軟件的服務(wù)器,發(fā)送對所述profile文件進行加載的消息;
[0037]各所述服務(wù)器中預(yù)設(shè)的代理程序監(jiān)聽到所述消息后,執(zhí)行用于加裁所述profile文件的命令。
[0038]具體的,用于加載etc目錄下的所述profile文件的命令可以為:bash-l-C命令。
[0039]較佳地,所述應(yīng)用軟件管理服務(wù)器通過觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器執(zhí)行Rsync命令,將需要更新的所述應(yīng)用軟件更新至安裝有所述應(yīng)用軟件的服務(wù)器中。所述Rsync命令只傳輸差異部分,因此可以減少文件在網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)量。
[0040]綜上所述,以上僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
【權(quán)利要求】
1.一種基于Linux命令維護Windows應(yīng)用軟件的方法,其特征在于,包括: a、預(yù)先利用Cygwin工具構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包,并將所述基礎(chǔ)包配置到所有支持Windows系統(tǒng)的服務(wù)器上; b、當(dāng)需要進行應(yīng)用軟件更新時,應(yīng)用軟件管理服務(wù)器觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述profile文件進行加載;安裝有所述應(yīng)用軟件的服務(wù)器判斷進行更新的應(yīng)用軟件是否正在運行,如果是,則關(guān)閉所述應(yīng)用軟件;所述應(yīng)用軟件管理服務(wù)器將需要更新的所述應(yīng)用軟件更新至安裝有所述應(yīng)用軟件的服務(wù)器中。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟a中所述構(gòu)建用于模擬Linux環(huán)境的基礎(chǔ)包包括: 利用Cygwin工具將Linux服務(wù)器管理的基礎(chǔ)命令安裝在Windows操作系統(tǒng)下; 在所述Cygwin的安裝目錄下的etc目錄下的profile文件中,增加用于將編碼方式修改為Windows系統(tǒng)所支持的編碼方式的命令; 在所述profile文件中,增加用于將Windows系統(tǒng)的應(yīng)用文件所在目錄轉(zhuǎn)化為所述Cygwin安裝目錄下的程序可以訪問的目錄的命令; 在所述profile文件中,增加用于添加Windows系統(tǒng)的用戶和組信息的命令。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟b中所述觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器對所述profile文件進行加載包括: 當(dāng)需要進行應(yīng)用軟件更新時,應(yīng)用軟件管理服務(wù)器向安裝有所述應(yīng)用軟件的服務(wù)器,發(fā)送對所述profile文件進行加載的消息; 各所述服務(wù)器中預(yù)設(shè)的代理程序監(jiān)聽到所述消息后,執(zhí)行用于加載所述profile文件的命令。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述加載所述profile文件的命令為:bash-1-c 命令。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟b中所述應(yīng)用軟件管理服務(wù)器通過觸發(fā)安裝有所述應(yīng)用軟件的服務(wù)器執(zhí)行Rsync命令完成所述更新。
【文檔編號】G06F9/445GK103838611SQ201410110869
【公開日】2014年6月4日 申請日期:2014年3月24日 優(yōu)先權(quán)日:2014年3月24日
【發(fā)明者】張銀全, 陳福洪, 彭定邦 申請人:北京京東尚科信息技術(shù)有限公司, 北京京東世紀(jì)貿(mào)易有限公司