亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

鏡像文件轉(zhuǎn)換方法及裝置與流程

文檔序號:11635366閱讀:771來源:國知局
鏡像文件轉(zhuǎn)換方法及裝置與流程
本公開實施例涉及虛擬化
技術(shù)領(lǐng)域
,特別涉及一種鏡像文件轉(zhuǎn)換方法及裝置。
背景技術(shù)
:當虛擬機在兩個不同的平臺中批量遷移時,比如在將虛擬機從原始平臺批量遷移至目標平臺時,需要將一臺已經(jīng)在原始平臺中部署好的虛擬機導出為鏡像文件,再將該鏡像文件導入至目標平臺中,從而使用導入的鏡像文件批量創(chuàng)建目標平臺中的虛擬機。其中,虛擬機的鏡像文件是創(chuàng)建虛擬機的模板。通常情況下,由于原始平臺和目標平臺使用的驅(qū)動程序不同,和/或,原始平臺和目標平臺所支持的文件格式不同,從原始平臺導出的原始鏡像文件并不能在目標平臺中正常使用。在現(xiàn)有技術(shù)中,需要在將原始鏡像文件啟動為原始虛擬機的情況下,手動卸載原始虛擬機的驅(qū)動程序,將目標平臺的驅(qū)動程序?qū)懭朐继摂M機,將原始虛擬機以原始平臺的文件格式導出為原始鏡像文件;然后軟件工程師通過鏡像文件格式轉(zhuǎn)換工具將原始鏡像文件的文件格式轉(zhuǎn)換為目標文件格式,使用具有目標文件格式的原始鏡像文件在目標平臺中創(chuàng)建虛擬機,在該虛擬機中對已經(jīng)寫入的目標驅(qū)動程序進行安裝,從而得到目標平臺中的目標虛擬機。進一步的,將該目標虛擬機導出為目標鏡像文件,使用該目標鏡像文件在目標平臺中批量創(chuàng)建目標虛擬機。由于在將原始鏡像文件轉(zhuǎn)換為目標鏡像文件時,需要在將原始鏡像文件啟動為虛擬機的情況下完成,消耗的資源較多且轉(zhuǎn)換效率較低。技術(shù)實現(xiàn)要素:為了解決在對原始鏡像文件進行轉(zhuǎn)換時,需要將原始鏡像文件啟動為虛擬機而導致的鏡像文件轉(zhuǎn)換效率較低以及消耗硬件資源較多的問題,本發(fā)明實施例提供了一種鏡像文件轉(zhuǎn)換方法及裝置。所述技術(shù)方案如下:第一方面,提供了一種鏡像文件轉(zhuǎn)換方法,該方法包括:獲取虛擬機在原始平臺中的原始鏡像文件;檢測原始鏡像文件是否具備與目標平臺對應的第一文件特征和第二文件特征,第一文件特征包括:虛擬機在目標平臺中運行時使用的目標驅(qū)動程序,第二文件特征包括:目標平臺支持的目標文件格式;當原始鏡像文件不具備第一文件特征和第二文件特征中的至少一種文件特征時,通過調(diào)用預定接口對原始鏡像文件進行修改,得到虛擬機在目標平臺中的目標鏡像文件,目標鏡像文件具備第一文件特征和第二文件特征。在該實施方式中,轉(zhuǎn)換服務器在檢測到原始鏡像文件不具備與目標平臺對應的至少一個文件特征時,表示該原始鏡像文件無法直接在目標平臺中使用,此時轉(zhuǎn)換服務器通過調(diào)用預定接口直接對原始鏡像文件進行修改,就能轉(zhuǎn)換得到虛擬機在目標平臺中的目標鏡像文件,使虛擬機在目標平臺中正常運行,而不需要將原始鏡像文件啟動為虛擬機后再進行修改,節(jié)約了資源,提高了鏡像文件轉(zhuǎn)換時的效率。在第一方面的第一種可能的實施方式中,當原始鏡像文件不具備第一文件特征和第二文件特征中的至少一種文件特征時,通過調(diào)用預定接口對原始鏡像文件進行修改,包括:當原始鏡像文件不具備第一文件特征時,通過調(diào)用第一預定接口將原始鏡像文件中的原始驅(qū)動程序替換為目標驅(qū)動程序。結(jié)合第一方面的第一種可能的實施方式,在第一方面的第二種可能的實施方式中,通過調(diào)用第一預定接口將原始鏡像文件中的原始驅(qū)動程序替換為目標驅(qū)動程序,包括:根據(jù)原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型確定原始鏡像文件中的驅(qū)動目錄,驅(qū)動目錄是具有操作系統(tǒng)類型的操作系統(tǒng)的驅(qū)動程序所在的默認目錄;通過調(diào)用第一預定接口將驅(qū)動目錄下的原始驅(qū)動程序替換為目標驅(qū)動程序。在該可選的實施方式中,轉(zhuǎn)換服務器在檢測到原始鏡像文件中的原始驅(qū)動程序不是虛擬機在目標平臺中運行時使用的目標驅(qū)動程序時,自動根據(jù)目標驅(qū)動程序修改原始鏡像文件中的原始驅(qū)動程序,而不需要由專門的工程師手動修改原始驅(qū)動程序,提高了鏡像文件轉(zhuǎn)換時的效率,也減少了人工操作過程中出錯的機會。結(jié)合第一方面、第一方面的第一種可能的實施方式以及第一方面的第二種可能的實施方式中的任意一種可能的實施方式,在第一方面的第三種可能的實施方式中,檢測原始鏡像文件是否具備與目標平臺對應的第一文件特征,包括:通過調(diào)用第一預定接口訪問原始鏡像文件確定原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型;確定與操作系統(tǒng)類型和目標平臺對應的目標驅(qū)動程序;檢測原始驅(qū)動程序是否與目標驅(qū)動程序相同;當原始驅(qū)動程序與目標驅(qū)動程序不同時,確定原始鏡像文件不具備第一文件特征。在該可選的實施方式中,轉(zhuǎn)換服務器自動識別原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型,而不需要由用戶手動輸入操作系統(tǒng)類型,避免用戶手動輸入的操作系統(tǒng)類型錯誤而導致鏡像文件轉(zhuǎn)換錯誤。結(jié)合第一方面,在第一方面的第四種可能的實施方式中,當原始鏡像文件不具備第一文件特征和第二文件特征中的至少一種文件特征時,通過調(diào)用預定接口對原始鏡像文件進行修改,包括:當原始鏡像文件不具備第二文件特征時,通過調(diào)用第二預定接口將原始鏡像文件的原始文件格式修改為目標文件格式。在該可選的實施方式中,轉(zhuǎn)換服務器在檢測到原始鏡像文件的原始文件格式不是目標平臺支持的目標文件格式時,自動根據(jù)目標文件格式修改原始鏡像文件的原始文件格式,而不需要由專門的工程師手動修改原始文件格式,提高了鏡像文件轉(zhuǎn)換時的效率,也減少了人工操作過程中出錯的機會。結(jié)合第一方面的第四種可能的實施方式,在第一方面的第五種可能的實施方式中,檢測原始鏡像文件是否具備與目標平臺對應的第二文件特征,包括:確定目標平臺支持的目標文件格式;檢測原始文件格式是否與目標文件格式相同;當原始文件格式與目標文件格式不同時,確定原始鏡像文件不具備第二文件特征。結(jié)合第一方面,在第一方面的第六種可能的實施方式中,獲取虛擬機在原始平臺中的原始鏡像文件,包括:從鏡像庫中獲取原始鏡像文件,鏡像庫用于存儲用戶上傳的鏡像文件。第二方面,提供一種鏡像文件轉(zhuǎn)換裝置,該裝置包括至少一個單元,該裝置中的至少一個單元用于實現(xiàn)上述第一方面所提供的鏡像文件轉(zhuǎn)換方法。第三方面,提供一種轉(zhuǎn)換服務器,該轉(zhuǎn)換服務器包括:處理器,以及與處理器相連的存儲器。存儲器用于存儲一個或者一個以上的指令,該指令被指示為由處理器執(zhí)行,處理器用于實現(xiàn)上述第一方面所提供的鏡像文件轉(zhuǎn)換方法。附圖說明圖1是本發(fā)明一個示例性實施例提供的鏡像文件轉(zhuǎn)換系統(tǒng)的結(jié)構(gòu)示意圖;圖2是本發(fā)明另一個示例性實施例提供的鏡像文件轉(zhuǎn)換系統(tǒng)的結(jié)構(gòu)示意圖;圖3是本發(fā)明一個示例性實施例提供的鏡像文件轉(zhuǎn)換方法的流程圖;圖4是本發(fā)明另一個示例性實施例提供的鏡像文件轉(zhuǎn)換方法的流程圖;圖5是本發(fā)明另一個示例性實施例提供的鏡像文件轉(zhuǎn)換方法的流程圖;圖6是本發(fā)明另一個示例性實施例提供的鏡像文件轉(zhuǎn)換方法的流程圖;圖7是本發(fā)明一個示例性實施例提供的轉(zhuǎn)換服務器的結(jié)構(gòu)示意圖;圖8是本發(fā)明一個示例性實施例提供的鏡像文件轉(zhuǎn)換裝置的框圖。具體實施方式為使本公開的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本公開實施方式作進一步地詳細描述。在本文中提及的“多個”是指兩個或兩個以上。“和/或”,描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,a和/或b,可以表示:單獨存在a,同時存在a和b,單獨存在b這三種情況。符號“/”一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。請參考圖1,其示出了本發(fā)明一示例性實施例提供的鏡像文件轉(zhuǎn)換系統(tǒng)的結(jié)構(gòu)示意圖,該系統(tǒng)包括:終端設(shè)備120和轉(zhuǎn)換服務器140。終端設(shè)備120是諸如手機、平板電腦、電子書閱讀器、mp3播放器(movingpictureexpertsgroupaudiolayeriii,動態(tài)影像專家壓縮標準音頻層面3)、mp4(movingpictureexpertsgroupaudiolayeriv,動態(tài)影像專家壓縮標準音頻層面4)播放器、臺式計算機和便攜式計算機之類的電子設(shè)備。終端設(shè)備120通過無線網(wǎng)絡方式或者有線網(wǎng)絡方式與轉(zhuǎn)換服務器140建立通信連接。終端設(shè)備120用于向轉(zhuǎn)換服務器140發(fā)送鏡像文件轉(zhuǎn)換請求,請求轉(zhuǎn)換服務器140對鏡像文件進行轉(zhuǎn)換,轉(zhuǎn)換服務器140用于根據(jù)鏡像文件轉(zhuǎn)換請求對鏡像文件執(zhí)行轉(zhuǎn)換操作,并將轉(zhuǎn)換后的鏡像文件返回給終端設(shè)備120。轉(zhuǎn)換服務器140是一臺服務器,或者是由若干臺服務器組成的服務器集群,或者是一個云計算服務中心。在實際實現(xiàn)時,轉(zhuǎn)換服務器140是物理機、虛擬機、物理機集群或者虛擬機集群。由于轉(zhuǎn)換服務器140對鏡像文件進行轉(zhuǎn)換所需的時間較長,為了更好地響應終端設(shè)備120的請求,則可選的,該系統(tǒng)還包括:通信服務器160,如圖2所示。通信服務器160用于接收終端設(shè)備120的鏡像文件轉(zhuǎn)換請求,并將鏡像文件轉(zhuǎn)換請求轉(zhuǎn)發(fā)至轉(zhuǎn)換服務器140。通信服務器160是一臺服務器,或者是由若干臺服務器組成的服務器集群,或者是一個云計算服務中心。在實際實現(xiàn)時,通信服務器160是物理機、虛擬機、物理機集群或者虛擬機集群。通信服務器160通過無線網(wǎng)絡方式或者有線網(wǎng)絡方式與轉(zhuǎn)換服務器140建立通信連接。在實際實現(xiàn)時,通常情況下終端設(shè)備120向轉(zhuǎn)換服務器140請求轉(zhuǎn)換的鏡像文件不會是實時發(fā)送至轉(zhuǎn)換服務器140的,可選的,該系統(tǒng)中還包括:鏡像庫180,如圖2所示。鏡像庫180用于存儲用戶上傳的鏡像文件,則轉(zhuǎn)換服務器140在需要對某一鏡像文件進行轉(zhuǎn)換時,直接從鏡像庫180中獲取該鏡像文件,則轉(zhuǎn)換服務器140將轉(zhuǎn)換后的鏡像文件返回給終端設(shè)備120或者返回至鏡像庫180中。由于鏡像文件的文件大小通常較大,可選地,鏡像庫180是具有較強的存儲能力和存儲可靠性的設(shè)備,可選的,鏡像庫180是基于對象存儲服務(objectstorageservice)的存儲設(shè)備,可選的,鏡像庫180是對象存儲系統(tǒng)(objectstoragesystem),則鏡像庫180通過有線網(wǎng)絡或者無線網(wǎng)絡的方式與轉(zhuǎn)換服務器140建立通信連接。鏡像庫180中包括大量用于存儲數(shù)據(jù)的存儲單元,在對象存儲系統(tǒng)中,存儲單元為對象(object)181,對象181用于存儲鏡像文件??蛇x的,鏡像庫180可被替代實現(xiàn)為基于文件存儲的存儲設(shè)備,可選的,鏡像庫180是網(wǎng)絡附屬存儲(networkattachedstorage,nas),則鏡像庫180通過以太網(wǎng)與轉(zhuǎn)換服務器140相連。nas中的存儲單元為諸如磁盤和磁盤陣列之類的存儲介質(zhì)??蛇x的,鏡像庫180可被替代實現(xiàn)為轉(zhuǎn)換服務器140的本地存儲,則鏡像庫180與轉(zhuǎn)換服務器140之間通過輸入/輸出(i/o)接口相連。本地存儲中的存儲單元為諸如磁盤和磁盤陣列之類的存儲介質(zhì)??蛇x的,鏡像庫180可被替代實現(xiàn)為針對共享塊存儲的存儲區(qū)域網(wǎng)絡(storageareanetwork,san),則鏡像庫180與轉(zhuǎn)換服務器140之間通過光纖通道(fibrechannel,fc)相連。san中的存儲單元為諸如磁盤和磁盤陣列之類的存儲介質(zhì)。請參考圖3,其示出了本公開一個示例性實施例提供的鏡像文件轉(zhuǎn)換方法的流程圖,本實施例以該方法應用于圖1或圖2所示的轉(zhuǎn)換服務器中進行舉例說明,該方法包括:步驟301,轉(zhuǎn)換服務器獲取虛擬機在原始平臺中的原始鏡像文件。虛擬機是通過軟件模擬的具有完整硬件系統(tǒng)功能的虛擬的計算機系統(tǒng),虛擬機運行在某一個平臺中,平臺是用于為虛擬機提供運行環(huán)境和運行資源的計算機系統(tǒng),平臺為虛擬機提供的運行資源包括實例和內(nèi)存等??蛇x的,平臺包括數(shù)據(jù)中心和云平臺中的至少一種,云平臺包括公有云平臺和私有云平臺中的至少一種。比如,虛擬機運行于hadoop云平臺。虛擬機的鏡像文件中包括虛擬機的操作系統(tǒng)、各類應用程序以及虛擬機運行時必要的配置信息,在本發(fā)明實施例中,配置信息包括虛擬機在該平臺中運行時使用的驅(qū)動程序,則原始鏡像文件中的配置信息包括的是虛擬機在原始平臺中運行時使用的驅(qū)動程序。步驟302,轉(zhuǎn)換服務器檢測原始鏡像文件是否具備與目標平臺對應的第一文件特征和第二文件特征。其中,第一文件特征包括:虛擬機在目標平臺中運行時使用的目標驅(qū)動程序,第二文件特征包括:目標平臺支持的目標文件格式。步驟303,當原始鏡像文件不具備第一文件特征和第二文件特征中的至少一種文件特征時,轉(zhuǎn)換服務器通過調(diào)用預定接口對原始鏡像文件進行修改,得到虛擬機在目標平臺中的目標鏡像文件,目標鏡像文件具備第一文件特征和第二文件特征。原始平臺和目標平臺是不同的云平臺,具體的,同一個虛擬機在原始平臺和目標平臺中運行時使用的驅(qū)動程序不同,和/或,原始平臺和目標平臺支持的文件格式不同。在本發(fā)明各個實施例中,原始平臺是傳統(tǒng)的數(shù)據(jù)中心,目標平臺是諸如公有云平臺和私有云平臺之類的云平臺;或者,原始平臺和目標平臺是不同的云平臺。原始平臺和目標平臺是不同的云平臺包括:原始平臺和目標平臺所屬的云平臺的類型不同,比如,原始平臺是私有云平臺,目標平臺是公有云平臺;或者,原始平臺和目標平臺是同一類型的不同商家開發(fā)的云平臺,比如,原始平臺是商家a開發(fā)的公有云平臺,目標平臺是商家b開發(fā)的公有云平臺。綜上所述,本發(fā)明實施例提供的鏡像文件轉(zhuǎn)換方法,轉(zhuǎn)換服務器在檢測到原始鏡像文件不具備與目標平臺對應的至少一個文件特征時,表示該原始鏡像文件無法直接在目標平臺中使用,此時轉(zhuǎn)換服務器通過調(diào)用預定接口直接對原始鏡像文件進行修改,就能轉(zhuǎn)換得到虛擬機在目標平臺中的目標鏡像文件,使虛擬機在目標平臺中正常運行,而不需要將原始鏡像文件啟動為虛擬機后再進行修改,節(jié)約了資源,提高了鏡像文件轉(zhuǎn)換時的效率。請參考圖4,其示出了本公開一個示例性實施例提供的鏡像文件轉(zhuǎn)換方法的流程圖,本實施例以該方法應用于圖1或圖2所示的轉(zhuǎn)換服務器中,且原始鏡像文件不具備第一文件特征和第二文件特征為例進行舉例說明,該方法包括:步驟401,轉(zhuǎn)換服務器接收終端設(shè)備發(fā)送的鏡像文件轉(zhuǎn)換請求。可選的,轉(zhuǎn)換服務器直接接收終端設(shè)備發(fā)送的鏡像文件轉(zhuǎn)換請求,如圖1所示;或者,接收通信服務器轉(zhuǎn)發(fā)的鏡像文件轉(zhuǎn)換請求,如圖2所示。步驟402,轉(zhuǎn)換服務器根據(jù)鏡像文件轉(zhuǎn)換請求獲取虛擬機在原始平臺中的原始鏡像文件。當該方法應用于圖1或圖2所示的系統(tǒng)中時,可選的,鏡像文件轉(zhuǎn)換請求中包括原始鏡像文件,轉(zhuǎn)換服務器獲取鏡像文件轉(zhuǎn)換請求中的原始鏡像文件。當該方法應用于圖2所示的系統(tǒng)中時,可選的,鏡像文件轉(zhuǎn)換請求中包括原始鏡像文件的文件標識,轉(zhuǎn)換服務器根據(jù)文件標識從鏡像庫中獲取原始鏡像文件??蛇x的,文件標識是原始鏡像文件的文件名,則鏡像庫中存儲有文件名與鏡像文件的對應關(guān)系??紤]到在實際實現(xiàn)時,鏡像文件的文件名可能存在重復,因此,文件標識還可選包括與原始鏡像文件對應的用戶標識,用戶標識是將該原始鏡像文件存儲至鏡像庫的用戶的用戶標識,則鏡像庫中存儲有文件名、用戶標識與鏡像文件的對應關(guān)系。可選的,用戶標識是用戶帳號。在實際實現(xiàn)時,用戶在終端設(shè)備中登錄用戶帳號后,通過終端設(shè)備將原始鏡像文件存儲至鏡像庫,則鏡像庫中存儲有“用戶帳號+原始鏡像文件的文件名”與原始鏡像文件的對應關(guān)系;當用戶請求對該原始鏡像文件進行轉(zhuǎn)換時,用戶登錄用戶帳號,并向轉(zhuǎn)換服務器發(fā)送鏡像文件轉(zhuǎn)換請求,鏡像文件轉(zhuǎn)換請求中攜帶有用戶登錄的用戶帳號,以及用戶請求轉(zhuǎn)換的原始鏡像文件的文件名。比如,用戶在終端設(shè)備中登錄用戶帳號a,并通過終端設(shè)備預先將文件名b的原始鏡像文件m存儲至鏡像庫中,則鏡像庫中存儲有“用戶帳號a+文件名b”與原始鏡像文件m的對應關(guān)系;當用戶登錄用戶帳號a并請求對文件名b的鏡像文件進行轉(zhuǎn)換時,轉(zhuǎn)換服務器接收到的鏡像文件轉(zhuǎn)換請求中包括有用戶帳號a和文件名b,則轉(zhuǎn)換服務器從鏡像庫中獲取原始鏡像文件m。步驟403,轉(zhuǎn)換服務器通過調(diào)用第一預定接口訪問原始鏡像文件確定原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型??蛇x的,本發(fā)明實施例中的操作系統(tǒng)類型用于指示操作系統(tǒng)所屬的操作系統(tǒng)系列,比如,操作系統(tǒng)類型是windows。則可選的,同一個操作系統(tǒng)系列中的不同系統(tǒng)版本的操作系統(tǒng)對應的操作系統(tǒng)類型相同,比如,windows7操作系統(tǒng)和window10操作系統(tǒng)對應的操作系統(tǒng)類型都為windows。可選的,本發(fā)明實施例中的操作系統(tǒng)類型用于指示操作系統(tǒng)所屬的操作系統(tǒng)系列和系統(tǒng)版本,比如,操作系統(tǒng)類型是linuxsuse。則可選的,同一個操作系統(tǒng)系列中的不同系統(tǒng)版本的操作系統(tǒng)具有各自對應的操作系統(tǒng)類型,不同系統(tǒng)版本的操作系統(tǒng)對應的操作系統(tǒng)類型不同,比如,linuxsuse操作系統(tǒng)對應的操作系統(tǒng)類型為linuxsuse,linuxubuntu操作系統(tǒng)對應的操作系統(tǒng)類型為linuxubuntu,兩個操作系統(tǒng)類型不同。本發(fā)明實施例以操作系統(tǒng)類型用于指示操作系統(tǒng)所屬的操作系統(tǒng)系列為例進行說明。通常情況下,相同類型的操作系統(tǒng)的操作系統(tǒng)信息都是存儲在相同的默認目錄下,不同類型的操作系統(tǒng)中用于存儲操作系統(tǒng)信息的默認目錄不同。比如,linux系列的操作系統(tǒng)中,操作系統(tǒng)信息存儲在/etc/release下;windows系列的操作系統(tǒng)中,操作系統(tǒng)信息存儲在windows系統(tǒng)的注冊表hkey_local_machine\software\microsoft\windowsnt\currentversion下,且windows系列的操作系統(tǒng)中不包括/etc/release這一目錄。轉(zhuǎn)換服務器通過調(diào)用第一預定接口在不將鏡像文件啟動為虛擬機的情況下,直接訪問原始鏡像文件中的內(nèi)容,確定操作系統(tǒng)類型??蛇x的,轉(zhuǎn)換服務器中安裝有l(wèi)ibguestfs工具集,第一預定接口包括libguestfs工具集中包含的工具對應的接口。其中,libguestfs工具集是一組應用程序編程接口(applicationprogramminginterface,api),該工具集內(nèi)包含的工具有virt-cat、virt-df、virt-ls、virt-copy-in、virt-copy-out、virt-edit、guestfs、guestmount、virt-list-filesystems和virt-list-partitions等??蛇x的,第一預定接口還包括chntpw工具對應的接口,chntpw工具用于修改windows系列的操作系統(tǒng)的系統(tǒng)密碼以讀取操作系統(tǒng)的注冊表。在實際實現(xiàn)時,轉(zhuǎn)換服務器在確定操作系統(tǒng)類型之前,先通過調(diào)用guestmount工具對應的接口將原始鏡像文件掛載到轉(zhuǎn)換服務器上,以便轉(zhuǎn)換服務器對原始鏡像文件進行訪問和處理??蛇x的,轉(zhuǎn)換服務器中存儲有操作系統(tǒng)類型與操作系統(tǒng)目錄的對應關(guān)系,操作系統(tǒng)目錄是用于存儲操作系統(tǒng)信息的默認目錄。轉(zhuǎn)換服務器在通過調(diào)用第一預定接口訪問原始鏡像文件確定操作系統(tǒng)類型時,包括如下兩種實現(xiàn)方式:在第一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器通過調(diào)用第一預定接口掃描原始鏡像文件中的各個目錄,當掃描到原始鏡像文件中包括與某一種操作系統(tǒng)類型對應的操作系統(tǒng)目錄時,確定操作系統(tǒng)類型是與該操作系統(tǒng)目錄對應的操作系統(tǒng)類型。比如,轉(zhuǎn)換服務器中存儲有操作系統(tǒng)類型linux與操作系統(tǒng)目錄/etc/release的對應關(guān)系,以及存儲有操作系統(tǒng)類型windows與操作系統(tǒng)目錄hkey_local_machine\software\microsoft\windowsnt\currentversion的對應關(guān)系。則當轉(zhuǎn)換服務器通過調(diào)用第一預定接口掃描到原始鏡像文件中包括/etc/release時,確定原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型是linux,在該例子中,第一預定接口是guestfs工具對應的接口。當轉(zhuǎn)換服務器通過調(diào)用第一預定接口掃描到原始鏡像文件中包括hkey_local_machine\software\microsoft\windowsnt\currentversion時,確定原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型是windows,在該例子中,第一預定接口是chntpw工具對應的接口。在第二種實現(xiàn)方式中,轉(zhuǎn)換服務器通過調(diào)用第一預定接口掃描原始鏡像文件中的各個目錄,當掃描到原始鏡像文件中包括與某一種操作系統(tǒng)類型對應的操作系統(tǒng)目錄時,讀取該操作系統(tǒng)目錄下存儲的操作系統(tǒng)信息,確定操作系統(tǒng)信息中包括的操作系統(tǒng)類型,操作系統(tǒng)信息還包括操作系統(tǒng)的版本號和操作系統(tǒng)位數(shù)等,本實施例對此不做贅述。比如,在上述示例性的例子中,轉(zhuǎn)換服務器在掃描到原始鏡像文件中包括/etc/release時,讀取該目錄下的操作系統(tǒng)信息,該操作系統(tǒng)信息中包括操作系統(tǒng)類型為linux。步驟404,轉(zhuǎn)換服務器確定與操作系統(tǒng)類型和目標平臺對應的目標驅(qū)動程序。可選的,對于在同一個目標平臺中運行的至少兩個虛擬機,當至少兩個虛擬機各自采用的操作系統(tǒng)的操作系統(tǒng)類型不同時,該至少兩個虛擬機在該目標平臺中運行時使用的目標驅(qū)動程序不同;對于采用相同的操作系統(tǒng)類型的至少兩個虛擬機來講,虛擬機在不同的目標平臺中運行時使用的目標驅(qū)動程序也不同。在一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器接收終端設(shè)備發(fā)送的目標平臺標識;或者,轉(zhuǎn)換服務器接收到的鏡像文件轉(zhuǎn)換請求中包括目標平臺標識,該目標平臺標識用于在各個平臺中唯一性地標識目標平臺。在該實現(xiàn)方式中,轉(zhuǎn)換服務器中存儲有操作系統(tǒng)類型、目標平臺標識和目標驅(qū)動程序的對應關(guān)系,則轉(zhuǎn)換服務器在識別得到操作系統(tǒng)類型,以及確定鏡像文件轉(zhuǎn)換請求中的目標平臺標識后,查詢與目標平臺和操作系統(tǒng)類型對應的目標驅(qū)動程序。比如,當操作系統(tǒng)類型用于指示操作系統(tǒng)所屬的操作系統(tǒng)系時,轉(zhuǎn)換服務器中存儲的操作系統(tǒng)類型、目標平臺標識和目標驅(qū)動程序的對應關(guān)系如下表一所示:表一在該示例性的例子中,當轉(zhuǎn)換服務器確定的原始鏡像文件的操作系統(tǒng)類型為linux,目標平臺標識為平臺標識1時,確定目標驅(qū)動程序為驅(qū)動程序1。表一所示的內(nèi)容和形式都是示例性的。在實際的實施例中,對于一組操作系統(tǒng)類型和目標平臺標識來講,目標驅(qū)動程序通常為多個,每個目標驅(qū)動程序?qū)粋€或一類型的硬件設(shè)備。再比如,當操作系統(tǒng)類型用于指示操作系統(tǒng)所屬的操作系統(tǒng)系列和系統(tǒng)版本時,轉(zhuǎn)換服務器中存儲的操作系統(tǒng)類型、目標平臺標識和目標驅(qū)動程序的對應關(guān)系可以如下表二所示:表二操作系統(tǒng)類型目標平臺標識目標驅(qū)動程序linuxsuse平臺標識1驅(qū)動程序1windows平臺標識1驅(qū)動程序2linuxubuntu平臺標識1驅(qū)動程序3在該示例性的例子中,當轉(zhuǎn)換服務器確定的原始鏡像文件的操作系統(tǒng)類型為linuxsuse,目標平臺標識為平臺標識1時,轉(zhuǎn)換服務器確定目標驅(qū)動程序為驅(qū)動程序1。表二所示的內(nèi)容和形式都是示例性的。在另一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器是與某一個默認的目標平臺對應的轉(zhuǎn)換服務器,則轉(zhuǎn)換服務器用于將原始鏡像文件轉(zhuǎn)換為該默認的目標平臺中的鏡像文件。在該實現(xiàn)方式中,由于目標平臺是確定的,則轉(zhuǎn)換服務器中存儲操作系統(tǒng)類型與目標驅(qū)動程序的對應關(guān)系,轉(zhuǎn)換服務器查詢確定得到的操作系統(tǒng)類型對應的目標驅(qū)動程序。步驟405,轉(zhuǎn)換服務器檢測原始驅(qū)動程序是否與目標驅(qū)動程序相同。通常情況下,不同類型的操作系統(tǒng)的驅(qū)動程序存儲在不同的驅(qū)動目錄下,而相同類型的操作系統(tǒng)的驅(qū)動程序存儲在相同的驅(qū)動目錄下,驅(qū)動目錄是具有操作系統(tǒng)類型的操作系統(tǒng)的驅(qū)動程序所在的默認目錄。比如,linux系列的操作系統(tǒng)中用于存儲驅(qū)動程序的驅(qū)動目錄為/opt/pvdriver;而windows系列的操作系統(tǒng)中用于存儲驅(qū)動程序的驅(qū)動目錄為c:\programfiles。轉(zhuǎn)換服務器中存儲有操作系統(tǒng)類型與驅(qū)動目錄的對應關(guān)系,則可選的,轉(zhuǎn)換服務器根據(jù)原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型確定原始鏡像文件中的驅(qū)動目錄。轉(zhuǎn)換服務器在確定原始鏡像文件中包括的操作系統(tǒng)的操作系統(tǒng)類型后,查詢該對應關(guān)系確定與操作系統(tǒng)類型對應的驅(qū)動目錄,原始鏡像文件中存儲在該驅(qū)動目錄下的文件即為原始驅(qū)動程序,轉(zhuǎn)換服務器檢測獲取到原始驅(qū)動程序與確定得到的目標驅(qū)動程序是否相同。比如,當轉(zhuǎn)換服務器確定操作系統(tǒng)類型是windows類型時,確定驅(qū)動目錄是c:\programfiles,獲取該驅(qū)動目錄下的文件即為原始驅(qū)動程序。步驟406,當原始驅(qū)動程序與目標驅(qū)動程序不同時,轉(zhuǎn)換服務器確定原始鏡像文件不具備第一文件特征。步驟407,當原始鏡像文件不具備第一文件特征時,轉(zhuǎn)換服務器通過調(diào)用第一預定接口將原始鏡像文件中的原始驅(qū)動程序替換為目標驅(qū)動程序。步驟407包括如下幾個步驟,如圖5所示:步驟501,轉(zhuǎn)換服務器根據(jù)原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型確定原始鏡像文件中的驅(qū)動目錄。在實際實現(xiàn)時,由于上述步驟405中,轉(zhuǎn)換服務器在檢測原始驅(qū)動程序與目標驅(qū)動程序是否相同時,也需要確定原始鏡像文件中的驅(qū)動目錄,則該步驟與上述步驟405中確定驅(qū)動目錄的步驟實現(xiàn)成為同一個步驟。步驟502,轉(zhuǎn)換服務器通過調(diào)用第一預定接口將驅(qū)動目錄下的原始驅(qū)動程序替換為目標驅(qū)動程序。具體的,轉(zhuǎn)換服務器調(diào)用第一預定接口將驅(qū)動目錄下的原始驅(qū)動程序刪除,并在該驅(qū)動目錄下寫入目標驅(qū)動程序,該第一預定接口的含義與上述步驟403中相同,本實施例對此不再贅述。在實際實現(xiàn)時,轉(zhuǎn)換服務器還可選的通過調(diào)用第一預定接口對原始鏡像文件中的其他文件進行讀取和/或刪減等操作,本實施對此不做限定。另外,在其他可選的實施方式中,若原始鏡像文件中包括索引文件,轉(zhuǎn)換服務器可選的不通過確定驅(qū)動目錄的方式修改原始驅(qū)動程序,而是根據(jù)索引文件進行修改。索引文件中包括原始鏡像文件中的各個文件的偏移量和占用字節(jié)數(shù),其中偏移量指的是該文件的起始字節(jié)位置在整個原始鏡像文件中的位置。比如,索引文件中包括原始驅(qū)動程序的偏移量為1000,占用字節(jié)數(shù)為2000,則表示原始驅(qū)動程序在原始鏡像文件中的第1000個字節(jié)開始的位置,占用2000個字節(jié)長度,也即原始鏡像文件中的第1000-2999字節(jié)之間的文件為原始驅(qū)動程序,則轉(zhuǎn)換服務器根據(jù)索引文件將第1000-2999字節(jié)的文件進行刪除,再將目標驅(qū)動程序?qū)懭胫恋?000-2999字節(jié)處,即實現(xiàn)了將原始驅(qū)動程序替換為目標驅(qū)動程序。當原始驅(qū)動程序與目標驅(qū)動程序相同,轉(zhuǎn)換服務器確定原始鏡像文件具備第一文件特征,此時在一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器直接執(zhí)行下列步驟408,本發(fā)明實施例對此不做限定。步驟408,轉(zhuǎn)換服務器確定目標平臺支持的目標文件格式。通常情況下,不同的平臺支持的文件格式是不同的,常見的鏡像文件的文件格式有raw(rawimage)格式、qcow(qemu(quickemulator)copy-on-write)格式、qcow2格式和vmdk(virtualmachinedisk)格式。在一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器用于將鏡像文件轉(zhuǎn)換為多個不同的平臺中的鏡像文件,則可選的轉(zhuǎn)換服務器中存儲有目標平臺標識與目標文件格式的對應關(guān)系。比如,存儲有目標平臺標識a標識的目標平臺支持raw格式,目標平臺標識b標識的目標平臺存儲qcow2格式。則轉(zhuǎn)換服務器查詢目標平臺標識與目標文件格式的對應關(guān)系確定與接收到的目標平臺標識對應的目標文件格式。在另一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器是與某一個默認的平臺對應的轉(zhuǎn)換服務器,則通常情況下目標文件格式是預先設(shè)定好的,即為該默認的平臺支持的文件格式,轉(zhuǎn)換服務器直接確定預先設(shè)定好的目標文件格式。步驟409,轉(zhuǎn)換服務器檢測原始鏡像文件的原始文件格式是否與目標文件格式相同。步驟410,當原始文件格式與目標文件格式不同時,轉(zhuǎn)換服務器確定原始鏡像文件不具備第二文件特征。步驟411,當原始鏡像文件不具備第二文件特征時,轉(zhuǎn)換服務器通過調(diào)用第二預定接口將原始鏡像文件的原始文件格式修改為目標文件格式,得到虛擬機在目標平臺中的目標鏡像文件??蛇x的,轉(zhuǎn)換服務器中安裝有qemu-img命令行工具,第二預定接口是qemu-img命令行工具對應的接口。其中,qemu-img命令行工具是快速虛擬機(qemu)的磁盤管理工具,轉(zhuǎn)換服務器通過qemu-img命令行工具中的convert命令將原始鏡像文件的原始文件格式修改為目標文件格式。第二預定接口還可選的是imagecopy工具對應的接口,本發(fā)明實施例僅以第二預定接口是qemu-img命令行工具對應的接口為例進行說明。轉(zhuǎn)換服務器在通過調(diào)用第二預定接口修改原始文件格式時常用的命令行為:convert[-c][-ffmt][-ooutput_fmt][-ooptions]filename[filename2[…]]output_filename,該命令行表示將原始文件格式為fmt格式的鏡像文件修改為目標文件格式為output_fmt格式的鏡像文件。該命令行中的-c命令表示對修改后的具有目標文件格式的鏡像文件壓縮;參數(shù)filename表示具有原始文件格式的鏡像文件的文件名;參數(shù)output_filename表示具有目標文件格式的鏡像文件的文件名;參數(shù)options表示在修改原始文件格式時所使用的其他參數(shù),本實施例對此不作贅述。當原始文件格式與目標文件格式相同時,在一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器直接確定包括目標驅(qū)動程序的原始鏡像文件即為虛擬機在目標平臺中的目標鏡像文件,本發(fā)明實施例對此不做限定。需要說明的是,當原始鏡像文件不具備第一文件特征和第二文件特征時,也即轉(zhuǎn)換服務器需要對原始鏡像文件中的原始驅(qū)動程序以及原始鏡像文件的原始文件格式進行修改時,為了避免對原始鏡像文件的原始文件格式修改后,無法正確找到原始鏡像文件中的驅(qū)動目錄,因此在實際實現(xiàn)時,轉(zhuǎn)換服務器通常是先對原始驅(qū)動程序進行修改,再對原始文件格式進行修改。在實際實現(xiàn)時,轉(zhuǎn)換服務器除了對原始鏡像文件的原始驅(qū)動程序進行修改和/或?qū)υ嘉募袷竭M行修改之外,還對原始鏡像文件中的系統(tǒng)配置信息進行修改,比如,對注冊表啟動項進行修改;而通常情況下,具有相同類型的操作系統(tǒng)的虛擬機在同一個平臺中運行時所需的系統(tǒng)配置信息是相同的,則轉(zhuǎn)化服務器中存儲有操作系統(tǒng)類型、目標平臺標識和系統(tǒng)配置信息的對應關(guān)系,轉(zhuǎn)換服務器查詢與操作系統(tǒng)類型和目標平臺標識對應的目標系統(tǒng)配置信息,將系統(tǒng)配置信息修改為與目標系統(tǒng)配置信息相同。以圖2所示的系統(tǒng)為例,則本實施例提供的鏡像文件轉(zhuǎn)換方法的通信示意圖如圖6所示。綜上所述,本發(fā)明實施例提供的鏡像文件轉(zhuǎn)換方法,轉(zhuǎn)換服務器在檢測到原始鏡像文件不具備與目標平臺對應的至少一個文件特征時,表示該原始鏡像文件無法直接在目標平臺中使用,此時轉(zhuǎn)換服務器通過調(diào)用預定接口直接對原始鏡像文件進行修改,就能轉(zhuǎn)換得到虛擬機在目標平臺中的目標鏡像文件,使虛擬機在目標平臺中正常運行,而不需要將原始鏡像文件啟動為虛擬機后再進行修改,節(jié)約了資源,提高了鏡像文件轉(zhuǎn)換時的效率。本發(fā)明實施例提供的鏡像文件轉(zhuǎn)換方法,由轉(zhuǎn)換服務器確定目標平臺對應的文件特征,并自動根據(jù)目標平臺使用的目標驅(qū)動程序修改原始鏡像文件中的驅(qū)動程序,和/或自動根據(jù)目標平臺支持的目標文件格式修改原始鏡像文件的原始文件格式,而不需要由專門的工程師手動修改原始驅(qū)動程序和原始文件格式,提高了鏡像文件轉(zhuǎn)換時的效率,也減少了人工操作過程中出錯的機會。本發(fā)明實施例提供的鏡像文件轉(zhuǎn)換方法,由轉(zhuǎn)換服務器自動識別原始鏡像文件中的操作系統(tǒng)的操作系統(tǒng)類型,而不需要由用戶手動輸入操作系統(tǒng)類型,避免用戶手動輸入的操作系統(tǒng)類型錯誤而導致鏡像文件轉(zhuǎn)換錯誤??蛇x的,轉(zhuǎn)換服務器在通過上述圖3-圖5任一實施例提供的鏡像文件轉(zhuǎn)換方法得到目標鏡像文件后,將原始鏡像文件返回給終端設(shè)備,或者,返回至鏡像庫。在第一種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器獲取終端設(shè)備發(fā)送的鏡像文件轉(zhuǎn)換請求中的原始鏡像文件,則可選的,轉(zhuǎn)換服務器在接收到終端設(shè)備發(fā)送的原始鏡像文件后,還暫存終端設(shè)備的設(shè)備標識與原始鏡像文件的對應關(guān)系,轉(zhuǎn)換服務器在轉(zhuǎn)換得到目標鏡像文件后,根據(jù)設(shè)備標識將目標鏡像文件返回給終端設(shè)備??蛇x的,設(shè)備標識包括終端設(shè)備的國際移動設(shè)備標識(internationalmobileequipmentidentity,imei)、媒體訪問控制(mediaaccesscontrol,mac)地址、互聯(lián)網(wǎng)協(xié)議(intemetprotocol,ip)地址,以及國際移動客戶識別碼(internationalmobilesubscriberidentificationnumber,imsi)中的至少一種。在第二種可能的實現(xiàn)方式中,轉(zhuǎn)換服務器根據(jù)鏡像文件轉(zhuǎn)換請求中的文件標識從鏡像庫中獲取原始鏡像文件,則可選的,轉(zhuǎn)換服務器在根據(jù)文件標識從鏡像庫中獲取原始鏡像文件,并將原始鏡像文件轉(zhuǎn)換為目標鏡像文件后,轉(zhuǎn)換服務器將文件標識與目標鏡像文件發(fā)送至鏡像庫,由目標鏡像文件替換鏡像庫中存儲的與文件標識對應的原始鏡像文件;或者,轉(zhuǎn)換服務器生成與目標鏡像文件對應的新的文件標識,將新的文件標識和目標鏡像文件的對應關(guān)系發(fā)送至鏡像庫,在鏡像庫中存儲新的文件標識與目標鏡像文件的對應關(guān)系;在實際實現(xiàn)時,新的文件標識包括的新的文件名與原始鏡像文件的文件名不同,但通常情況下新的文件標識包括的用戶標識與原始鏡像文件對應的文件標識中的用戶標識相同。在該可能的實現(xiàn)方式中,轉(zhuǎn)換服務器還可選的直接將目標鏡像文件返回給發(fā)送鏡像文件轉(zhuǎn)換請求的終端設(shè)備,其實現(xiàn)方式請參考上述第一種可能的實現(xiàn)方式,本實施例對此不再贅述。請參考圖7,其示出了本發(fā)明一個示例性實施例提供的轉(zhuǎn)換服務器的結(jié)構(gòu)示意圖,該轉(zhuǎn)換服務器包括:處理器710、存儲器720和總線730。處理器710包括一個或者一個以上處理核心,處理器710通過運行軟件程序以及模塊,從而執(zhí)行各種功能應用以及信息處理。存儲器720通過總線730與處理器710相連,存儲器720用于存儲指令,處理器710通過執(zhí)行存儲器720中存儲的指令實現(xiàn)上述鏡像文件轉(zhuǎn)換方法。此外,存儲器720由任何類型的易失性或非易失性存儲設(shè)備或者它們的組合實現(xiàn),如靜態(tài)隨時存取存儲器(sram),電可擦除可編程只讀存儲器(eeprom),可擦除可編程只讀存儲器(eprom),可編程只讀存儲器(prom),只讀存儲器(rom),磁存儲器,快閃存儲器,磁盤或光盤。可選的,該轉(zhuǎn)換服務器還包括接收器740和發(fā)射器750,接收器740和發(fā)射器750均與服務器710相連,接收器740和發(fā)射器750實現(xiàn)為通信組件??蛇x的,該通信組件包括網(wǎng)絡端口,轉(zhuǎn)換服務器通過該網(wǎng)絡端口使用有線網(wǎng)絡方式與終端設(shè)備、通信服務器以及其他設(shè)備建立通信連接,可選的,轉(zhuǎn)換服務器中包括至少兩個網(wǎng)絡端口。可選的,該通信組件包括通信芯片,通信芯片中包括接收模塊、發(fā)射模塊和調(diào)制解調(diào)模塊等,用于對信息進行調(diào)制解調(diào),并通過無線信號接收或發(fā)送信息,轉(zhuǎn)換服務器通過該通信芯片使用無線網(wǎng)絡方式與終端設(shè)備建立通信連接。請參考圖8,其示出了本發(fā)明一個實施例提供的鏡像文件轉(zhuǎn)換裝置的框圖,該鏡像文件轉(zhuǎn)換裝置通過軟件、硬件或者兩者的結(jié)合實現(xiàn)成為轉(zhuǎn)換服務器的全部或者一部分,該鏡像文件轉(zhuǎn)換裝置包括:獲取單元810,用于執(zhí)行上述步驟301、步驟401、步驟402。檢測單元820,用于執(zhí)行上述步驟302、步驟403、步驟404、步驟405、步驟406、步驟408、步驟409以及步驟410。處理單元830,用于執(zhí)行上述步驟303、步驟407、步驟501、步驟502以及步驟411。在實際實現(xiàn)時,圖8所示的轉(zhuǎn)換服務器用于實現(xiàn)上述各個實施例提供的鏡像文件轉(zhuǎn)換方法,轉(zhuǎn)換服務器在獲取信息時,都可以由上述獲取單元810實現(xiàn);轉(zhuǎn)換服務器在執(zhí)行檢測操作時,都可以由上述檢測單元820實現(xiàn);轉(zhuǎn)換服務器在執(zhí)行處理操作時,都可以由上述處理單元830實現(xiàn)。應當理解的是,在本文中使用的“和/或”是指包括一個或者一個以上相關(guān)聯(lián)地列出的項目的任意和所有可能組合。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。以上所述僅為本公開的較佳實施例,并不用以限制本公開,凡在本公開的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應包含在本公開的保護范圍之內(nèi)。當前第1頁12
當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1