磁帶裝置使用方法總結

wmlm發表於2008-02-01
(一位網友做的總結)瞭解磁帶以後就不用看了[@more@]

磁帶主要用來離線儲存資料,通常用於備份。
當一個新的磁帶裝置連線到系統並被發現後(ok. boor –r),這個磁帶裝置就可以使用了。與磁碟不同,磁帶裝置不需要進行格式化(format),卷標識(label)等。

磁帶裝置的地址和邏輯裝置名
-------------------------------------------------------------------------------------------------------
磁碟裝置 SCSI地址(Target ID) 主邏輯裝置名 附加邏輯裝置名
-------------------------------------------------------------------------------------------------------
第一個磁帶裝置 4 /dev/rmt/0 /dev/rmt/0l
/dev/rmt/0m
/dev/rmt/0h
/dev/rmt/0u
第二個磁帶裝置 5 /dev/rmt/1 /dev/rmt/1l
/dev/rmt/1m
/dev/rmt/1h
/dev/rmt/1u
-------------------------------------------------------------------------------------------------------
(SCSI地址可以是匯流排上的唯一地址)
附加的參數列示了磁帶密度
l ---------- low
m --------- medium
h --------- high
u --------- ultra

增加一個磁帶機的步驟
1. 關閉系統
2. 檢查磁帶的SCSI地址是否設定正確
預設的,磁帶機的目標地址為4,如果你有多個磁帶的話,則要設定正確設定第二個磁帶機,使它的SCSI地址不要與當前的地址相沖突
3. 安裝磁帶裝置
4. 開啟系統和所有外圍裝置(ok. boot –r)

顯示一個磁帶裝置的狀態
將磁帶放入磁帶機中,然後:
# mt –f /dev/rmt/0 status
如果你有多於一個磁帶裝置,裝置則是:/dev/rmt/1, /dev/rmt/2…
你可能會看到如下資訊:
Quantum DLT7000 tape drive:
sense key(0x0)= nosense residual= 0 retries= 0
file no= 0 block no= 0
sense key(0x0)= nosense表示你的系統可以正常訪問磁帶。
sense key(0x6)= unit attention表示這個裝置可能被重置,或是剛加電的狀態
/dev/rmt/0: no tape loaded or drive offline 此資訊表示磁帶不能訪問

no such file or directory 如果你出現了這條資訊,你的系統與你的磁帶裝置無法進行通訊。檢視一下,磁帶機是否加電,以及連線是否正常,或再次進行:ok. boot –r

磁帶的重繞
# mt –f /dev/rmt/0 rewind


與磁帶的讀寫資料有關的命令

主要包括5個命令:
cpio, dd, ufsdump, ufsrestore, tar

命令:cpio
cpio其實就是:copy in/out,從標準輸入中讀取要複製的檔案,並將其寫入到標準輸出。這個命令是很常用的,但是要重定義標準輸入和輸出。當需要使用多於一個磁帶時,可以使用這個命令。
1. 複製目錄 /work及所有子目錄到磁帶 /dev/rmt/0
# cd /work
# ls –R | cpio –ocB >; /dev/rmt/0

2. 將磁帶中的檔案複製回/work目錄
# cd /work
# cpio –icBd < /dev/rmt/0

l o ---- copy out,讀取標準輸入,獲得檔案列表,複製這些檔案到標準輸出
l i ---- copy in,從標準輸入擴充套件檔案
l c ----標識了頭資訊已經以ASCII方式被寫入
l d ----建立所需的目錄
l B ----這是必須使用的,標識著輸入是以塊的方式被記錄

命令:dd
這個命令可以對不同資料格式的檔案進行轉換並複製。當從你的硬碟遷移一個檔案系統或分割槽時可以使用這個命令。你也可以使用它來進行從一個硬碟到另一個硬碟的資料複製。如果複製時,你指定了變數塊的大小,那麼,你在恢復時,也要指定相同的變數塊。
1. 複製檔案系統:/user/sunsystem到一個磁碟裝置:/dev/rmt/0
# dd if=/dev/dsk/c0t0d0s7 of=/dev/rmt/0 bs=63k

命令:ufsdump
這個命令可以從一個硬碟複製一個檔案系統或目錄到磁帶。它被設定為備份命令,支援多個卷及增量備份。注意一下,這裡,所有的檔案必須是同一個檔案系統的一部分或在一個分割槽,而且你必須是superuser
1. 將所有位於:/dev/rdsk/c0t3d0s0下的檔案複製到一個稱為:/dev/rmt/0的dump檔案
# ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t3d0s0
l 0 ----表示dump的級別。級別0複製全部的檔案系統到磁帶中,有效的級別為0---9, 1---9執行的是增量備份,只會複製在當前時間後改變的檔案。
l u ----表示如果成功的話,則對檔案:/etc/dumpdates中的dump記錄使用時間戳做一次更新
l f ----指定dump檔案(邏輯裝置名或磁帶裝置)。f引數後,必須要跟隨一個檔名,在本例中是:/dev/rmt/0
l /dev/rdsk/c0t3d0s0包含你想要將檔案寫入磁帶的源名字。

命令:ufsrestore
這個命令從一個磁帶複製檔案系統到一個硬碟。它只能複製由ufsdump建立的檔案。
它必須使用以下的三個引數中的一個:
l i ----(互動)從介質中讀取目錄資訊後,ufsrestore呼叫一個互動式介面允許你瀏覽dump檔案的層次結構,並選擇檔案進行擴充套件
l r ----(遞迴)將介質中的全部內容恢復到當前目錄(它將是檔案系統中的頂級),為了完整的恢復一個檔案系統,要使用這個引數來恢復級別為0的dump,並再次恢復每個增量dump。
l t ----(內容列表)提供磁帶中的所有檔案列表

以下的引數為不是必須的:
l f ----(dump檔案)指定從哪裡恢復dump檔案。如果dump檔案沒有被指定,那麼,ufsrestore將使用 /dev/rmt/0
l v ----(詳細模式)顯示從磁帶中讀取的路徑名

1. 舉個例子,如下:
# cd /work
# ufsrestore if /dev/rmt/0
ufsrestore>; ?
Available commands are:
ls [arg] - list directory
cd arg - change directory
pwd - print current directory
add [arg] - add ‘arg’ to list of files to be extracted
delete [arg] - delete ‘arg’ from list of files to be extracted
extract - extract requested files
setmodes - set modes of requested directories
quit - immediately exit program
what - list dump header information
verbose - toggle verbose flag (useful with ‘‘ls’’)
help or ‘?’ - print this list
IF no ‘arg’ is supplied, the current directory is used

ufsrestore>; ls
4lib/ dict mail openwin spool
5bin games man/ preserve src
adm include/ net pub tmp

使用命令:add來增加要擴充套件的檔案和目錄到檔案列表
ufsrestore>; add mail man

現在,從磁帶中擴充套件這些檔案,它們將被釋放到你當前的工作目錄:
ufsrestore>; extract

當你所需要的檔案被擴充套件後,就可以退出ufsrestore了
ufsrestore>; q

命令:tar
一個tarfile通常是一個磁帶,但它可能是任何檔案。如果資料總量超過了一個磁帶,你就需要使用一個不同的磁帶命令,因為tar命令不可以跨多個卷。
1. 下例顯示如果從硬碟複製資料到磁帶
# tar cvf /dev/rmt/0 /work

引數:
l c ----建立tar檔案(在本例中寫入到磁帶)
l v ----顯示它所複製的每個檔案的資訊(詳細模式)
l f ----指定源裝置名,本例中為/dev/rmt/0

2. 下例顯示如何從磁帶中複製檔案到硬碟
# cd /tmp
# tar xvf /dev/rmt/0

l x ----表示從tar檔案中擴充套件檔案
Linux聯盟收集整理 ,轉貼請標明原始連結,如有任何疑問歡迎來本站Linux論壇討論

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/271063/viewspace-999020/,如需轉載,請註明出處,否則將追究法律責任。

相關文章