專利名稱::信息備份的系統(tǒng)和方法
技術(shù)領(lǐng)域:
:本發(fā)明與備份系統(tǒng)有關(guān),具體地說,與提供信息備份的系統(tǒng)和方法有關(guān)。
背景技術(shù):
:備份存儲(chǔ)設(shè)備用來備份服務(wù)器及其他網(wǎng)絡(luò)計(jì)算機(jī)或設(shè)備的信息。備份存儲(chǔ)設(shè)備經(jīng)常用來備份各種類型的信息,包括例如文件、數(shù)據(jù)庫、系統(tǒng)信息和文件等。在一個(gè)備份存儲(chǔ)設(shè)備由多個(gè)主機(jī)設(shè)備共享時(shí),就可能在訪問這個(gè)存儲(chǔ)設(shè)備對(duì)它進(jìn)行讀、寫時(shí)出現(xiàn)一些問題。圖1A示出了一個(gè)包括備份存儲(chǔ)設(shè)備的局域網(wǎng)(LAN)的例子。這個(gè)LAN包括通過網(wǎng)絡(luò)9互連的一個(gè)或多個(gè)工作站5a-5n、一個(gè)或多個(gè)服務(wù)器6a-6n和至少一個(gè)備份存儲(chǔ)設(shè)備7。工作站5a-5n和服務(wù)器6a-6n各可以采用不同的操作系統(tǒng)。備份存儲(chǔ)設(shè)備7可以是例如一個(gè)諸如磁帶庫之類的磁帶設(shè)備。如果諸如工作站5a-5n或服務(wù)器6a-6n之類的主機(jī)設(shè)備共享同一個(gè)存儲(chǔ)設(shè)備7,每個(gè)操作系統(tǒng)就可能試圖將數(shù)據(jù)存儲(chǔ)在存儲(chǔ)設(shè)備7上同一位置處。在這種情況下,一個(gè)主機(jī)設(shè)備所需的數(shù)據(jù)可能會(huì)被另一個(gè)主機(jī)設(shè)備后來寫入的數(shù)據(jù)覆蓋。此外,有些操作系統(tǒng)可能將特定信息存儲(chǔ)在存儲(chǔ)設(shè)備7的一些特定地址。另一些操作系統(tǒng)可能要求任何所連接的存儲(chǔ)設(shè)備具有存儲(chǔ)在同一個(gè)存儲(chǔ)區(qū)域的一個(gè)或多個(gè)部分內(nèi)的標(biāo)識(shí)信息。這導(dǎo)致在提供這種共享存儲(chǔ)媒體中出現(xiàn)沖突和困難??梢杂靡粋€(gè)控制器來控制對(duì)存儲(chǔ)設(shè)備7的訪問。然而,如果這個(gè)控制器失效,存儲(chǔ)系統(tǒng)的數(shù)據(jù)就可能永遠(yuǎn)丟失。可以配置多個(gè)存儲(chǔ)設(shè)備來備份主機(jī)設(shè)備上的數(shù)據(jù)。然而,以高效率和有效的方式管理多個(gè)存儲(chǔ)設(shè)備為多個(gè)主機(jī)進(jìn)行備份和恢復(fù)要耗費(fèi)許多時(shí)間和資源,而且要占用LAN或廣域網(wǎng)(WAN)不少帶寬??捎靡粋€(gè)存儲(chǔ)域網(wǎng)(storageareanetwork,SAN)來釋放LAN或WAN的帶寬。SAN是一種由共享存儲(chǔ)設(shè)備組成的高速存儲(chǔ)網(wǎng)。SAN使所有的存儲(chǔ)設(shè)備對(duì)LAN或WAN上的所有主機(jī)所用,從而節(jié)約了寶貴的LAN或WAN帶寬。圖1b示出了一種SAN環(huán)境。這個(gè)SAN包括多個(gè)分布式服務(wù)器2a-2n,通過高速網(wǎng)3與一個(gè)或多個(gè)諸如備份庫(backuplibrary)4a-4n之類的存儲(chǔ)設(shè)備連接。備份設(shè)備4a-4n可以包括例如一些存儲(chǔ)庫,各有多個(gè)存儲(chǔ)媒體、一個(gè)撿取器(picker)和一個(gè)或多個(gè)對(duì)存儲(chǔ)媒體進(jìn)行讀、寫的讀/寫裝置。分布式服務(wù)器2a-2n和備份設(shè)備4a-4n可以通過一個(gè)可以包括各種高速交換機(jī)和/或網(wǎng)橋的高速/大容量網(wǎng)3互連。在這種環(huán)境內(nèi),有幾種服務(wù)器2a-2n和備份設(shè)備4a-4n可以共享的方式。例如,服務(wù)器2a-2n中的一個(gè)服務(wù)器可以對(duì)所有其他服務(wù)器起著允許訪問備份設(shè)備4a-4n的總仲裁器的作用。這種系統(tǒng)通常稱為主/從系統(tǒng)。在主/從系統(tǒng)內(nèi),智能設(shè)在主設(shè)備,主設(shè)備對(duì)什么時(shí)候和是否允許服務(wù)器訪問一個(gè)備份設(shè)備具有自行決定和決策權(quán)。主設(shè)備創(chuàng)建和維護(hù)有關(guān)網(wǎng)絡(luò)上每個(gè)設(shè)備的狀態(tài)的信息。這種主/從系統(tǒng)的一個(gè)問題是如果主設(shè)備崩潰就可能需要大量的時(shí)間和勞力來將另一個(gè)服務(wù)器配置為主設(shè)備。所有其他服務(wù)器要一直等到系統(tǒng)管理人員指定和配置了另一個(gè)主服務(wù)器。新的主設(shè)備然后重新對(duì)網(wǎng)絡(luò)進(jìn)行清點(diǎn),建立有關(guān)網(wǎng)絡(luò)上每個(gè)設(shè)備的狀態(tài)的信息。這可能要耗費(fèi)大量時(shí)間和費(fèi)用。另一種方法是在這些服務(wù)器之間分割對(duì)一個(gè)備份設(shè)備的訪問,使得每個(gè)服務(wù)器只能訪問庫內(nèi)分割給它的那些驅(qū)動(dòng)器(drive)和存儲(chǔ)槽(slot)。然而,這種系統(tǒng)可能使備份設(shè)備得不到充分利用。在許多備份操作中,備份應(yīng)用(backupapplication)將數(shù)據(jù)從主存儲(chǔ)設(shè)備讀至服務(wù)器存儲(chǔ)器,進(jìn)行必要的格式化后發(fā)送給適當(dāng)?shù)膫浞荽鎯?chǔ)設(shè)備。這些處理牽涉到大量占用CPU、IO通道和系統(tǒng)存儲(chǔ)器。很可能在進(jìn)行備份操作時(shí)服務(wù)器就不能執(zhí)行任何其他應(yīng)用的處理。這是系統(tǒng)管理人員所以要在服務(wù)器上的應(yīng)用負(fù)荷處在最低的時(shí)間執(zhí)行備份的原因之一。如果能執(zhí)行備份操作而不需要大量占用服務(wù)器系統(tǒng)從而甚至在進(jìn)行信息備份期間也釋放服務(wù)器,這將是十分有益的。
發(fā)明內(nèi)容本發(fā)明的備份和恢復(fù)信息的系統(tǒng)包括至少一個(gè)存儲(chǔ)設(shè)備;對(duì)一些請(qǐng)求訪問所述至少一個(gè)存儲(chǔ)設(shè)備的設(shè)備允許和拒絕全局鎖定(globallock)的主服務(wù)器;以及至少一個(gè)包括一些存儲(chǔ)與所述至少一個(gè)存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)有關(guān)的信息的內(nèi)部清單的輔服務(wù)器,所述至少一個(gè)輔服務(wù)器向所述主服務(wù)器請(qǐng)求全局鎖定,其中在所述全局鎖定被所述主服務(wù)器允許后,所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。如果確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備能得到允許,所述至少一個(gè)輔服務(wù)器將所述至少一個(gè)存儲(chǔ)設(shè)備的至少一部分標(biāo)為被鎖定,并將相應(yīng)信息存儲(chǔ)在它自己的內(nèi)部清單內(nèi),而且將相應(yīng)信息傳送給所述主服務(wù)器和任何其他輔服務(wù)器以存儲(chǔ)在它們各自的內(nèi)部清單內(nèi),表示所述至少一個(gè)存儲(chǔ)設(shè)備的這個(gè)部分被鎖定。所述至少一個(gè)輔服務(wù)器將相應(yīng)信息傳送給任何其他輔服務(wù)器后,可以釋放全局鎖定,使得該全局鎖定對(duì)任何輔服務(wù)器或主服務(wù)器可用。所述至少一個(gè)輔服務(wù)器釋放全局鎖定后,可以開始將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或者從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息。所述至少一個(gè)輔服務(wù)器完成將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息后,可以再次請(qǐng)求全局鎖定,使它因此能更新所述主服務(wù)器和任何其他輔服務(wù)器。所述至少一個(gè)輔服務(wù)器被再次授予全局鎖定后,可以將信息發(fā)送給所述主服務(wù)器和任何其他輔服務(wù)器,通知它們更新它們各自的內(nèi)部清單,以取消鎖定所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分。所述系統(tǒng)可以還包括一個(gè)連接所述至少一個(gè)存儲(chǔ)設(shè)備、所述主服務(wù)器和所述多個(gè)輔服務(wù)器的網(wǎng)絡(luò)。這個(gè)網(wǎng)絡(luò)可以包括一個(gè)存儲(chǔ)域網(wǎng)(storageareanetwork)。本發(fā)明還揭示了一種允許和拒絕對(duì)一個(gè)網(wǎng)絡(luò)上的服務(wù)器進(jìn)行訪問以將信息備份到一個(gè)存儲(chǔ)設(shè)備和從這個(gè)存儲(chǔ)設(shè)備恢復(fù)信息的方法,所述服務(wù)器包括一個(gè)主服務(wù)器和一些輔服務(wù)器,所述方法包括從一個(gè)輔服務(wù)器向所述主服務(wù)器發(fā)送一個(gè)對(duì)全局鎖定的請(qǐng)求,所述輔服務(wù)器包括一些存儲(chǔ)與所述存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)有關(guān)的信息的內(nèi)部清單;確定網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定;以及根據(jù)網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定對(duì)所述輔服務(wù)器允許和拒絕全局鎖定,其中,在全局鎖定被所述主服務(wù)器允許時(shí),所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。如果確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備能得到允許,所述至少一個(gè)輔服務(wù)器將所述至少一個(gè)存儲(chǔ)設(shè)備的至少一部分標(biāo)為被鎖定,并將相應(yīng)信息存儲(chǔ)在它自己的內(nèi)部清單內(nèi),而且將相應(yīng)信息傳送給所述主服務(wù)器和任何其他輔服務(wù)器以存儲(chǔ)在它們各自的內(nèi)部清單內(nèi),表示所述至少一個(gè)存儲(chǔ)設(shè)備的這個(gè)部分被鎖定。所述至少一個(gè)輔服務(wù)器將相應(yīng)信息傳送給任何其他輔服務(wù)器后,可以釋放全局鎖定,使得該全局鎖定對(duì)任何輔服務(wù)器或主服務(wù)器可用。所述至少一個(gè)輔服務(wù)器釋放全局鎖定后,可以開始將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或者從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息。所述至少一個(gè)輔服務(wù)器完成將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息后,可以再次請(qǐng)求全局鎖定,使它因此能更新所述主服務(wù)器和任何其他輔服務(wù)器。所述至少一個(gè)輔服務(wù)器被再次授予全局鎖定后,可以將信息發(fā)送給所述主服務(wù)器和任何其他輔服務(wù)器,通知它們更新它們各自的內(nèi)部清單,以取消鎖定所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分。這個(gè)網(wǎng)絡(luò)可以包括一個(gè)存儲(chǔ)域網(wǎng)。本發(fā)明還揭示了一種包括允許和拒絕對(duì)一個(gè)網(wǎng)絡(luò)上的服務(wù)器進(jìn)行訪問以將信息備份到一個(gè)存儲(chǔ)設(shè)備和從這個(gè)存儲(chǔ)設(shè)備恢復(fù)信息的計(jì)算機(jī)可執(zhí)行代碼的計(jì)算機(jī)記錄媒體,所述服務(wù)器包括一個(gè)主服務(wù)器和一些輔服務(wù)器,所述計(jì)算機(jī)記錄媒體包括從一個(gè)輔服務(wù)器向所述主服務(wù)器發(fā)送一個(gè)對(duì)全局鎖定的請(qǐng)求的代碼,所述輔服務(wù)器包括一些存儲(chǔ)與所述存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)有關(guān)的信息的內(nèi)部清單;確定網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定的代碼;以及根據(jù)網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定對(duì)所述輔服務(wù)器允許和拒絕全局鎖定的代碼,其中,在所述全局鎖定被所述主服務(wù)器允許時(shí),所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。如果確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備能得到允許,代碼可以控制所述至少一個(gè)輔服務(wù)器將所述至少一個(gè)存儲(chǔ)設(shè)備的至少一部分標(biāo)為被鎖定,并將相應(yīng)信息以存儲(chǔ)在它自己的內(nèi)部清單內(nèi),而且代碼可以將相應(yīng)信息傳送給所述主服務(wù)器和任何其他輔服務(wù)器存儲(chǔ)在它們各自的內(nèi)部清單內(nèi),表示所述至少一個(gè)存儲(chǔ)設(shè)備的這部分被鎖定。所述至少一個(gè)輔服務(wù)器將相應(yīng)信息傳送給任何其他輔服務(wù)器后,可以釋放全局鎖定,使得該全局鎖定對(duì)任何輔服務(wù)器或主服務(wù)器可用??梢蕴峁┐a,控制所述至少一個(gè)輔服務(wù)器,使得所述至少一個(gè)輔服務(wù)器釋放全局鎖定后,開始將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或者從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息。可以提供代碼,控制所述至少一個(gè)輔服務(wù)器,使得所述至少一個(gè)輔服務(wù)器完成將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息后,再次請(qǐng)求全局鎖定,使它因此能更新所述主服務(wù)器和任何其他輔服務(wù)器??梢蕴峁┐a,控制所述至少一個(gè)輔服務(wù)器,使得所述至少一個(gè)輔服務(wù)器被再次授予全局鎖定后,將信息發(fā)送給所述主服務(wù)器和任何其他輔服務(wù)器,通知它們更新它們各自的內(nèi)部清單,以取消鎖定所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分。參考以下結(jié)合附圖所作的詳細(xì)說明可以更好地理解本發(fā)明和更完全地評(píng)價(jià)本發(fā)明和本發(fā)明的許多從屬優(yōu)點(diǎn)。在這些附圖中圖1A為L(zhǎng)AN環(huán)境的方框圖;圖1B為SAN環(huán)境的方框圖;圖2為例示可以應(yīng)用本發(fā)明的系統(tǒng)和方法的網(wǎng)絡(luò)環(huán)境的方框圖;圖3為例示可以應(yīng)用本發(fā)明的系統(tǒng)和方法的SAN環(huán)境的方框圖;圖4和5為允許用戶配置系統(tǒng)的屏幕顯示;圖6為例示一個(gè)所配置的系統(tǒng)的方框圖;圖7-12為允許用戶在一個(gè)作業(yè)隊(duì)列內(nèi)建立作業(yè)的屏幕顯示;圖13為允許用戶備份一個(gè)遠(yuǎn)程服務(wù)器的屏幕顯示;圖14為示出本發(fā)明的系統(tǒng)和方法的服務(wù)器所用的各個(gè)引擎的方框圖;圖15為說明按照一個(gè)實(shí)施例設(shè)計(jì)的多流注備份的流程圖;圖16為說明無服務(wù)器備份的方框圖;圖17-19為說明各種無服務(wù)器備份的方式的流程圖;圖20為示出文件和文件的數(shù)據(jù)塊的示意圖;圖21和22為允許用戶配置庫的GUI;以及圖23-25為說明無服務(wù)器備份操作的流程圖。具體實(shí)施例方式在說明附圖所示的本發(fā)明的優(yōu)選實(shí)施例中,為了清晰起見用了專用術(shù)語。然而,本發(fā)明并不局限于這樣選擇的這些具體技術(shù)名詞,可以理解,每個(gè)具體組成部分包括所有以類似方式工作的在技術(shù)上等效的組成部分。本發(fā)明的系統(tǒng)和方法能在局域網(wǎng)(LAN)環(huán)境內(nèi)以及在包括例如存儲(chǔ)域網(wǎng)(SAN)環(huán)境在內(nèi)的其他各種環(huán)境內(nèi)實(shí)現(xiàn)。圖2例示了將進(jìn)一步予以說明的一些所揭示的實(shí)施例的硬件和軟件環(huán)境。該系統(tǒng)包括通過一個(gè)或多個(gè)網(wǎng)絡(luò)互連的一個(gè)或多個(gè)工作站10a-10n、一個(gè)或多個(gè)服務(wù)器11a-11n和一個(gè)或多個(gè)備份設(shè)備13a-13n。工作站10a-10n和服務(wù)器11a-11n可以采用相同或不同的操作系統(tǒng)。工作站10a-10n可以包括一個(gè)或多個(gè)臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、大型機(jī)等。在圖2所示的實(shí)施例中,網(wǎng)絡(luò)是一個(gè)LAN環(huán)境,而工作站10a-10n、服務(wù)器11a-11n和備份系統(tǒng)13a-13n通過LAN15互連。除了以上說明的LAN環(huán)境之外或者作為以上說明的LAN環(huán)境的替代環(huán)境,可以配置一個(gè)SAN環(huán)境。在SAN環(huán)境內(nèi),工作站10a-10n可以通過如上面對(duì)圖2所說明的LAN與多個(gè)服務(wù)器12a-12n中的一個(gè)或多個(gè)服務(wù)器連接。然而,在SAN環(huán)境內(nèi),服務(wù)器12a-12n通過網(wǎng)絡(luò)16與一個(gè)或多個(gè)備份存儲(chǔ)設(shè)備14a-14n連接,如圖3所示。如下面還要詳細(xì)說明的那樣,可以將服務(wù)器12a-12n分配給一些各包括一些分布式服務(wù)器、一個(gè)主服務(wù)器和一些備份存儲(chǔ)設(shè)備的服務(wù)器組。網(wǎng)絡(luò)16是一個(gè)高速網(wǎng),可以包括一個(gè)由一些交換機(jī)和網(wǎng)橋組成的形成一個(gè)光纖信道網(wǎng)的一部分的系統(tǒng)。SAN形成一個(gè)傳送數(shù)據(jù)的高速、大帶寬系統(tǒng)。高速網(wǎng)16可以是例如光纖信道網(wǎng)、共享SCSI系統(tǒng)或SSA型系統(tǒng)。雖然在這里將只就一個(gè)服務(wù)器組進(jìn)行說明,但SAN上可以掛有多個(gè)服務(wù)器組。主服務(wù)器控制SAN服務(wù)器組內(nèi)所有服務(wù)器的信息流動(dòng)。這防止了在有兩個(gè)服務(wù)器同時(shí)試圖分配同一個(gè)設(shè)備或媒體的情況下而引起的沖突。光纖信道適配器和光纖信道庫可以接到網(wǎng)絡(luò)16上,這些信道適配器和光纖信道庫稱為節(jié)點(diǎn)。節(jié)點(diǎn)可以連接到交換機(jī)/集線器上,建成一個(gè)環(huán)。光纖信道環(huán)有時(shí)也稱為光纖信道仲裁回路,包括由一個(gè)光纖信道集線器連接的一些節(jié)點(diǎn),從而每個(gè)節(jié)點(diǎn)都能與其他各節(jié)點(diǎn)通信。節(jié)點(diǎn)在加電或最初接到環(huán)上時(shí)向環(huán)注冊(cè)登錄。這在環(huán)上引起一個(gè)掛在環(huán)上的所有其他節(jié)點(diǎn)都接收到的事件,使每個(gè)節(jié)點(diǎn)都知道新的節(jié)點(diǎn)。環(huán)上每個(gè)節(jié)點(diǎn)分配有一個(gè)由制造商給出的世界范圍內(nèi)獨(dú)有的地址或ID,使各節(jié)點(diǎn)在環(huán)上登錄時(shí)可以被識(shí)別。一些連接到一個(gè)集線器上的諸如磁帶庫之類的備份設(shè)備運(yùn)用知道網(wǎng)絡(luò)存儲(chǔ)設(shè)備的應(yīng)用,因此這些應(yīng)用能訪問這些設(shè)備而不會(huì)與也訪問這些設(shè)備的其他應(yīng)用相互干擾。在這里所說明的SAN環(huán)境內(nèi),按照本發(fā)明設(shè)計(jì)的軟件系統(tǒng)安裝在服務(wù)器12a-12n上。系統(tǒng)配置成指定主服務(wù)器和分布式服務(wù)器,將每個(gè)服務(wù)器分配給一個(gè)組。例如,按照一個(gè)實(shí)施例,為用戶提供了一個(gè)諸如圖4所示的顯示屏面。這個(gè)顯示屏面包括配置在左側(cè)的面板20,用來顯示主服務(wù)器和分布式服務(wù)器配置的樹形圖。顯示屏面右側(cè)的面板22示出了所有裝有本軟件而還沒有被分入任何服務(wù)器組的可用服務(wù)器。用戶首先通過移動(dòng)光標(biāo)(未示出)從列在顯示屏面右側(cè)的清單中選取一個(gè)服務(wù)器再點(diǎn)擊“創(chuàng)建主服務(wù)器”按鈕24,選擇主服務(wù)器。主服務(wù)器也可以通過移動(dòng)光標(biāo)從左側(cè)面板中選取該服務(wù)器再點(diǎn)擊“刪除主服務(wù)器”按鈕26來撤消。主服務(wù)器選定后,選擇分布式服務(wù)器分配給主服務(wù)器,形成一個(gè)服務(wù)器組。從屏面的右側(cè)窗口中選擇一個(gè)分布式服務(wù)器再點(diǎn)擊“分配分布式服務(wù)器”按鈕28就可以選擇一個(gè)分布式服務(wù)器。為了從一個(gè)組中刪除一個(gè)分布式服務(wù)器,可以選取左側(cè)面板內(nèi)這個(gè)服務(wù)器的名稱再點(diǎn)擊“移除分布式服務(wù)器”按鈕30。重復(fù)這個(gè)過程直到將服務(wù)器組配置成如用戶所要求的。然后,將存儲(chǔ)設(shè)備分配給這個(gè)服務(wù)器組。這個(gè)過程在主服務(wù)器上執(zhí)行。例如,為了為一個(gè)服務(wù)器組分配共享庫,從主服務(wù)器計(jì)算機(jī)選取“設(shè)備組配置”對(duì)話。這給出一個(gè)諸如圖5所示的窗口,在左側(cè)面板32內(nèi)列有各個(gè)服務(wù)器組,而在右側(cè)面板34內(nèi)列有一些可用的存儲(chǔ)媒體設(shè)備。雖然本發(fā)明將主要參照以磁帶庫作為存儲(chǔ)媒體設(shè)備進(jìn)行說明,但除了磁帶庫之外可以用其他類型的存儲(chǔ)媒體設(shè)備作為替代或附加存儲(chǔ)媒體設(shè)備。在右側(cè)的“可用設(shè)備”面板34內(nèi)示出目前還沒有分配給一個(gè)組的磁帶庫。為了將一個(gè)磁帶庫分配給一個(gè)組,可以點(diǎn)擊列在“可用設(shè)備”面板34內(nèi)的一個(gè)庫并選取。然后,用戶將左側(cè)面板32內(nèi)用戶希望添加庫的組加亮。接著,點(diǎn)擊“分配”按鈕36。于是,這個(gè)庫將從右側(cè)面板34移到左側(cè)面板32內(nèi)這個(gè)設(shè)備組之下。重復(fù)以上步驟可以為這個(gè)組添加其他一些庫。結(jié)束時(shí),點(diǎn)擊“確定”按鈕38。圖6示出了這樣配置的服務(wù)器組的例子。網(wǎng)絡(luò)現(xiàn)在包括主服務(wù)器13、分布式服務(wù)器15a-15n和存儲(chǔ)媒體設(shè)備16a-16n。每個(gè)服務(wù)器維護(hù)一個(gè)列有需要執(zhí)行的作業(yè)的作業(yè)隊(duì)列。圖7示出了作業(yè)隊(duì)列的一個(gè)例子。點(diǎn)擊“作業(yè)隊(duì)列”標(biāo)簽40,在窗口部42內(nèi)示出了作業(yè)隊(duì)列,如圖所示。作業(yè)隊(duì)列標(biāo)識(shí)了作業(yè)所涉及的服務(wù)器、作業(yè)編號(hào)、作業(yè)ID、每個(gè)作業(yè)的狀態(tài)和每個(gè)作業(yè)的執(zhí)行時(shí)間,如圖所示。在運(yùn)行或計(jì)劃運(yùn)行一個(gè)作業(yè)時(shí),由用戶將它提交給作業(yè)隊(duì)列。本發(fā)明的系統(tǒng)不斷掃描作業(yè)隊(duì)列,搜索執(zhí)行準(zhǔn)備就緒的作業(yè)??梢酝ㄟ^從作業(yè)隊(duì)列中選取作業(yè)點(diǎn)擊不同的控制選項(xiàng)來控制作業(yè)。例如,用戶可以給有將作業(yè)狀態(tài)改變?yōu)椤氨3帧被颉熬途w”(如果當(dāng)前處在保持狀態(tài)的話)的選項(xiàng)?!氨3帧币馕吨鳂I(yè)尚未計(jì)劃執(zhí)行?!熬途w”是指作業(yè)可以執(zhí)行。用戶也可以用預(yù)先保存的腳本(script)迅速地將一個(gè)作業(yè)提交給作業(yè)隊(duì)列。腳本是一個(gè)保存至一個(gè)文件的作業(yè)。腳本含有作業(yè)的原來的源、目的地、選項(xiàng)和調(diào)度信息。可以修改作業(yè),為一個(gè)現(xiàn)有的作業(yè)添加選項(xiàng)或附加的源,而不需創(chuàng)建新作業(yè)。可以重新安排作業(yè),迅速改變作業(yè)的執(zhí)行日期、時(shí)間或狀態(tài)。這也使用戶可以重新提交一個(gè)仍在作業(yè)隊(duì)列內(nèi)的“完成”的作業(yè)。例如,用戶可能希望這樣做,如果這個(gè)作業(yè)在它初次運(yùn)行時(shí)沒有成功的話。用戶也可以從作業(yè)隊(duì)列中取消一個(gè)活活動(dòng)業(yè)(activejob),將它重新安排到它的下一個(gè)定時(shí)間隔??梢匀∠蛷淖鳂I(yè)隊(duì)列中完全刪除一個(gè)作業(yè)。刪除一個(gè)作業(yè)將中斷和從作業(yè)隊(duì)列中完全刪去這個(gè)作業(yè),不會(huì)對(duì)它重新安排。如果用戶又希望恢復(fù)這個(gè)作業(yè),用戶可以重建這個(gè)作業(yè)(如果先前沒有將它保存至一個(gè)腳本文件(scriptfile)的話)。用戶可以通過將作業(yè)添加到作業(yè)隊(duì)列內(nèi)來建立需執(zhí)行的作業(yè)。備份管理器(backupmanager)允許在作業(yè)隊(duì)列內(nèi)添加作業(yè)。例如,用戶可以設(shè)置每個(gè)作業(yè)的源、目的地和調(diào)度信息。通過指定源,用戶可以指定他們希望備份的項(xiàng)目。通過指定目的地,用戶可以指定他們希望在哪里備份源信息。通過指定調(diào)度信息,用戶可以指定他們希望什么時(shí)候執(zhí)行備份。備份管理器包括一個(gè)備份向?qū)?backupwizard),用來為用戶提供選擇選項(xiàng)和指定作業(yè)隊(duì)列信息的各種窗口。利用備份向?qū)Э梢灾付ㄔ?、目的地和調(diào)度信息。例如,備份向?qū)?dòng)后,請(qǐng)求用戶通過鍵入服務(wù)器名、用戶名和口令,指定他們希望備份的源或服務(wù)器。系統(tǒng)確認(rèn)這信息后,就給出一個(gè)諸如圖8所示的窗口100。如圖所示,瀏覽器顯示一個(gè)計(jì)算機(jī)樹型結(jié)構(gòu)101,從中用戶可以選擇需備份的域,計(jì)算機(jī)、媒體卷(驅(qū)動(dòng)器)、共享部份、目錄和文件。例如,為了備份整個(gè)服務(wù)器計(jì)算機(jī),用戶加亮“我的計(jì)算機(jī)”,然后點(diǎn)擊“下一步”按鈕104。于是,系統(tǒng)顯示一個(gè)諸如圖9所示的窗口106,請(qǐng)求用戶通過選擇備份媒體來選擇備份目的地。選擇了備份媒體后,用戶點(diǎn)擊“下一步”按鈕104。于是,用戶看到如圖10所示的備份選項(xiàng)屏面108。這個(gè)屏面使用戶可以通過選擇需備份的文件的范圍自定義備份作業(yè)。例如,用戶可以選擇“全部備份”110或“增量備份”112。如果選擇增量備份,將只對(duì)是新的(或者自上次備份后有改變的)文件進(jìn)行備份。這個(gè)屏面還使用戶可以設(shè)置是否帶“驗(yàn)證”114和/或“壓縮”116的備份。點(diǎn)擊“下一步”按鈕104后,用戶可以看到一個(gè)如圖11所示的窗口118。這個(gè)窗口示出了所輸入的信息,請(qǐng)求用戶核實(shí)信息。如果信息不正確,用戶可以點(diǎn)擊“后退”按鈕103退回上一步,修改任何輸入項(xiàng)。如果用戶對(duì)這信息滿意,用戶點(diǎn)擊按鈕104,從而可以看到一個(gè)如圖12所示的窗口120。窗口120使用戶可以選擇備份作業(yè)需“立即運(yùn)行”122還是需在指定日期與時(shí)間運(yùn)行的“調(diào)度”124。如果選擇“調(diào)度”按鈕124,用戶就可以看到一系列選項(xiàng),用來選擇啟動(dòng)日期/時(shí)間,重復(fù)方法,重復(fù)間隔(例如月,日,小時(shí),分鐘)和不進(jìn)行備份作業(yè)的日子(如果有的話)。本發(fā)明的系統(tǒng)因此提供了一種容易和直觀的調(diào)度備份作業(yè)的方式。本發(fā)明的系統(tǒng)還允許從一個(gè)本地服務(wù)器對(duì)另一服務(wù)器組內(nèi)或者不與任何服務(wù)器組關(guān)聯(lián)的遠(yuǎn)程服務(wù)器/計(jì)算機(jī)進(jìn)行備份。遠(yuǎn)程計(jì)算機(jī)應(yīng)裝有一個(gè)適當(dāng)?shù)拇?agent),以便可以被本地服務(wù)器識(shí)別,從而需備份的數(shù)據(jù)可以提取出來予以備份。遠(yuǎn)程計(jì)算機(jī)上的代理瀏覽目標(biāo)目錄,并封裝需以大型數(shù)據(jù)分組的脈沖傳送給本地服務(wù)器的數(shù)據(jù)。然后,本地服務(wù)器準(zhǔn)備出需存儲(chǔ)到指定的存儲(chǔ)設(shè)備上的數(shù)據(jù)。每個(gè)代理還可以包括一個(gè)標(biāo)識(shí)哪些本地服務(wù)器能通過本代理備份或恢復(fù)數(shù)據(jù)的訪問控制表(ACL)。訪問控制表可以標(biāo)識(shí)拒絕或允許通過代理備份/恢復(fù)數(shù)據(jù)的特定用戶和/或IT地址。本發(fā)明的系統(tǒng)提供了一種安全系統(tǒng),它依賴于用戶具有在部署代理的節(jié)點(diǎn)上登錄的登錄證書。從本地服務(wù)器至具有代理的計(jì)算機(jī)(代理節(jié)點(diǎn))的連接只有在用戶已登錄訪問這個(gè)代理節(jié)點(diǎn)時(shí)才建立。本發(fā)明的系統(tǒng)還提供了一種附加的安全級(jí)別,因?yàn)橛脩魬?yīng)該可以物理訪問代理節(jié)點(diǎn)(在登錄訪問之上),以便成功地對(duì)這個(gè)節(jié)點(diǎn)進(jìn)行操作。ACL為一個(gè)特定的代理節(jié)點(diǎn)規(guī)定了可以與它連接和訪問它的功能的那些系統(tǒng)服務(wù)器(在企業(yè)網(wǎng)上)。這功能設(shè)置在駐有代理和需要物理本地節(jié)點(diǎn)訪問予以操作的節(jié)點(diǎn)上。ACL允許這個(gè)節(jié)點(diǎn)的用戶設(shè)置一個(gè)列出可以訪問代理的服務(wù)器的清單或不可以代理訪問代理的服務(wù)器的清單。默認(rèn)時(shí),可以將ACL設(shè)置成允許所有的服務(wù)器訪問代理。為了改變一個(gè)特定的代理的ACL,用戶在本地登錄到這個(gè)節(jié)點(diǎn)上,通過一個(gè)代理管理實(shí)用程序?qū)CL進(jìn)行操作。用戶可以調(diào)用代理管理實(shí)用程序,通過訪問控制表對(duì)話框添加或取消訪問請(qǐng)求。下面將參考圖13說明添加一個(gè)需備份的遠(yuǎn)程服務(wù)器的例子。向本地服務(wù)器的用戶示出一個(gè)備份管理器屏面130。在這個(gè)例子中,需備份的遠(yuǎn)程服務(wù)器為一個(gè)運(yùn)行WindowsNT的服務(wù)器。用戶加亮窗口132內(nèi)的“WindowsNT/Windows2000System”,如圖所示,然后在上點(diǎn)擊。于是,用戶可以看到選項(xiàng)“增加機(jī)器”和“使用自動(dòng)發(fā)現(xiàn)來增加”,如圖所示。點(diǎn)擊“使用自動(dòng)發(fā)現(xiàn)來增加”,將查找具有適當(dāng)代理的計(jì)算機(jī)。例如,在這個(gè)例子中,如果選擇“使用自動(dòng)發(fā)現(xiàn)來增加”,系統(tǒng)將查找掛在網(wǎng)絡(luò)上的具有WindowsNT/Windows2000系統(tǒng)代理的計(jì)算機(jī)。如圖所示選擇“增加機(jī)器”,用戶將看到一系列對(duì)話框,使用戶可以鍵入遠(yuǎn)程服務(wù)器/計(jì)算機(jī)的主機(jī)名、請(qǐng)求使用戶有權(quán)瀏覽這個(gè)遠(yuǎn)程服務(wù)器/計(jì)算機(jī)和對(duì)它執(zhí)行備份的用戶名和口令和使用戶可以設(shè)置備份的目的地。本發(fā)明的系統(tǒng)的每個(gè)服務(wù)器可以包括一些執(zhí)行備份、恢復(fù)等各種功能的引擎(engine)。例如,如圖14所示,每個(gè)服務(wù)器可以包括一個(gè)作業(yè)引擎136、一個(gè)磁帶引擎138和一個(gè)數(shù)據(jù)庫引擎140。這些引擎分擔(dān)本發(fā)明的系統(tǒng)的工作負(fù)荷,處理和監(jiān)視備份和恢復(fù)操作和更新有關(guān)活動(dòng)日志和數(shù)據(jù)庫內(nèi)性能的信息。作業(yè)引擎在指定的日期和時(shí)間處理作業(yè)隊(duì)列內(nèi)的作業(yè)。作業(yè)引擎掃描作業(yè)隊(duì)列搜索一個(gè)運(yùn)行準(zhǔn)備就緒的作業(yè),將它發(fā)送給適當(dāng)?shù)奶幚砥?。每個(gè)運(yùn)行作業(yè)引擎的服務(wù)器都可以配置成適合每個(gè)用戶的需要。作業(yè)引擎因此控制作業(yè)隊(duì)列內(nèi)作業(yè)的執(zhí)行時(shí)間。它定期對(duì)作業(yè)隊(duì)列進(jìn)行掃描,發(fā)出到達(dá)執(zhí)行日期和時(shí)間的作業(yè)。作業(yè)引擎的各種特征可以由用戶控制。例如,通過選擇一個(gè)選擇配置菜單,可以配置各個(gè)選項(xiàng)。例如,如上面所指出的那樣,作業(yè)引擎經(jīng)常對(duì)作業(yè)隊(duì)列進(jìn)行掃描,搜索應(yīng)執(zhí)行的作業(yè)。缺省時(shí),每10秒對(duì)作業(yè)隊(duì)列掃描一次。為了改變這個(gè)時(shí)間間隔,用戶可以將時(shí)間間隔指定為1-999秒。已完成的作業(yè)的滯留時(shí)間也可以控制。也就是說,最終狀態(tài)為“完成”的作業(yè)將在作業(yè)隊(duì)列內(nèi)留存一段在此字段內(nèi)指定的時(shí)間。作為默認(rèn),“完成”的作業(yè)在保留24小時(shí)后再從隊(duì)列中刪去,除非它們是循環(huán)作業(yè)。為了改變這時(shí)間,可以輸入0至999之間的數(shù)碼。本發(fā)明的系統(tǒng)還可以包括一個(gè)用戶能查看的活動(dòng)日志?;顒?dòng)日志含有有關(guān)所有系統(tǒng)活動(dòng)的信息。作為默認(rèn),在活動(dòng)日志內(nèi)示出在運(yùn)行本發(fā)明的系統(tǒng)時(shí)出現(xiàn)的注解、警告和差錯(cuò)。為了改變?cè)诨顒?dòng)日志內(nèi)能維護(hù)的消息的類型,用戶可以指定以下這些值“無”,不顯示消息;“錯(cuò)誤”,只顯示運(yùn)行本發(fā)明的系統(tǒng)時(shí)出現(xiàn)的錯(cuò)誤;“警告和錯(cuò)誤”,顯示運(yùn)行本發(fā)明的系統(tǒng)時(shí)出現(xiàn)的警告和錯(cuò)誤;“注解、警告和錯(cuò)誤”(默認(rèn)值),顯示運(yùn)行本發(fā)明的系統(tǒng)時(shí)出現(xiàn)的所有注解、警告和差錯(cuò);“調(diào)試”,顯示可供排除故障用的調(diào)試信息。磁帶引擎負(fù)責(zé)對(duì)存儲(chǔ)設(shè)備進(jìn)行的通信和控制。磁帶引擎選擇作業(yè)所需的設(shè)備。也就是說,磁帶引擎標(biāo)識(shí)所有與系統(tǒng)連接的存儲(chǔ)設(shè)備,在作業(yè)啟動(dòng)時(shí)予以激活。最好不要改變磁帶引擎的配置。除了用于排除故障之外,通常采用默認(rèn)配置。然而,本發(fā)明的系統(tǒng)提供了一些磁帶引擎選項(xiàng)。如果將“級(jí)別”選項(xiàng)保持在默認(rèn)(“無”),用戶就不需要指定任何其他事項(xiàng)。然而,如果需要,可以用以下這些值“無”(默認(rèn)),沒有信息被記錄。如果保持默認(rèn),在作業(yè)狀態(tài)管理器內(nèi)不會(huì)出現(xiàn)磁帶引擎日志。如果設(shè)置為“詳細(xì)資料”,存儲(chǔ)設(shè)備發(fā)送的每個(gè)消息將登入日志,系統(tǒng)監(jiān)視磁帶引擎和將接收到的所有信息都登入日志。如果選擇“引擎日志”,在作業(yè)狀態(tài)管理器內(nèi)將出現(xiàn)磁帶引擎日志。如果指定“輸出”和如上面所注釋的那樣設(shè)置“詳細(xì)資料”,用戶可以指定他們希望將消息發(fā)送到哪里。用戶可以指定下列其中之一“屏面和文件兩者”,而在這樣的情況下,消息錄在磁帶引擎日志內(nèi),也發(fā)送給DOS框(磁帶引擎消息窗口)。如果指定“只屏面”,消息只發(fā)送給磁帶引擎消息窗口。如果指定“只文件”,消息只錄在磁帶引擎日志內(nèi)。用戶可以在作業(yè)狀態(tài)管理器內(nèi)查看磁帶引擎日志。系統(tǒng)內(nèi)執(zhí)行的所有操作都由數(shù)據(jù)庫引擎記錄。數(shù)據(jù)庫引擎負(fù)責(zé)維護(hù)系統(tǒng)已備份或拷貝的文件、目錄、驅(qū)動(dòng)器和計(jì)算機(jī)的歷史。數(shù)據(jù)庫引擎還負(fù)責(zé)維護(hù)已由系統(tǒng)處理的作業(yè)的有關(guān)信息,諸如作業(yè)類型、日志、最終結(jié)果和作業(yè)開始和結(jié)束時(shí)間之類。數(shù)據(jù)庫引擎還維護(hù)系統(tǒng)所用的媒體的歷史,諸如它的類型、名稱、第一次格式化日期、期滿日期和媒體上的會(huì)話(session)。數(shù)據(jù)庫引擎存儲(chǔ)所處理的所有作業(yè)的統(tǒng)計(jì)信息。所保存的一些作業(yè)信息包括已備份、拷貝和恢復(fù)的文件和目錄、本發(fā)明的系統(tǒng)已處理的作業(yè)、用于作業(yè)的存儲(chǔ)設(shè)備和媒體。用戶可以通過用戶接口控制各個(gè)數(shù)據(jù)庫引擎選項(xiàng)。例如,“所需的最小空閑磁盤空間(兆字節(jié))”選項(xiàng)使用戶可以指定用戶希望為系統(tǒng)數(shù)據(jù)庫保留的最小磁盤空間(以兆字節(jié)計(jì))。作為默認(rèn),指定5MB的磁盤空間。為了改變所需的磁盤空間,用戶可以指定一個(gè)在1至10之間的數(shù)碼??梢詫ⅰ皢⒂脭?shù)據(jù)庫修剪”選項(xiàng)設(shè)置成在數(shù)據(jù)庫修剪已接通時(shí)可以刪去在一個(gè)會(huì)話中備份或拷貝的文件和目錄的有關(guān)信息。作為默認(rèn),選擇這個(gè)選項(xiàng),以釋放數(shù)據(jù)庫文件內(nèi)的空間。然而,用戶可以發(fā)現(xiàn)為了保存詳細(xì)信息供以后恢復(fù)用將這個(gè)選項(xiàng)設(shè)置成關(guān)閉是有益的。然而,應(yīng)指出的是不修剪數(shù)據(jù)庫就意味著數(shù)據(jù)庫可能很快裝滿?!靶藜羧涨暗臄?shù)據(jù)庫記錄”選項(xiàng)只有在“啟用數(shù)據(jù)庫修剪”選項(xiàng)已打開時(shí)才有效。用戶可以指定記錄應(yīng)在數(shù)據(jù)庫內(nèi)保存多長(zhǎng)時(shí)間后才刪去。作為默認(rèn),記錄將在數(shù)據(jù)庫內(nèi)保存30天后刪去(如果啟用了該選項(xiàng))。為了改變這個(gè)時(shí)間長(zhǎng)度,用戶可以指定一個(gè)在1至365之間的數(shù)碼。“在時(shí)運(yùn)行數(shù)據(jù)庫修剪”選項(xiàng)只有在“啟用數(shù)據(jù)庫修剪”選項(xiàng)已打開時(shí)才有效。這個(gè)選項(xiàng)使用戶可以指定需運(yùn)行修剪操作的時(shí)間。作為默認(rèn),將在12:00AM時(shí)進(jìn)行修剪(如果啟用了該選項(xiàng))。也可以提供一個(gè)“僅在修剪時(shí)刪除與媒體有關(guān)的數(shù)據(jù)庫記錄”選項(xiàng)。在用戶重新格式化或擦除一個(gè)媒體時(shí),本發(fā)明的系統(tǒng)將刪除屬于這個(gè)磁帶的數(shù)據(jù)庫內(nèi)的記錄。然而,執(zhí)行這個(gè)特別步驟可能要花費(fèi)大量時(shí)間。因此,用戶可以選擇“僅在修剪時(shí)刪除與媒體有關(guān)的數(shù)據(jù)庫記錄”選項(xiàng),將刪除這些記錄推遲到執(zhí)行修剪時(shí)執(zhí)行。“現(xiàn)在提交數(shù)據(jù)庫修剪”選項(xiàng)使用戶可以立即向作業(yè)隊(duì)列提交一個(gè)具有指定的參數(shù)的數(shù)據(jù)庫修剪作業(yè)?!皢⒂眠h(yuǎn)程數(shù)據(jù)庫”選項(xiàng)使服務(wù)器能用一個(gè)遠(yuǎn)程數(shù)據(jù)庫作為它的數(shù)據(jù)庫,無論這個(gè)遠(yuǎn)程數(shù)據(jù)庫是什么類型的。這個(gè)數(shù)據(jù)庫可用來向一個(gè)本地計(jì)算機(jī)提交一個(gè)恢復(fù)作業(yè)。在這里也執(zhí)行對(duì)遠(yuǎn)程數(shù)據(jù)庫的配置。用戶鍵入服務(wù)器名、登錄名、口令和用戶想要啟用的遠(yuǎn)程數(shù)據(jù)庫的服務(wù)器操作系統(tǒng)類型。本發(fā)明的系統(tǒng)還可以包括若干其他類型的管理系統(tǒng)的管理器?;謴?fù)管理器(Restoremanager)用來恢復(fù)已由本發(fā)明的系統(tǒng)備份的數(shù)據(jù)。用戶可以設(shè)置調(diào)度和管理恢復(fù)操作的策略?;謴?fù)管理器可以執(zhí)行數(shù)據(jù)的完全或部分恢復(fù)。數(shù)據(jù)庫管理器(Databasemanager)顯示來自數(shù)據(jù)庫的信息,諸如本發(fā)明的系統(tǒng)處理的作業(yè)、所用的媒體和系統(tǒng)正在使用的設(shè)備之類。作業(yè)狀態(tài)管理器(JobStatusmanager)監(jiān)視來自作業(yè)狀態(tài)管理器窗口的所有暫掛、完成和活動(dòng)的作業(yè)。作業(yè)狀態(tài)管理器還響應(yīng)用戶請(qǐng)求重新安排暫掛或完成的作業(yè)、提交新的作業(yè)、刪除作業(yè)和停止活活動(dòng)業(yè)。每個(gè)完成的作業(yè)都配有日志信息。設(shè)備管理器(Devicesmanager)顯示有關(guān)存儲(chǔ)設(shè)備和媒體的信息。設(shè)備管理器允許用戶改變驅(qū)動(dòng)器壓縮模式和執(zhí)行諸如壓縮、格式化、擦除、彈出和保持之類的媒體功能。報(bào)告管理器(Reportmanager)根據(jù)數(shù)據(jù)庫內(nèi)的數(shù)據(jù)產(chǎn)生報(bào)告。各種報(bào)告包括有關(guān)調(diào)度策略、媒體錯(cuò)誤、會(huì)話、備份設(shè)備和媒體策略的信息。媒體池管理器(MediaPoolmanager)管理、創(chuàng)建和維護(hù)為備份標(biāo)識(shí)方便對(duì)媒體的邏輯建組,以便高效率地安排對(duì)媒體的維護(hù)和再用。用戶可以設(shè)計(jì)適合具體存檔要求的媒體循環(huán)再用方案。一些報(bào)告詳細(xì)列出循環(huán)方案中所用的媒體池的媒體信息,包括媒體狀態(tài)和會(huì)話信息。警告管理器(Alertmanager)用各種通信方法向一個(gè)組織內(nèi)的人員發(fā)送有關(guān)在本發(fā)明的系統(tǒng)運(yùn)行期間出現(xiàn)的事件的消息。每當(dāng)運(yùn)行一個(gè)備份作業(yè),系統(tǒng)將有關(guān)已備份的計(jì)算機(jī)、目錄和文件和所用的媒體記錄在它的數(shù)據(jù)庫內(nèi)。這使用戶不論何時(shí)要恢復(fù)文件都可以確定它們的位置。作為默認(rèn),每當(dāng)用戶對(duì)系統(tǒng)主目錄進(jìn)行備份時(shí),數(shù)據(jù)庫信息也得到備份。用戶可以選擇在每個(gè)備份作業(yè)中都也對(duì)數(shù)據(jù)庫文件進(jìn)行備份,無論是否選擇對(duì)系統(tǒng)主目錄備份。本發(fā)明的系統(tǒng)還提供一些可用于管理文件的實(shí)用程序。例如,如果數(shù)據(jù)庫內(nèi)的數(shù)據(jù)由于任何原因受到損壞,就可以執(zhí)行數(shù)據(jù)庫恢復(fù)?;謴?fù)數(shù)據(jù)庫(RecoverDatabase)實(shí)用程序使用戶可以用一個(gè)數(shù)據(jù)庫備份將信息恢復(fù)到數(shù)據(jù)庫,蓋寫現(xiàn)有的數(shù)據(jù)庫文件。用戶可以在諸如火災(zāi)、水災(zāi)或計(jì)算機(jī)崩潰期間之類的任何丟失數(shù)據(jù)庫文件時(shí)用這個(gè)實(shí)用程序。有一些高級(jí)數(shù)據(jù)庫恢復(fù)選項(xiàng)可用,包括指定恢復(fù)數(shù)據(jù)庫的日期的選項(xiàng)。在這種情況下,將用在這個(gè)日子或這個(gè)日子之前建立的數(shù)據(jù)庫會(huì)話來備份。另一個(gè)選項(xiàng)使用戶可以為作業(yè)指定一些媒體選項(xiàng)。另一個(gè)選項(xiàng)使用戶可以在恢復(fù)作業(yè)前和/或后運(yùn)行一些命令或批處理文件。還提供了一個(gè)使用戶可以確定記錄在作業(yè)隊(duì)列日志內(nèi)的詳細(xì)資料的級(jí)別的選項(xiàng)。可以提供一個(gè)允許將信息插入數(shù)據(jù)庫內(nèi)一些空存儲(chǔ)槽的融合(merge)實(shí)用程序。這個(gè)功能使用戶可以用數(shù)據(jù)庫所駐留的服務(wù)器外的另一個(gè)服務(wù)器來恢復(fù)數(shù)據(jù)。例如,如果用本發(fā)明的系統(tǒng)將一個(gè)數(shù)據(jù)庫備份建在另一個(gè)計(jì)算機(jī)上,用戶就可以用融合實(shí)用程序使媒體信息進(jìn)入系統(tǒng)主目錄的數(shù)據(jù)庫內(nèi)。融合實(shí)用程序因此使用戶可以得到一個(gè)含有一個(gè)或多個(gè)備份會(huì)話的媒體并將信息從這個(gè)媒體附加至一個(gè)現(xiàn)有的數(shù)據(jù)庫。這在詳細(xì)信息已從數(shù)據(jù)庫內(nèi)修剪掉的情況下是有益的。高級(jí)融合選項(xiàng)包括一個(gè)為作業(yè)指定一些媒體選項(xiàng)的選項(xiàng)、一個(gè)在作業(yè)前和/或后運(yùn)行一些命令或批處理文件的選項(xiàng)、一個(gè)確定用戶希望在作業(yè)隊(duì)列日志內(nèi)記錄的詳細(xì)資料的級(jí)別的選項(xiàng)和一個(gè)發(fā)送有關(guān)操作中的事件的消息的選項(xiàng)。掃描(Scan)功能提供有關(guān)任何媒體備份會(huì)話的信息。每個(gè)選來備份的源保存在媒體上,作為一個(gè)獨(dú)立的會(huì)話。用戶可以掃描單個(gè)會(huì)話或整個(gè)媒體。掃描作業(yè)的結(jié)果可以在作業(yè)隊(duì)列內(nèi)看到。這個(gè)功能在用戶試圖恢復(fù)一個(gè)服務(wù)器和需要發(fā)現(xiàn)數(shù)據(jù)庫的最近備份以便予以恢復(fù)的情況下特別有益。如果用戶想要一個(gè)列有已備份的文件的清單,他們也可以用這個(gè)掃描功能。高級(jí)掃描選項(xiàng)包括一個(gè)為作業(yè)指定一些媒體選項(xiàng)的選項(xiàng)、一個(gè)為作業(yè)指定一些常規(guī)選項(xiàng)以掃描具有CRC檢驗(yàn)的文件或可以進(jìn)行數(shù)據(jù)庫記錄的選項(xiàng)、一個(gè)在作業(yè)前和/或后運(yùn)行一些命令或批處理文件的選項(xiàng)、一個(gè)確定用戶希望在作業(yè)隊(duì)列日志內(nèi)記錄的詳細(xì)資料的級(jí)別的選項(xiàng)和一個(gè)發(fā)送有關(guān)操作中的事件的消息的選項(xiàng)。比較(compare)功能將一個(gè)媒體會(huì)話的內(nèi)容與一個(gè)計(jì)算機(jī)上的文件相比較。比較作業(yè)的結(jié)果也可以在作業(yè)隊(duì)列內(nèi)看到。用戶在備份后可以用這個(gè)功能檢驗(yàn)將所有文件拷貝至媒體的備份是否有有錯(cuò)。高級(jí)比較選項(xiàng)包括一個(gè)為作業(yè)指定一些媒體選項(xiàng)的選項(xiàng)、一個(gè)指定是否啟用數(shù)據(jù)庫記錄的選項(xiàng)、一個(gè)在作業(yè)前和/或后運(yùn)行一些命令或批處理文件的選項(xiàng)、一個(gè)確定用戶希望在作業(yè)隊(duì)列日志內(nèi)記錄的詳細(xì)資料的級(jí)別的選項(xiàng)和一個(gè)發(fā)送有關(guān)操作中的事件的消息的選項(xiàng)。計(jì)數(shù)(count)功能對(duì)一個(gè)計(jì)算機(jī)上的文件和目錄進(jìn)行計(jì)數(shù)。計(jì)數(shù)功能的結(jié)果可以在作業(yè)隊(duì)列內(nèi)看到。在一個(gè)拷貝作業(yè)后可以用這個(gè)選項(xiàng)檢驗(yàn)拷貝功能將所有文件從一個(gè)磁盤拷貝到另一個(gè)磁盤上是否有錯(cuò)。高級(jí)計(jì)數(shù)選項(xiàng)包括一個(gè)指定是否啟用數(shù)據(jù)庫記錄的選項(xiàng)、一個(gè)在作業(yè)前/或后運(yùn)行一些命令或批處理文件的選項(xiàng)、一個(gè)確定用戶希望在作業(yè)隊(duì)列日志內(nèi)記錄的詳細(xì)資料的級(jí)別的選項(xiàng)、一個(gè)在對(duì)文件計(jì)數(shù)前掃描文件搜索病毒的選項(xiàng)和一個(gè)發(fā)送有關(guān)操作中的事件的消息的選項(xiàng)。清除(purge)功能使用戶可以從一個(gè)計(jì)算機(jī)刪除文件和目錄。結(jié)果可以在作業(yè)隊(duì)列內(nèi)看到。這個(gè)清除功能使用戶可以從一個(gè)計(jì)算機(jī)刪除文件和目錄。高級(jí)清除選項(xiàng)包括一個(gè)為作業(yè)指定一些常規(guī)選項(xiàng)以刪除目錄或啟用數(shù)據(jù)庫記錄的選項(xiàng)、一個(gè)在作業(yè)前和/或后運(yùn)行一些命令或批處理文件的選項(xiàng)、一個(gè)確定要在作業(yè)隊(duì)列日志內(nèi)記錄的詳細(xì)資料的級(jí)別的選項(xiàng)和一個(gè)發(fā)送有關(guān)操作中的事件的消息的選項(xiàng)??截?copy)功能使用戶可以將文件從一個(gè)位置拷貝到另一個(gè)位置。例如,用戶可以在一個(gè)本地計(jì)算機(jī)上運(yùn)行拷貝作業(yè),將文件和目錄存儲(chǔ)在另一個(gè)將要給媒體備份的計(jì)算機(jī)上??截愡x項(xiàng)確定在拷貝操作期間或拷貝操作后出現(xiàn)的有關(guān)動(dòng)作。例如,提供了一個(gè)選項(xiàng),用來指定什么時(shí)候重試打開文件和文件共享選項(xiàng)。還提供了一個(gè)選項(xiàng),用來指定是否啟用數(shù)據(jù)庫記錄。另一個(gè)選項(xiàng)用來在目的地媒體上建立源計(jì)算機(jī)的一個(gè)鏡像。提供了一個(gè)選項(xiàng),用來從源計(jì)算機(jī)拷貝文件和目錄和刪除所有在源計(jì)算機(jī)上沒有出現(xiàn)的文件和目錄。還提供了一個(gè)選項(xiàng),用來在將一些文件復(fù)制到目的地計(jì)算機(jī)后從源計(jì)算機(jī)刪除這些文件。一個(gè)選項(xiàng)可用來將供文件訪問用的文件級(jí)安全信息拷貝到一些NTFS卷上。還提供了一個(gè)選項(xiàng),用來在作業(yè)運(yùn)行前和/或后運(yùn)行一些命令或批處理文件。一個(gè)選項(xiàng)使用戶可以確定他們想要在作業(yè)隊(duì)列日志內(nèi)記錄的詳細(xì)資料。另一個(gè)選項(xiàng)用來在拷貝文件前掃描文件搜索病毒。另一個(gè)選項(xiàng)用來發(fā)送有關(guān)在操作中的事件的消息。本發(fā)明的系統(tǒng)允許采用多流注(multiplestreaming)通過并行運(yùn)行一些存儲(chǔ)操作對(duì)數(shù)據(jù)進(jìn)行備份。也就是說,本發(fā)明的系統(tǒng)可以配置成根據(jù)磁帶設(shè)備的可用性自動(dòng)或響應(yīng)用戶所選的選項(xiàng)為一個(gè)備份作業(yè)形成多個(gè)備份流。這種方法通過將數(shù)據(jù)分布在一些并行的數(shù)據(jù)流內(nèi),大大地減少了備份操作所需的時(shí)間。數(shù)據(jù)災(zāi)難性丟失后也可以更快得到恢復(fù),因?yàn)樗锌捎玫脑O(shè)備可以一起工作以恢復(fù)所有或大部分備份數(shù)據(jù)。多流注因此使用戶可以通過將單個(gè)備份作業(yè)分成使用兩個(gè)或更多個(gè)磁帶設(shè)備的多個(gè)作業(yè)利用系統(tǒng)上所有可用的磁帶設(shè)備。結(jié)果,多流注與串行方法相比增大了整個(gè)備份吞吐量。如果在系統(tǒng)內(nèi)有一個(gè)以上驅(qū)動(dòng)器和一個(gè)以上媒體卷可用,用戶就可以選擇采用多流注。多流注對(duì)本地設(shè)備和遠(yuǎn)程設(shè)備都可起作用。采用多流注選項(xiàng)的對(duì)遠(yuǎn)程源的備份在節(jié)點(diǎn)(計(jì)算機(jī))級(jí)予以支持。用戶可以利用所有的存儲(chǔ)媒體設(shè)備,或者可以只指定單個(gè)存儲(chǔ)媒體設(shè)備組(如果系統(tǒng)內(nèi)有多種存儲(chǔ)媒體設(shè)備的話)。如果系統(tǒng)裝有一個(gè)庫選項(xiàng)(如下面將要說明的那樣),多流注(在選擇了該選項(xiàng)時(shí))將運(yùn)用所有可用的庫設(shè)備。如果沒裝有庫選項(xiàng),用戶可以將存儲(chǔ)媒體設(shè)備分成一些獨(dú)立的組。所生成的流(從作業(yè))的總數(shù)將取決于可用的存儲(chǔ)媒體設(shè)備的數(shù)目,如果它是一個(gè)轉(zhuǎn)換器(changer)的話;否則,將取決于存儲(chǔ)媒體設(shè)備組的數(shù)目。多流注對(duì)于正規(guī)文件在媒體卷級(jí)執(zhí)行(兩個(gè)媒體卷可以同時(shí)在兩個(gè)獨(dú)立的設(shè)備上運(yùn)行),而對(duì)于本地?cái)?shù)據(jù)庫服務(wù)器在數(shù)據(jù)庫級(jí)執(zhí)行。多流注對(duì)于優(yōu)選共享文件夾、遠(yuǎn)程數(shù)據(jù)庫服務(wù)器和WindowsNT/2000客戶機(jī)代理在節(jié)點(diǎn)級(jí)執(zhí)行。系統(tǒng)可以使與掛在系統(tǒng)上的設(shè)備/組的個(gè)數(shù)一樣多的作業(yè)同時(shí)運(yùn)行。在選擇了一個(gè)多流注選項(xiàng)的情況下,在用戶創(chuàng)建一個(gè)主作業(yè)時(shí),這個(gè)主作業(yè)將為可用的各個(gè)媒體卷或存儲(chǔ)媒體設(shè)備觸發(fā)一些從作業(yè)。一個(gè)作業(yè)在一個(gè)媒體卷上完成時(shí),另一個(gè)作業(yè)再執(zhí)行,直到不再有作業(yè)要運(yùn)行為止。在應(yīng)用多流注時(shí),用戶可能希望選擇一個(gè)媒體池,以防磁帶被蓋寫。獨(dú)立的磁帶設(shè)備應(yīng)按正規(guī)驅(qū)動(dòng)器配置成一些獨(dú)立的組。對(duì)于具有轉(zhuǎn)換器的磁帶系統(tǒng)來說,它們可以配置成處在同一個(gè)組內(nèi)。撤消一個(gè)主作業(yè),意味著撤消所有的從作業(yè)。用戶可以撤消主作業(yè)或任何一個(gè)從作業(yè),以完全撤消整個(gè)多流注作業(yè)。如在這里所說明的那樣,在一個(gè)作業(yè)列入作業(yè)隊(duì)列后,在這個(gè)作業(yè)執(zhí)行前或后可以執(zhí)行一些操作。例如,可以將一些消息發(fā)送給各工作人員之類。這些操作稱為前/后操作。在主作業(yè)級(jí)支持前/后操作和注釋。也就是說,前/后操作將不對(duì)每個(gè)從作業(yè)執(zhí)行。而是,前/后操作在分成從作業(yè)的整個(gè)作業(yè)運(yùn)行前或后執(zhí)行。每個(gè)從作業(yè)在作業(yè)隊(duì)列內(nèi)將具有一個(gè)默認(rèn)的作業(yè)說明,呈現(xiàn)為MULTISTREAM[JOB[MID]]SUBJOB[SID],其中MID為主作業(yè)ID而SID為序列ID。如果系統(tǒng)只有一個(gè)存儲(chǔ)媒體設(shè)備,就略去這個(gè)多流注選項(xiàng)。為了在多流注作業(yè)情況下達(dá)到最佳性能,可以使用具有多個(gè)各配有至少256MB內(nèi)存的處理器的高端服務(wù)器計(jì)算機(jī)。圖15為說明按照本發(fā)明的一個(gè)實(shí)施例設(shè)計(jì)的多流注備份方法的流程圖。在步驟S2,用戶創(chuàng)建一個(gè)主備份作業(yè)。在步驟S4,作業(yè)引擎掃描作業(yè)隊(duì)列,根據(jù)所安排的作業(yè)運(yùn)行日期和時(shí)間搜索運(yùn)行準(zhǔn)備就緒的作業(yè)。在步驟S6,根據(jù)所安排的啟動(dòng)時(shí)間確定是否有一個(gè)作業(yè)要運(yùn)行。如果不是一個(gè)主作業(yè)要運(yùn)行的時(shí)間(步驟S6的確定結(jié)果為No),作業(yè)引擎繼續(xù)掃描作業(yè)隊(duì)列,直到到達(dá)主作業(yè)要運(yùn)行的時(shí)間(步驟S6的確定結(jié)果為Yes)。在步驟S8,系統(tǒng)將這個(gè)主作業(yè)拆成多個(gè)較小的從作業(yè),每個(gè)從作業(yè)與單個(gè)源實(shí)體(文件系統(tǒng)、數(shù)據(jù)庫等)的備份/恢復(fù)相應(yīng)。然后,系統(tǒng)將這些較小的從作業(yè)發(fā)送給作業(yè)隊(duì)列(步驟S10)。在步驟S12,作業(yè)引擎繼續(xù)掃描作業(yè)隊(duì)列,搜索作業(yè)。這一直繼續(xù)到檢測(cè)到新的從作業(yè)(步驟S14的確定結(jié)果為Yes)。在檢測(cè)到新的從作業(yè)時(shí),作業(yè)引擎與磁帶引擎通信,確定是否有一個(gè)磁帶設(shè)備可以用來進(jìn)行備份(無循環(huán),步驟S16)。這一直繼續(xù)到確定有一個(gè)磁帶設(shè)備可用。一旦確定有一個(gè)磁帶設(shè)備可用(步驟S16的確定結(jié)果為Yes),就對(duì)每個(gè)具有一個(gè)可用的存儲(chǔ)設(shè)備的作業(yè)啟動(dòng)這些較小的從作業(yè)(步驟S18)。每個(gè)從作業(yè)完成時(shí),返回給磁帶引擎指出這個(gè)從作業(yè)所占用的磁帶設(shè)備又成為可用的信息(步驟S20)。作業(yè)引擎于是掃描作業(yè)隊(duì)列,搜索下一個(gè)從作業(yè),這過程一直重復(fù)到所有的從作業(yè)都得到執(zhí)行。在步驟S20確定是否所有的作業(yè)都已完成。如果沒有完成(步驟S20的確定結(jié)果為No),過程再掃描作業(yè)隊(duì)列,搜索一個(gè)要執(zhí)行的從作業(yè)(步驟S12)。如果每個(gè)從作業(yè)都已完成(步驟S20的確定結(jié)果為Yes),過程結(jié)束(步驟S22),于是完成了這個(gè)主作業(yè)。在這時(shí)候,可以執(zhí)行任何后作業(yè)操作。本發(fā)明的系統(tǒng)也能執(zhí)行無服務(wù)器備份(serverlessbackup),這為系統(tǒng)管理人員解決了許多與傳統(tǒng)的備份有關(guān)的問題。無服務(wù)器備份使用戶可以執(zhí)行對(duì)系統(tǒng)CPU的影響幾乎為零的備份,而且使服務(wù)器上的應(yīng)用在備份正在進(jìn)行的同時(shí)繼續(xù)運(yùn)行。無服務(wù)器備份不需要備份窗口,可以給出最高的可能備份/恢復(fù)性能,而且使應(yīng)用可以在備份正在執(zhí)行的同時(shí)繼續(xù)訪問數(shù)據(jù)。無服務(wù)器備份用工業(yè)標(biāo)準(zhǔn)的擴(kuò)展拷貝命令(extendedcopycommand)實(shí)現(xiàn),支持具有支持?jǐn)U展拷貝命令的設(shè)備的SAN環(huán)境。采用擴(kuò)展拷貝命令,無服務(wù)器備份實(shí)際上將服務(wù)器完全排除在數(shù)據(jù)備份傳送路徑之外,達(dá)到直接從磁盤向磁帶或從磁帶到磁盤的數(shù)據(jù)傳送。啟動(dòng)數(shù)據(jù)傳送是在服務(wù)器級(jí)發(fā)生的唯一活動(dòng),實(shí)際數(shù)據(jù)傳送在SAN上數(shù)據(jù)移動(dòng)器(DataMover)級(jí)進(jìn)行。按照本發(fā)明設(shè)計(jì)的無服務(wù)器備份用一些“數(shù)據(jù)移動(dòng)器”在磁盤和磁帶之間傳送數(shù)據(jù)。數(shù)據(jù)移動(dòng)器是支持?jǐn)U展拷貝命令的設(shè)備,不需要總是將數(shù)據(jù)帶至服務(wù)器,從而獲得最短的數(shù)據(jù)通路。這顯著地提高了備份性能,達(dá)到最高的可能備份/恢復(fù)速度。這使應(yīng)用可以在備份正在進(jìn)行的同時(shí)繼續(xù)訪問服務(wù)器。這個(gè)功能不需要備份窗口,使系統(tǒng)管理者可以在任何時(shí)間執(zhí)行備份。圖16示出了無服務(wù)器備份的系統(tǒng)的一個(gè)例子。如圖所示,這個(gè)系統(tǒng)包括服務(wù)器150a-150n、磁盤陣列152和備份存儲(chǔ)媒體154,它們都掛在SAN上,由一個(gè)可以包括一些路由器、網(wǎng)橋等的高速網(wǎng)絡(luò)160互連在一起。磁盤陣列152能存儲(chǔ)來自各個(gè)工作站(未示出)的數(shù)據(jù)。SAN支持可以將數(shù)據(jù)直接從磁盤陣列152發(fā)送給備份存儲(chǔ)媒體154而不必經(jīng)過服務(wù)器的“擴(kuò)展拷貝”。如圖16中箭頭A所示,備份數(shù)據(jù)的數(shù)據(jù)通路起于磁盤陣列152,穿過網(wǎng)絡(luò)160到達(dá)備份存儲(chǔ)媒體154。由于這個(gè)數(shù)據(jù)通路不包括服務(wù)器的使用,因此備份可以認(rèn)為是無服務(wù)器的。唯一牽涉到服務(wù)器的是接收有關(guān)備份的數(shù)據(jù)。例如,服務(wù)器可以與系統(tǒng)各部分通信,獲取有關(guān)備份的元數(shù)據(jù)(metadata)等。服務(wù)器還可以用來啟動(dòng)和控制備份過程,但是要備份的數(shù)據(jù)直接從磁盤陣列152移動(dòng)到備份存儲(chǔ)媒體154而不經(jīng)過任何服務(wù)器的CPU。無服務(wù)器備份的一個(gè)方面是以分析每個(gè)媒體卷的文件映射表(file-mappingtable)為基礎(chǔ)。圖23為說明按照本發(fā)明的一個(gè)實(shí)施例設(shè)計(jì)的無服務(wù)器備份的情況的流程圖。系統(tǒng)首先打開NT文件系統(tǒng)(NTFS)根目錄和結(jié)構(gòu)(步驟S70),分析對(duì)于每個(gè)文件的分配表的根目錄和結(jié)構(gòu)(步驟S72),得出每個(gè)文件的屬性(步驟S74)。根據(jù)對(duì)每個(gè)文件的屬性的檢驗(yàn),系統(tǒng)確定文件是駐留的(resident)還是非駐留的(步驟S76)。如果文件是駐留的(步驟S76的確定結(jié)果為Yes),將整個(gè)屬性備份(步驟S80)。如果不是駐留的(步驟S76的確定結(jié)果為No),系統(tǒng)將文件屬性以及屬于這文件的數(shù)據(jù)塊備份(步驟S78),因此為駐留在媒體卷上的所有文件映射整個(gè)媒體卷,以獲得完整的數(shù)據(jù)保護(hù)。在一個(gè)支持文件分配表(FAT)的文件系統(tǒng)的系統(tǒng)上,系統(tǒng)可以通過解釋FAT模式來解釋這些塊。所得到的方案是采用能提供文件級(jí)恢復(fù)的擴(kuò)展拷貝技術(shù)的無服務(wù)器備份。如圖24所示,對(duì)于NTFS,本發(fā)明的系統(tǒng)打開一個(gè)媒體卷(步驟S82),讀入引導(dǎo)扇區(qū)(步驟S82),得到基本輸入輸出系統(tǒng)(BIOS)的參數(shù)塊(BPB)(步驟S86)。然后,系統(tǒng)按索引分配緩存器(IndexAllocationBuffer)確定扇區(qū)大小、簇大小、文件記錄段大小(步驟S88)。首先,系統(tǒng)根據(jù)索引根條目遍歷根目錄(根據(jù)根目錄的文件引用,系統(tǒng)讀取根目錄的文件記錄段)(步驟S90),確定它是否為一個(gè)文件(步驟S92)。如果是一個(gè)文件(步驟S92的確定結(jié)果為Yes),系統(tǒng)就檢查這個(gè)文件的屬性(安全性、數(shù)據(jù)屬性等),備份相應(yīng)的屬性值。然后,確定文件是駐留的還是非駐留的(步驟S96)。如果值是一個(gè)駐留值(步驟S96的確定結(jié)果為Yes),系統(tǒng)就備份含有這個(gè)屬性的文件記錄段。如果是非駐留的(步驟S98的確定結(jié)果為No),系統(tǒng)就得出LCN/VCN(運(yùn)行表),將這信息存儲(chǔ)起來(步驟S100)。如果不是一個(gè)文件(步驟S92的確定結(jié)果為No),就執(zhí)行其他步驟(步驟S102)。例如,如果根條目是索引節(jié)點(diǎn),系統(tǒng)就考察索引分配屬性。如果它是一個(gè)目錄,系統(tǒng)就遍歷整個(gè)目錄。于是,系統(tǒng)將根據(jù)位圖添加所有還不在這表內(nèi)的其他簇。如圖25所示,對(duì)于FAT/FAT32,系統(tǒng)打開媒體卷(步驟S104),讀入引導(dǎo)扇區(qū)(步驟S106),得到BPB(步驟S108)。系統(tǒng)讀入根目錄(步驟S110),根據(jù)根內(nèi)每個(gè)條目,系統(tǒng)可以對(duì)它進(jìn)行各種分析。例如,如果它是一個(gè)子目錄(步驟S112),系統(tǒng)就確定這個(gè)目錄的簇鏈(步驟S114),讀入這個(gè)子目錄(步驟S116)并進(jìn)行遍歷(步驟S118)。如果它是一個(gè)文件(步驟S112),系統(tǒng)就利用一個(gè)FAT表確定這個(gè)文件的簇鏈(步驟S120)。對(duì)于快照(snapshot)的情況,在備份前,系統(tǒng)對(duì)媒體卷的高速緩存進(jìn)行清倉。然后,系統(tǒng)凍結(jié)媒體卷(例如,取一個(gè)快照)。在備份分析階段期間,一個(gè)快照驅(qū)動(dòng)器將原始數(shù)據(jù)返回到一個(gè)無服務(wù)器/圖像,用于實(shí)際數(shù)據(jù)備份。對(duì)于無服務(wù)器系統(tǒng)來說,由于數(shù)據(jù)移動(dòng)發(fā)生于原始磁盤,因此數(shù)據(jù)移動(dòng)器不能歸還原始數(shù)據(jù)。因此,在無服務(wù)器備份最后,系統(tǒng)可以請(qǐng)求快照驅(qū)動(dòng)器給出這些經(jīng)修改的簇的所有原始數(shù)據(jù),系統(tǒng)將在恢復(fù)期間應(yīng)用這信息。圖17示出了執(zhí)行無服務(wù)器備份的系統(tǒng)流程的另一個(gè)例子。為了完成無服務(wù)器備份,本發(fā)明的系統(tǒng)獲取磁盤陣列152或部分磁盤陣列的一個(gè)靜態(tài)圖(staticview)(步驟S40),將磁盤設(shè)備上的數(shù)據(jù)塊映射到它們所屬的文件(步驟S42),再將數(shù)據(jù)直接從磁盤陣列152移動(dòng)到備份存儲(chǔ)媒體154(步驟S44)上。為了得到磁盤陣列內(nèi)數(shù)據(jù)的靜態(tài)圖,本發(fā)明的系統(tǒng)可以使用一個(gè)備份鏡像系統(tǒng)。圖18示出了用備份鏡像系統(tǒng)得到磁盤陣列內(nèi)數(shù)據(jù)的靜態(tài)圖的流程的例子。首先,建立鏡像(步驟S46)。然后,中止任何寫磁盤陣列的應(yīng)用(步驟S48),再分割鏡像(步驟S50)。得到一個(gè)靜態(tài)拷貝的另一種方式是利用一個(gè)快照。在這種情況下,如圖19所示,系統(tǒng)首先中止任何寫磁盤的應(yīng)用(步驟S52),然后生成快照(步驟S54)。系統(tǒng)現(xiàn)在有了要備份的磁盤陣列的靜態(tài)圖。在數(shù)據(jù)從磁盤陣列152傳送給備份存儲(chǔ)媒體154時(shí),數(shù)據(jù)可以作為數(shù)據(jù)塊傳送而不是作為文件傳送。因此,為了最后恢復(fù)文件,系統(tǒng)生成一個(gè)標(biāo)識(shí)哪些塊屬于哪些文件的表或映射。例如,如圖20所示,文件A由數(shù)據(jù)塊A、B和C組成。文件B由數(shù)據(jù)塊D、B和F組成。在生成快照或分割鏡像時(shí),這些映射將保持不變,直到生成另一個(gè)分割鏡像或快照。本發(fā)明的系統(tǒng)為文件A和文件B生成記錄數(shù)據(jù)塊關(guān)聯(lián)的表或映射。在用戶然后試圖例如恢復(fù)文件A時(shí),本發(fā)明的系統(tǒng)查出與文件A關(guān)聯(lián)的塊予以恢復(fù)。從磁盤陣列152發(fā)送給備份存儲(chǔ)媒體154的那些數(shù)據(jù)塊用擴(kuò)展拷貝命令直接傳送。在從無服務(wù)器備份系統(tǒng)恢復(fù)數(shù)據(jù)時(shí),用戶具有是在恢復(fù)整個(gè)驅(qū)動(dòng)器的圖像級(jí)恢復(fù)數(shù)據(jù)還是在恢復(fù)逐個(gè)文件或目錄的文件級(jí)恢復(fù)數(shù)據(jù)的選項(xiàng)。圖像級(jí)恢復(fù)將整個(gè)圖像從備份存儲(chǔ)媒體154拷貝回磁盤陣列152上。文件級(jí)恢復(fù)就象非無服務(wù)器恢復(fù)那樣,將所選文件從備份存儲(chǔ)媒體154拷貝到磁盤陣列152上。為了執(zhí)行圖像級(jí)無服務(wù)器恢復(fù),本發(fā)明的系統(tǒng)生成數(shù)據(jù)所要恢復(fù)成的一個(gè)快照或分割鏡像。然后,本發(fā)明的系統(tǒng)用擴(kuò)展拷貝命令將備份數(shù)據(jù)直接從備份存儲(chǔ)媒體154恢復(fù)到磁盤152上。在以上所說明的實(shí)施例中,在取驅(qū)動(dòng)器的快照或圖像時(shí)中止任何寫驅(qū)動(dòng)器的應(yīng)用。然而,也可以不中止寫驅(qū)動(dòng)器的應(yīng)用,本發(fā)明的系統(tǒng)還能等待一個(gè)可取的時(shí)段,在這個(gè)時(shí)段內(nèi)取快照或圖像。例如,系統(tǒng)可以使驅(qū)動(dòng)器152同步,等待一個(gè)對(duì)驅(qū)動(dòng)器152寫休止的時(shí)段。作為默認(rèn),系統(tǒng)尋找的在凍結(jié)驅(qū)動(dòng)器(例如,取快照)前的寫休止時(shí)段為3秒。然而,這個(gè)時(shí)段可以由用戶按需要修改。如果不能發(fā)現(xiàn)所規(guī)定的寫休止時(shí)段(3秒),同步在規(guī)定的超時(shí)時(shí)段(例如80秒)后超時(shí),凍結(jié)請(qǐng)求失敗。規(guī)定的寫休止時(shí)段是驅(qū)動(dòng)器上應(yīng)出現(xiàn)的驅(qū)動(dòng)器可安全凍結(jié)前的休止?fàn)顟B(tài)的秒數(shù)。超時(shí)時(shí)段也可以由用戶按需要修改。認(rèn)為驅(qū)動(dòng)器可安全凍結(jié)后,就可以執(zhí)行對(duì)驅(qū)動(dòng)器快速拍攝或成像。這樣,就不用迫使一些應(yīng)用中途停止它們可以執(zhí)行的過程。本發(fā)明的系統(tǒng)還可以包括一些管理一個(gè)或多個(gè)磁帶庫的GUI。庫是一個(gè)含有帶有一個(gè)諸如機(jī)器人撿取器之類的自動(dòng)媒體運(yùn)載系統(tǒng)的一個(gè)或多個(gè)磁帶驅(qū)動(dòng)器的設(shè)備,允許備份大量數(shù)據(jù)而不用人工干預(yù)。一個(gè)庫可以包括各種包括條型碼ID(如果庫支持條型碼ID的話)的組成部分。本發(fā)明的系統(tǒng)可以用條型碼ID通過讀取附在媒體上的條型碼迅速確定各個(gè)媒體的位置。庫還可以包括一個(gè)或多個(gè)存儲(chǔ)倉(magazine)(或磁帶存儲(chǔ)器(bin)),存儲(chǔ)一組或多組存儲(chǔ)媒體(諸如磁帶媒體)。機(jī)器人撿取器可以在存儲(chǔ)槽和驅(qū)動(dòng)器之間移動(dòng)存儲(chǔ)媒體單元。庫可以包括一個(gè)或多個(gè)在一個(gè)在計(jì)算機(jī)或服務(wù)器與存儲(chǔ)媒體之間傳送(備份或恢復(fù))數(shù)據(jù)的設(shè)備內(nèi)的驅(qū)動(dòng)器。一個(gè)庫可以含有一個(gè)或多個(gè)驅(qū)動(dòng)器,以及從一個(gè)到幾百個(gè)存儲(chǔ)倉。較小的庫有時(shí)稱為自動(dòng)裝載器(autoloader)或轉(zhuǎn)換器(changer)。作為在這里使用的,所謂“庫”是指具有任何容量的庫。一個(gè)庫可以認(rèn)為與單個(gè)存儲(chǔ)驅(qū)動(dòng)器類似。然而,一個(gè)主要差別是庫通常使用至少兩個(gè)SCSIID,一個(gè)用于庫本身而另一個(gè)用于庫的驅(qū)動(dòng)器。一些庫可以使用單個(gè)SCSIID。在一個(gè)庫只用一個(gè)SCSIID時(shí),這個(gè)庫和庫驅(qū)動(dòng)器可以各分配有一個(gè)邏輯單元號(hào)(LUN),以便區(qū)分驅(qū)動(dòng)器和庫。單個(gè)SCSIID實(shí)際上分成兩個(gè)ID。使用一個(gè)庫與使用一些獨(dú)立存儲(chǔ)單元相比有一些優(yōu)點(diǎn)。例如,使用一個(gè)庫,在備份和恢復(fù)操作期間就不需要人工干預(yù)。此外,庫可以含有多個(gè)存儲(chǔ)驅(qū)動(dòng)器和大量媒體,因此具有提供大容量的能力。本發(fā)明的系統(tǒng)能支持具有多個(gè)驅(qū)動(dòng)器的庫和具有單個(gè)驅(qū)動(dòng)器的庫。本發(fā)明的系統(tǒng)也可以支持多個(gè)庫。本發(fā)明的系統(tǒng)允許用戶從一個(gè)位置跟蹤和控制庫的初始化過程。對(duì)于多驅(qū)動(dòng)器的庫,磁帶引擎用所有的驅(qū)動(dòng)器執(zhí)行初始化過程。本發(fā)明的系統(tǒng)還允許多個(gè)同時(shí)的設(shè)備管理功能,包括從任何規(guī)定的存儲(chǔ)槽的存儲(chǔ)驅(qū)動(dòng)器清潔。還為各種庫設(shè)備管理功能提供了支持,包括存儲(chǔ)槽區(qū)格式化、存儲(chǔ)槽區(qū)擦除(迅速和長(zhǎng)時(shí)間的)、引入/導(dǎo)出、存儲(chǔ)槽編目、存儲(chǔ)倉安裝、存儲(chǔ)倉卸下、庫驅(qū)動(dòng)器清潔。本發(fā)明的系統(tǒng)能利用一個(gè)庫的所有可用驅(qū)動(dòng)器。如果有多個(gè)驅(qū)動(dòng)器可用,一些設(shè)備管理功能可以同時(shí)執(zhí)行。本發(fā)明的系統(tǒng)可以通過讀取可以附在媒體上的條型碼迅速確定各個(gè)媒體的位置。安裝完成和首次啟動(dòng)磁帶引擎后,對(duì)整個(gè)庫進(jìn)行編目和記錄。本發(fā)明的系統(tǒng)提供允許安排庫清空的設(shè)備配置,如果庫支持這個(gè)功能的話??梢詫旆纸M。庫組采用與設(shè)備組(例如服務(wù)器組)相同的概念,只是庫組是基于存儲(chǔ)槽的??梢赃x擇一個(gè)庫內(nèi)的任何存儲(chǔ)槽形成一個(gè)庫組。如果庫用完了所裝的磁帶,用戶可以插入一個(gè)新磁帶,而本發(fā)明的系統(tǒng)將能將這個(gè)磁帶標(biāo)識(shí)為這個(gè)預(yù)先規(guī)定的組的一部分。本發(fā)明的系統(tǒng)可以對(duì)新的媒體編目,使用戶可以將新的媒體插入一個(gè)庫內(nèi),然后繼續(xù)備份或恢復(fù)操作而不中斷。如果多驅(qū)動(dòng)器庫內(nèi)有一個(gè)驅(qū)動(dòng)器損壞,可以將這個(gè)損壞的驅(qū)動(dòng)器標(biāo)為離線。這使磁帶引擎可以用庫內(nèi)剩下的沒有損壞的驅(qū)動(dòng)器繼續(xù)進(jìn)行操作。本發(fā)明的系統(tǒng)可以按用戶的偏好用名稱或存儲(chǔ)槽號(hào)搜索一個(gè)媒體。本發(fā)明的系統(tǒng)提供了對(duì)大型庫的支持,允許以一個(gè)清單向用戶顯示一個(gè)具有1000個(gè)以上的存儲(chǔ)槽的轉(zhuǎn)換器。存儲(chǔ)槽可以用大圖標(biāo)、小圖標(biāo)、詳細(xì)資料和列表四種方式顯示。庫可以用一個(gè)設(shè)備配置菜單配置。首先,從設(shè)備配置菜單中選擇一個(gè)磁帶庫。于是出現(xiàn)一個(gè)庫設(shè)置屏面。如果磁帶引擎正在運(yùn)行,就會(huì)出現(xiàn)一個(gè)窗口讓用戶停止這個(gè)引擎。為了配置一個(gè)庫設(shè)備,應(yīng)該停止磁帶引擎。如果這個(gè)庫支持設(shè)備序列號(hào),驅(qū)動(dòng)器應(yīng)該已是配置好的,因此將在庫設(shè)備清單內(nèi)出現(xiàn)。如果驅(qū)動(dòng)器沒有自動(dòng)地分配給這個(gè)庫,可以手動(dòng)予以分配。這可以通過首先加亮驅(qū)動(dòng)器和庫再點(diǎn)擊“分配”按鈕來完成。將一個(gè)驅(qū)動(dòng)器分配給一個(gè)庫使本發(fā)明的系統(tǒng)知道在這個(gè)庫內(nèi)存在這個(gè)驅(qū)動(dòng)器。如果手動(dòng)分配驅(qū)動(dòng)器,多驅(qū)動(dòng)器庫內(nèi)的驅(qū)動(dòng)器應(yīng)該按正確次序分配。例如,通常庫由廠商配置成第一個(gè)庫驅(qū)動(dòng)器具有最低的SCSIID號(hào)而最后一個(gè)庫驅(qū)動(dòng)器具有最高的SCSIID號(hào)。當(dāng)然,并不是必需要這樣。然后,出現(xiàn)下一個(gè)設(shè)置窗口。用戶加亮這個(gè)庫再點(diǎn)擊“特性”按鈕,于是出現(xiàn)一個(gè)特性對(duì)話框。如果裝有條形碼讀出器,特性對(duì)話框允許用戶指定哪個(gè)存儲(chǔ)槽容納清潔磁帶(如果有的話)。配置庫后,本發(fā)明的系統(tǒng)運(yùn)行編目。在這個(gè)階段,用戶可以將驅(qū)動(dòng)器標(biāo)為在線或離線。這樣,可以將損壞的驅(qū)動(dòng)器(在一個(gè)多驅(qū)動(dòng)器庫內(nèi))標(biāo)為離線,因此本發(fā)明的系統(tǒng)可以用剩下的未損壞的驅(qū)動(dòng)器繼續(xù)操作。在驅(qū)動(dòng)器得到修復(fù)或替換時(shí),通過再執(zhí)行上述庫設(shè)置程序很容易使它返回在線。本發(fā)明的系統(tǒng)還包括一個(gè)適應(yīng)很大范圍的存儲(chǔ)要求的虛擬庫(virtuallibrary)功能。這個(gè)虛擬庫功能使物理庫配置成一些較小的虛擬(邏輯)庫而仍然共享相同的機(jī)器人、引入/導(dǎo)出存儲(chǔ)槽和清潔媒體。虛擬庫功能提供將大型庫配置成一些較小的使用戶能產(chǎn)生RAID級(jí)設(shè)備和/或獨(dú)立磁帶庫的各種組合的虛擬庫的靈活性??梢杂靡粋€(gè)虛擬庫配置實(shí)用程序來創(chuàng)建所有的虛擬庫。這個(gè)實(shí)用程序允許用戶定義虛擬庫和它們的參數(shù),包括庫所需的存儲(chǔ)槽和驅(qū)動(dòng)器的數(shù)目。最小,一個(gè)虛擬庫應(yīng)該具有至少一個(gè)存儲(chǔ)槽和一個(gè)與之關(guān)聯(lián)的驅(qū)動(dòng)器。用戶可以用以下步驟創(chuàng)建一個(gè)虛擬庫。首先,用戶選擇設(shè)備配置菜單。點(diǎn)擊下一步按鈕后,顯示一個(gè)設(shè)備配置對(duì)話框。用戶可以選擇虛擬庫,然后點(diǎn)擊下一步按鈕。于是顯示一個(gè)屏面,使用戶可以從一個(gè)可用庫窗口中選擇需配置入一個(gè)虛擬庫的庫。選取后,在詳細(xì)資料欄內(nèi)顯示與這個(gè)父物理庫關(guān)聯(lián)的特征。還顯示與適配卡、SCSI總線、SCSIID和LUN關(guān)聯(lián)的信息。此外,還有一欄顯示這個(gè)虛擬庫可用的存儲(chǔ)槽的總數(shù)。從所顯示的庫樹中,用戶可以選擇需與新創(chuàng)建的虛擬庫關(guān)聯(lián)的驅(qū)動(dòng)器。驅(qū)動(dòng)器可以用任何次序分配給一個(gè)虛擬庫,但是虛擬庫之間不能共享驅(qū)動(dòng)器。此外,每個(gè)虛擬庫應(yīng)具有分配給它的至少一個(gè)驅(qū)動(dòng)器和一個(gè)存儲(chǔ)槽。用戶然后選擇需分配給這個(gè)虛擬庫的存儲(chǔ)槽的數(shù)目。于是在虛擬庫窗口內(nèi)顯示這個(gè)新創(chuàng)建的虛擬庫。如果一個(gè)特定的庫在這個(gè)步驟后仍然具有未分配的驅(qū)動(dòng)器,這個(gè)可用資源將在一個(gè)“可用庫”窗口內(nèi)顯示??梢詫⑴浜瞎ぷ鞯恼麄€(gè)物理庫配置成虛擬庫。一個(gè)所選物理庫的所有驅(qū)動(dòng)器和存儲(chǔ)槽都可使用。本發(fā)明的系統(tǒng)允許將一個(gè)庫內(nèi)的這些存儲(chǔ)槽分成一些組。將存儲(chǔ)槽分成組允許幾種類型的作業(yè)同時(shí)運(yùn)行。此外,如果在一個(gè)組內(nèi)有幾個(gè)存儲(chǔ)槽可用,你可以讓這個(gè)庫為你橫跨組內(nèi)的媒體。作為默認(rèn),第一次啟動(dòng)本發(fā)明的系統(tǒng)時(shí),每個(gè)掛到計(jì)算機(jī)上的庫內(nèi)的所有存儲(chǔ)槽自動(dòng)地分配給這個(gè)庫組。例如,有兩個(gè)庫掛的到計(jì)算機(jī)上,就有兩個(gè)庫組。第一個(gè)庫內(nèi)的所有存儲(chǔ)槽分配給GROUP0,而第二個(gè)庫內(nèi)的所有存儲(chǔ)槽分配給GROUP1??梢员3诌@些庫組的名稱,或者用戶可以對(duì)它們重新分組和重新命名。由于將一個(gè)庫內(nèi)的每個(gè)存儲(chǔ)槽看作一個(gè)虛擬存儲(chǔ)驅(qū)動(dòng)器,因此每個(gè)存儲(chǔ)槽可以被分配它本身的組。本發(fā)明的系統(tǒng)允許用戶用一個(gè)GUI對(duì)庫進(jìn)行配置。用戶可以通過啟動(dòng)一個(gè)“設(shè)備管理器”配置一個(gè)庫(或修改對(duì)一個(gè)庫的配置)。系統(tǒng)提取庫設(shè)備信息后,用戶可以選擇一個(gè)“設(shè)備”窗口,找到和選擇他們希望配置的庫設(shè)備。用戶將看到一個(gè)諸如圖21所示的屏面。為了配置一個(gè)設(shè)備,在出現(xiàn)一個(gè)“設(shè)備組配置”窗口時(shí),用戶點(diǎn)擊“設(shè)備”標(biāo)簽161?!霸O(shè)備”窗口(圖22)有兩個(gè)子窗口。左側(cè)窗口160列出了各個(gè)組而右側(cè)窗口162列出了各個(gè)可用的設(shè)備。用戶可以從“組”清單中取出驅(qū)動(dòng)器放入“可用設(shè)備”清單內(nèi)。例如,為了將驅(qū)動(dòng)器從“組”清單移動(dòng)到“可用設(shè)備”清單,用戶可以點(diǎn)擊他們希望移動(dòng)的設(shè)備然后點(diǎn)擊“移除”按鈕164。這使得這個(gè)驅(qū)動(dòng)器可用于用戶要將它配置入的任何庫。然后,用戶點(diǎn)擊“庫”標(biāo)簽166,你移動(dòng)的磁帶驅(qū)動(dòng)器于是就在前一標(biāo)簽的“可用設(shè)備”清單內(nèi),而轉(zhuǎn)換器在“組”清單內(nèi)。為了創(chuàng)建一個(gè)新的組,用戶可以點(diǎn)擊“組”的清單內(nèi)的轉(zhuǎn)換器,再點(diǎn)擊“新建”按鈕168。于是出現(xiàn)一個(gè)“新建組”對(duì)話框。于是用戶為這個(gè)組鍵入一個(gè)為8個(gè)字符或少一些的組名,選定開始和結(jié)束的存儲(chǔ)槽范圍,再點(diǎn)擊“確定”。也可以用“分配”按鈕170以類似的方式分配組。本發(fā)明的系統(tǒng)和方法能在SAN環(huán)境內(nèi)工作,SAN內(nèi)連接的每個(gè)服務(wù)器維護(hù)SAN內(nèi)共享存儲(chǔ)設(shè)備的信息,決定它想要對(duì)設(shè)備的媒體和磁帶驅(qū)動(dòng)器做什么和讓其他服務(wù)器知道它的決定及共享它所啟動(dòng)的設(shè)備內(nèi)狀態(tài)的任何改變。如上對(duì)圖6所述,回路內(nèi)有一個(gè)服務(wù)器指定為主服務(wù)器,而剩下的服務(wù)器指定為分布式服務(wù)器。主服務(wù)器13負(fù)責(zé)對(duì)通過SAN連接的各設(shè)備進(jìn)行初始化和清點(diǎn)。主服務(wù)器13還運(yùn)行一個(gè)稱為“快照(snapshot)”的全局鎖定(globallock)過程,以同步各個(gè)服務(wù)器對(duì)存儲(chǔ)設(shè)備的訪問。分布式服務(wù)器15a-15n從主服務(wù)器13取得設(shè)備信息的詳細(xì)資料,并初始化各自的內(nèi)部結(jié)構(gòu)。所有的服務(wù)器都啟動(dòng)運(yùn)行后,它們就是獨(dú)立的,其智能足以作出它們自己的決定。服務(wù)器之間的通信通過一個(gè)在SAN內(nèi)所有服務(wù)器上激活的對(duì)等系統(tǒng)層進(jìn)行。如果一個(gè)服務(wù)器(例如分布式服務(wù)器15b)希望備份數(shù)據(jù)和決定使用備份存儲(chǔ)設(shè)備16a內(nèi)的一個(gè)驅(qū)動(dòng)器和媒體,它首先向在主服務(wù)器13上運(yùn)行的“快照”過程請(qǐng)求全局鎖定。如果沒有別的服務(wù)器保持這鎖定,請(qǐng)求服務(wù)器就得到這鎖定,可以安全地繼續(xù)它的操作。否則它必須一直等待到它可以得到這全局鎖定。一旦服務(wù)器15b能得到鎖定,它就檢查它的內(nèi)部清單,確定這個(gè)驅(qū)動(dòng)器和媒體是否已被任何其他服務(wù)器或它自己鎖定。如果它們還沒有被鎖定,服務(wù)器15b就將這個(gè)驅(qū)動(dòng)器和媒體標(biāo)為被鎖定,通過它的對(duì)等系統(tǒng)將這信息傳送給SAN上的其他服務(wù)器。然后,它釋放全局鎖定,使得其他服務(wù)器能對(duì)其他驅(qū)動(dòng)器和媒體作它們想要作的事。當(dāng)一個(gè)服務(wù)器將媒體從存儲(chǔ)槽移動(dòng)到驅(qū)動(dòng)器或從驅(qū)動(dòng)器移動(dòng)到存儲(chǔ)槽時(shí),它針對(duì)這個(gè)活動(dòng)更新其他服務(wù)器,使它們可以更新它們的內(nèi)部清單。在對(duì)媒體格式化(或重新格式化)的情況下,該信息傳送給所有的其他服務(wù)器。服務(wù)器15b結(jié)束了它的操作后,它將再請(qǐng)求全局鎖定,然后告訴所有的其他服務(wù)器取消鎖定這個(gè)驅(qū)動(dòng)器和媒體。服務(wù)器15b也將從它自己的內(nèi)部清單中取消鎖定它們,于是釋放全局鎖定。如果主服務(wù)器13崩潰,由于所有的其他服務(wù)器都知道這些設(shè)備的狀態(tài),因此任何其他服務(wù)器都可以立刻提升為主服務(wù)器。本發(fā)明可以方便地用一個(gè)或多個(gè)按照本說明書給出的原理予以編程的普通通用數(shù)字計(jì)算機(jī)和/或服務(wù)器實(shí)現(xiàn)。熟練的程序員根據(jù)本發(fā)明的原理可以很容易地編制出適當(dāng)?shù)能浖幋a。本發(fā)明也可以通過配備一些專用集成電路或互連一個(gè)具有一些普通組成部分電路的適當(dāng)網(wǎng)絡(luò)實(shí)現(xiàn)。從以上所揭示的原理來看,本發(fā)明的眾多其他修改和變動(dòng)都是可行的。因此,可以理解,在所附權(quán)利要求書所給出的范圍內(nèi),本發(fā)明可以用在這里具體說明的之外的方式實(shí)現(xiàn)。權(quán)利要求1.一種備份和恢復(fù)信息的系統(tǒng),所述系統(tǒng)包括至少一個(gè)存儲(chǔ)設(shè)備;對(duì)一些請(qǐng)求訪問所述至少一個(gè)存儲(chǔ)設(shè)備的設(shè)備允許和拒絕全局鎖定的主服務(wù)器;以及至少一個(gè)包括一些存儲(chǔ)與所述至少一個(gè)存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)有關(guān)的信息的內(nèi)部清單的輔服務(wù)器,所述至少一個(gè)輔服務(wù)器向所述主服務(wù)器請(qǐng)求全局鎖定,其中在所述全局鎖定被所述主服務(wù)器允許后,所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。2.如在權(quán)利要求1中所述的系統(tǒng),其中如果確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備能得到允許,所述至少一個(gè)輔服務(wù)器將所述至少一個(gè)存儲(chǔ)設(shè)備的至少一部分標(biāo)為被鎖定,并將相應(yīng)信息存儲(chǔ)在它自己的內(nèi)部清單內(nèi),而且將相應(yīng)信息傳送給所述主服務(wù)器和任何其他輔服務(wù)器以存儲(chǔ)在它們各自的內(nèi)部清單內(nèi),表示所述至少一個(gè)存儲(chǔ)設(shè)備的這個(gè)部分被鎖定。3.如在權(quán)利要求2中所述的系統(tǒng),其中所述至少一個(gè)輔服務(wù)器將相應(yīng)信息傳送給任何其他輔服務(wù)器后,釋放全局鎖定,使得該全局鎖定對(duì)任何輔服務(wù)器或所述主服務(wù)器可用。4.如在權(quán)利要求3中所述的系統(tǒng),其中所述至少一個(gè)輔服務(wù)器釋放全局鎖定后,所述至少一個(gè)輔服務(wù)器開始將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或者從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息。5.如在權(quán)利要求4中所述的系統(tǒng),其中所述至少一個(gè)輔服務(wù)器完成將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息后,所述至少一個(gè)輔服務(wù)器再次請(qǐng)求全局鎖定,從而它因此能更新所述主服務(wù)器和任何其他輔服務(wù)器。6.如在權(quán)利要求5中所述的系統(tǒng),其中所述至少一個(gè)輔服務(wù)器被再次授予全局鎖定后,所述至少一個(gè)輔服務(wù)器將信息發(fā)送給所述主服務(wù)器和任何其他輔服務(wù)器,通知它們更新它們各自的內(nèi)部清單,以取消鎖定所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分。7.如在權(quán)利要求1中所述的系統(tǒng),所述系統(tǒng)還包括一個(gè)連接所述至少一個(gè)存儲(chǔ)設(shè)備、所述主服務(wù)器和所述多個(gè)輔服務(wù)器的網(wǎng)絡(luò)。8.如在權(quán)利要求7中所述的系統(tǒng),其中所述網(wǎng)絡(luò)包括一個(gè)存儲(chǔ)域網(wǎng)。9.一種允許和拒絕對(duì)一個(gè)網(wǎng)絡(luò)上的服務(wù)器進(jìn)行訪問以將信息備份到一個(gè)存儲(chǔ)設(shè)備和從這個(gè)存儲(chǔ)設(shè)備恢復(fù)信息的方法,所述服務(wù)器包括一個(gè)主服務(wù)器和一些輔服務(wù)器,所述方法包括從一個(gè)輔服務(wù)器向所述主服務(wù)器發(fā)送一個(gè)對(duì)全局鎖定的請(qǐng)求,所述輔服務(wù)器包括一些存儲(chǔ)與所述存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)有關(guān)的信息的內(nèi)部清單;確定網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定;以及根據(jù)網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定對(duì)所述輔服務(wù)器允許和拒絕全局鎖定,其中,在全局鎖定被所述主服務(wù)器允許時(shí),所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。10.如在權(quán)利要求9中所述的方法,其中如果確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備能得到允許,所述至少一個(gè)輔服務(wù)器將所述至少一個(gè)存儲(chǔ)設(shè)備的至少一部分標(biāo)為被鎖定,并將相應(yīng)信息存儲(chǔ)在它自己的內(nèi)部清單內(nèi),而且將相應(yīng)信息傳送給所述主服務(wù)器和任何其他輔服務(wù)器以存儲(chǔ)在它們各自的內(nèi)部清單內(nèi),表示所述至少一個(gè)存儲(chǔ)設(shè)備的這個(gè)部分被鎖定。11.如在權(quán)利要求10中所述的方法,其中所述至少一個(gè)輔服務(wù)器將相應(yīng)信息傳送給任何其他輔服務(wù)器后,釋放全局鎖定,使得該全局鎖定對(duì)任何輔服務(wù)器或所述主服務(wù)器可用。12.如在權(quán)利要求11中所述的方法,其中所述至少一個(gè)輔服務(wù)器釋放全局鎖定后,所述至少一個(gè)輔服務(wù)器開始將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或者從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息。13.如在權(quán)利要求12中所述的方法,其中所述至少一個(gè)輔服務(wù)器完成將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息后,所述至少一個(gè)輔服務(wù)器再次請(qǐng)求全局鎖定,從而它因此能更新所述主服務(wù)器和任何其他輔服務(wù)器。14.如在權(quán)利要求13中所述的方法,其中所述至少一個(gè)輔服務(wù)器被再次授予全局鎖定后,所述至少一個(gè)輔服務(wù)器將信息發(fā)送給所述主服務(wù)器和任何其他輔服務(wù)器,通知它們更新它們各自的內(nèi)部清單,以取消鎖定所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分。15.如在權(quán)利要求9中所述的方法,其中所述網(wǎng)絡(luò)包括一個(gè)存儲(chǔ)域網(wǎng)。16.一種包括允許和拒絕對(duì)一個(gè)網(wǎng)絡(luò)上的服務(wù)器進(jìn)行訪問以將信息備份到一個(gè)存儲(chǔ)設(shè)備和從這個(gè)存儲(chǔ)設(shè)備恢復(fù)信息的計(jì)算機(jī)可執(zhí)行代碼的計(jì)算機(jī)記錄媒體,所述服務(wù)器包括一個(gè)主服務(wù)器和一些輔服務(wù)器,所述計(jì)算機(jī)記錄媒體包括從一個(gè)輔服務(wù)器向所述主服務(wù)器發(fā)送一個(gè)對(duì)全局鎖定的請(qǐng)求的代碼,所述輔服務(wù)器包括一些存儲(chǔ)與所述存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)有關(guān)的信息的內(nèi)部清單;確定網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定的代碼;以及根據(jù)網(wǎng)絡(luò)上的任何其他服務(wù)器是否具有全局鎖定對(duì)所述輔服務(wù)器允許和拒絕全局鎖定的代碼,其中,在所述全局鎖定被所述主服務(wù)器允許時(shí),所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。17.如在權(quán)利要求16中所述的計(jì)算機(jī)記錄媒體,所述計(jì)算機(jī)記錄媒體還包括如果確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備能得到允許,控制所述至少一個(gè)輔服務(wù)器將所述至少一個(gè)存儲(chǔ)設(shè)備的至少一部分標(biāo)為被鎖定,并將相應(yīng)信息存儲(chǔ)在它自己的內(nèi)部清單內(nèi)的代碼和將相應(yīng)信息傳送給所述主服務(wù)器和任何其他輔服務(wù)器以存儲(chǔ)在它們各自的內(nèi)部清單內(nèi),表示所述至少一個(gè)存儲(chǔ)設(shè)備的這部分被鎖定的代碼。18.如在權(quán)利要求17中所述的計(jì)算機(jī)記錄媒體,其中所述至少一個(gè)輔服務(wù)器將相應(yīng)信息傳送給任何其他輔服務(wù)器后,釋放全局鎖定,使得該全局鎖定對(duì)任何輔服務(wù)器或所述主服務(wù)器可用。19.如在權(quán)利要求18中所述的計(jì)算機(jī)記錄媒體,所述計(jì)算機(jī)記錄媒體還包括控制所述至少一個(gè)輔服務(wù)器,使得所述至少一個(gè)輔服務(wù)器釋放全局鎖定后開始將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或者從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息的代碼。20.如在權(quán)利要求19中所述的計(jì)算機(jī)記錄媒體,所述計(jì)算機(jī)記錄媒體還包括控制所述至少一個(gè)輔服務(wù)器,使得所述至少一個(gè)輔服務(wù)器完成將信息備份入所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分或從所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分恢復(fù)信息后再次請(qǐng)求全局鎖定,從而它因此能更新所述主服務(wù)器和任何其他輔服務(wù)器的代碼。21.如在權(quán)利要求20中所述得計(jì)算機(jī)記錄媒體,所述計(jì)算機(jī)記錄媒體還包括控制所述至少一個(gè)輔服務(wù)器,使得所述至少一個(gè)輔服務(wù)器被再次授予全局鎖定后將信息發(fā)送給所述主服務(wù)器和任何其他輔服務(wù)器,通知它們更新它們各自的內(nèi)部清單,以取消鎖定所述至少一個(gè)存儲(chǔ)設(shè)備的所述至少一部分的代碼。全文摘要本發(fā)明的備份和恢復(fù)信息的系統(tǒng)包括至少一個(gè)存儲(chǔ)設(shè)備、一個(gè)允許和拒絕一些請(qǐng)求訪問所述至少一個(gè)存儲(chǔ)設(shè)備的設(shè)備的全局鎖定請(qǐng)求的主服務(wù)器和至少一個(gè)包括一些存儲(chǔ)與所述至少一個(gè)存儲(chǔ)設(shè)備內(nèi)的存儲(chǔ)媒體有關(guān)的信息的內(nèi)部清單的輔服務(wù)器,所述至少一個(gè)輔服務(wù)器向所述主服務(wù)器請(qǐng)求全局鎖定。其中,所述全局鎖定得到所述主服務(wù)器允許后,所述至少一個(gè)輔服務(wù)器檢查它自己的內(nèi)部清單,確定訪問所述至少一個(gè)存儲(chǔ)設(shè)備是否能得到允許。文檔編號(hào)G06F17/30GK1524224SQ02813650公開日2004年8月25日申請(qǐng)日期2002年7月3日優(yōu)先權(quán)日2001年7月6日發(fā)明者普雷卡什·維韋卡,普雷卡什維韋卡申請(qǐng)人:計(jì)算機(jī)聯(lián)合思想公司