遷移目的地文件服務(wù)器和文件系統(tǒng)遷移方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種用于向迀移目的地文件系統(tǒng)迀移由迀移源文件服務(wù)器提供的文件系統(tǒng)的技術(shù)。
【背景技術(shù)】
[0002]迄今已知用于將各種類(lèi)型的數(shù)據(jù)作為文件管理的文件系統(tǒng)被構(gòu)造在其上的文件服務(wù)器??梢栽谖募到y(tǒng)中管理硬鏈接的文件,該硬鏈接的文件是用于參考與另一文件相同的物理存儲(chǔ)區(qū)域(文件實(shí)體)的文件。也可能存在在文件服務(wù)器上構(gòu)造的文件系統(tǒng)必須被迀移到另一文件服務(wù)器的情況。
[0003]例如,專(zhuān)利文獻(xiàn)I公開(kāi)了一種與在將文件系統(tǒng)迀移到另一文件系統(tǒng)時(shí)迀移硬鏈接的文件有關(guān)的技術(shù)。具體而言,專(zhuān)利文獻(xiàn)I公開(kāi)了在從迀移源文件系統(tǒng)向迀移目的地文件系統(tǒng)迀移硬鏈接的文件時(shí)在硬鏈接信息列表中注冊(cè)與迀移目標(biāo)硬鏈接的文件相同的i節(jié)點(diǎn)(inode)編號(hào)的硬鏈接信息的情況下,在迀移目的地文件系統(tǒng)的目錄樹(shù)中創(chuàng)建與在硬鏈接信息中包括的文件名對(duì)應(yīng)的硬鏈接的文件。
[0004]參考列表
[0005]專(zhuān)利文獻(xiàn)
[0006]PTL I:W0 2007/099636
【發(fā)明內(nèi)容】
[0007]技術(shù)問(wèn)題
[0008]要求文件系統(tǒng)中所管理的文件在文件系統(tǒng)被迀移時(shí)能夠被使用。
[0009]例如,在專(zhuān)利文獻(xiàn)I中公開(kāi)的技術(shù)中,在迀移目的地文件系統(tǒng)中刪除或者重命名在硬鏈接信息列表中注冊(cè)的文件時(shí),硬鏈接信息列表不能用來(lái)向迀移目的地文件系統(tǒng)適當(dāng)?shù)剞|移參考與該文件相同的物理存儲(chǔ)區(qū)域而尚未被迀移到迀移目的地文件系統(tǒng)的硬鏈接的文件。因此,問(wèn)題在于迀移目的地文件系統(tǒng)不可能在迀移硬鏈接的文件期間刪除或者重命名在硬鏈接信息中注冊(cè)的文件。
[0010]對(duì)問(wèn)題的解決方案
[0011]與本發(fā)明的一個(gè)方面有關(guān)的一種迀移目的地文件服務(wù)器耦合到提供迀移源文件系統(tǒng)的迀移源文件服務(wù)器并且提供迀移目的地文件系統(tǒng)。迀移目的地文件服務(wù)器包括存儲(chǔ)設(shè)備和控制器。在向迀移目的地文件系統(tǒng)迀移所述迀移源文件系統(tǒng)中的參考相同文件管理信息的多個(gè)硬鏈接的文件中包括的第一硬鏈接的文件時(shí),控制器在存儲(chǔ)設(shè)備中存儲(chǔ)與第一硬鏈接的文件有關(guān)的數(shù)據(jù),在迀移目的地文件系統(tǒng)中創(chuàng)建第一硬鏈接的文件并且在迀移目的地文件系統(tǒng)中創(chuàng)建用于參考與第一硬鏈接的文件相同的文件管理信息的虛硬鏈接的文件,以及在迀移在多個(gè)硬鏈接的文件中包括的第二硬鏈接的文件時(shí),控制器在迀移目的地文件系統(tǒng)中將虛硬鏈接的文件重命名為第二硬鏈接的文件的路徑名。
[0012]本發(fā)明的有利效果
[0013]根據(jù)本發(fā)明,有可能即使在文件系統(tǒng)迀移在進(jìn)行中之時(shí)仍然關(guān)于向迀移目的地文件服務(wù)器中的文件系統(tǒng)迀移的硬鏈接的文件適當(dāng)?shù)貓?zhí)行刪除過(guò)程或者重命名過(guò)程中的至少一個(gè)過(guò)程。
【附圖說(shuō)明】
[0014][圖1]圖1是示出與示例I有關(guān)的文件系統(tǒng)迀移過(guò)程的概況的第一幅圖。
[0015][圖2]圖2是示出與示例I有關(guān)的文件系統(tǒng)迀移過(guò)程的概況的第二幅圖。
[0016][圖3]圖3是與示例I有關(guān)的計(jì)算機(jī)系統(tǒng)的框圖。
[0017][圖4]圖4是與示例I有關(guān)的i節(jié)點(diǎn)的框圖。
[0018][圖5]圖5是圖示與示例I有關(guān)的i節(jié)點(diǎn)列表和數(shù)據(jù)塊的圖。
[0019][圖6]圖6是示出與示例I有關(guān)的整個(gè)文件系統(tǒng)迀移過(guò)程的示例的流程圖。
[0020][圖7]圖7是示出與示例I有關(guān)的迀移過(guò)程的示例的流程圖。
[0021][圖8]圖8是示出與示例I有關(guān)的i節(jié)點(diǎn)編號(hào)數(shù)據(jù)庫(kù)查詢(xún)過(guò)程的示例的流程圖。
[0022][圖9]圖9是示出與示例I有關(guān)的硬鏈接迀移(通常文件處置)過(guò)程的示例的流程圖。
[0023][圖10]圖10是示出與示例I有關(guān)的硬鏈接迀移(硬鏈接處置)過(guò)程的示例的流程圖。
[0024][圖11]圖11是圖示與示例I有關(guān)的重命名過(guò)程的圖。
[0025][圖12]圖12是示出在與示例I有關(guān)的迀移期間的1/0、重命名和刪除過(guò)程的示例的流程圖。
[0026][圖13]圖13是示出與示例2有關(guān)的文件系統(tǒng)迀移過(guò)程的概況的第一幅圖。
[0027][圖14]圖14是示出與示例2有關(guān)的文件系統(tǒng)迀移過(guò)程的概況的第二幅圖。
[0028][圖15]圖15是示出與示例2有關(guān)的迀移過(guò)程的示例的流程圖。
[0029][圖16]圖16是示出與示例2有關(guān)的i節(jié)點(diǎn)編號(hào)數(shù)據(jù)庫(kù)查詢(xún)過(guò)程的示例的流程圖。
[0030][圖17]圖17是示出與示例2有關(guān)的硬鏈接迀移(通常文件處置)過(guò)程的示例的流程圖。
[0031][圖18]圖18是示出與示例2有關(guān)的硬鏈接迀移(硬鏈接處置)過(guò)程的示例的流程圖。
[0032][圖19]圖19是示出在與示例2有關(guān)的迀移期間的重命名過(guò)程的示例的流程圖。
【具體實(shí)施方式】
[0033]將通過(guò)參照附圖來(lái)說(shuō)明本發(fā)明的多個(gè)示例。以下說(shuō)明的示例不限制與權(quán)利要求有關(guān)的本發(fā)明,并且在示例中說(shuō)明的單元及其組合并非都是本發(fā)明提供的解決方案所必需的。
[0034]在以下說(shuō)明中,使用諸如“aaa列表”這樣的表達(dá)來(lái)說(shuō)明本發(fā)明的信息,但是也可以使用除了列表之外的數(shù)據(jù)結(jié)構(gòu)來(lái)表達(dá)該信息。因此,為了示出該信息不依賴(lài)于數(shù)據(jù)結(jié)構(gòu),“aaa列表”可以被稱(chēng)為“aaa信息”。
[0035]在說(shuō)明相應(yīng)信息的內(nèi)容時(shí),使用表達(dá)“編號(hào)”,但是該表達(dá)可與“標(biāo)識(shí)信息”、“標(biāo)識(shí)符”和“名稱(chēng)”的表達(dá)互換。
[0036]在以下說(shuō)明中,可以存在使用“程序”作為動(dòng)作的執(zhí)行體來(lái)給出說(shuō)明的情況,但是由于根據(jù)處理器(通常為CPU(中央處理單元))在使用存儲(chǔ)器和I/F(接口)之時(shí)執(zhí)行的程序來(lái)執(zhí)行規(guī)定的處理,所以該說(shuō)明可以使處理器作為動(dòng)作的執(zhí)行體。被公開(kāi)為以程序作為動(dòng)作的執(zhí)行體的過(guò)程可以被視為由文件服務(wù)器或者其它這樣的計(jì)算機(jī)執(zhí)行的過(guò)程。另外,可以根據(jù)專(zhuān)用硬件來(lái)實(shí)現(xiàn)程序的全部或者部分??梢允褂贸绦蚍植挤?wù)器或者計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)在相應(yīng)計(jì)算機(jī)中安裝各種類(lèi)型的程序。存儲(chǔ)介質(zhì)例如可以包括IC卡、SD卡、DVD等。
[0037]另外,在以下說(shuō)明中,“硬盤(pán)”表示文件,該文件具有與另一硬鏈接相同的文件管理信息標(biāo)識(shí)符并且參考相同物理存儲(chǔ)區(qū)域(例如,該區(qū)域的文件實(shí)體)并且可以被稱(chēng)為硬鏈接的文件(硬鏈接的文件)或者具有硬鏈接屬性的文件。而且,“i節(jié)點(diǎn)”是文件管理信息的示例,而“i節(jié)點(diǎn)編號(hào)”是文件管理信息標(biāo)識(shí)符的示例。此外,“鏈接”也可以被稱(chēng)為引用(reference)或者指針(Pointer)。
[0038]將說(shuō)明與本發(fā)明有關(guān)的示例I。
[0039]首先,將說(shuō)明與示例I有關(guān)的計(jì)算機(jī)系統(tǒng)的概況。
[0040]圖1是示出與示例I有關(guān)的文件系統(tǒng)迀移過(guò)程的概況的第一幅圖。圖2是示出與示例I有關(guān)的文件系統(tǒng)迀移過(guò)程的概況的第二幅圖。圖1和圖2示出迀移源文件服務(wù)器20的文件系統(tǒng)(被稱(chēng)為迀移源文件系統(tǒng))122被迀移到迀移目的地文件服務(wù)器10的文件系統(tǒng)(被稱(chēng)為迀移目的地文件系統(tǒng))122的情況的示例。
[0041]在迀移源文件系統(tǒng)122中管理參考相同物理存儲(chǔ)區(qū)域(也就是相同文件實(shí)體)的硬鏈接A和硬鏈接B。這里將硬鏈接A和硬鏈接B管理為具有(參考)相同i節(jié)點(diǎn)編號(hào)(這里為 “100”)。
[0042]首先,在硬鏈接A被迀移到迀移目的地文件系統(tǒng)122的情況下,迀移目的地文件服務(wù)器10向迀移目的地文件系統(tǒng)122迀移硬鏈接A,與圖1(1)中所示的通常文件迀移相同。具體而言,迀移目的地文件服務(wù)器10在迀移目的地文件服務(wù)器10的用戶(hù)數(shù)據(jù)存儲(chǔ)裝置150中存儲(chǔ)硬鏈接A所參考的文件實(shí)體、創(chuàng)建和存儲(chǔ)與硬鏈接A對(duì)應(yīng)的i節(jié)點(diǎn)。然后,迀移目的地文件服務(wù)器10在迀移目的地文件系統(tǒng)122中的與迀移目的地目錄對(duì)應(yīng)的目錄文件中關(guān)聯(lián)地注冊(cè)硬鏈接A文件名和向相關(guān)硬鏈接A分配的迀移目的地文件系統(tǒng)122i節(jié)點(diǎn)編號(hào)。迀移目的地文件服務(wù)器10隨后在i節(jié)點(diǎn)列表170中關(guān)聯(lián)地存儲(chǔ)分配的i節(jié)點(diǎn)編號(hào)和示出數(shù)據(jù)塊的地址的數(shù)據(jù)塊信息,該數(shù)據(jù)塊存儲(chǔ)文件實(shí)體。
[0043]接著如圖1⑵中所示,迀移目的地文件服務(wù)器10在專(zhuān)用硬鏈接目錄1221之下創(chuàng)建具有與迀移目標(biāo)硬鏈接A關(guān)聯(lián)的迀移源文件系統(tǒng)122i節(jié)點(diǎn)編號(hào)(這里為“100”)作為目錄名稱(chēng)的目錄1222。另外,迀移目的地文件服務(wù)器10在目錄1222之下創(chuàng)建與硬鏈接A的迀移目的地文件系統(tǒng)122i節(jié)點(diǎn)編號(hào)關(guān)聯(lián)的硬鏈接(被稱(chēng)為虛硬鏈接或者鏈接源文件)1223。硬鏈接1223的文件名這里可以是任意名稱(chēng)。在該示例中,迀移目的地文件服務(wù)器10創(chuàng)建比在迀移目標(biāo)硬鏈接A的i節(jié)點(diǎn)160中包括的鏈接的數(shù)目少一個(gè)的硬鏈接1223。換而言之,迀移目的地文件服務(wù)器10創(chuàng)建其數(shù)目與尚未從迀移源文件系統(tǒng)迀移到迀移目的地文件系統(tǒng)的硬鏈接的數(shù)目對(duì)應(yīng)的虛硬鏈接。
[0044]隨后,在用于參考與硬鏈接A相同的文件實(shí)體的硬鏈接B被迀移到迀移目的地文件系統(tǒng)122的情況下,如圖2(3)中所示,迀移目的地文件服務(wù)器10獲取迀移源文件系統(tǒng)122中的硬鏈接B的i節(jié)點(diǎn)編號(hào)和硬鏈接B的文件名。然后,迀移目的地文件服務(wù)器10標(biāo)識(shí)隸屬于迀移目的地文件系統(tǒng)122的專(zhuān)用硬鏈接迀移目錄1221并且隸屬于以獲取的i節(jié)點(diǎn)編號(hào)作為目錄名稱(chēng)的目錄122