Redhat Enterprise Linux磁帶機簡單操作

來源:互聯網
上載者:User

 

Linux下使用磁帶機的方式有多種,主要有通過Amanda、Tar等軟體進行操作。

Amanda是提供了遠程集中備份的功能,通過分別設定用戶端、伺服器端,實現遠程集中儲存備份。而Tar主要用於單機環境下,將資料直接寫入磁帶的備份。針對單一節點的備份,只要簡單的使用Tar命令進行備份、恢複即可。

安裝

對於目前廠家的HP DAT24/40系列外置SCSI磁帶機,都帶有自動回卷功能。將其接在外置SCSI的匯流排上,並重新啟動伺服器。重新引導後,執行dmesg將可以看到新的磁帶機裝置叫/dev/st0。

blk: queue ef0d7a14, I/O limit 4095Mb (mask 0xffffffff)

audit subsystem ver 0.1 initialized

(scsi0:A:3): 10.000MB/s transfers (10.000MHz, offset 15)

Vendor: HP Model: C1537A Rev: L805

Type: Sequential-Access ANSI SCSI revision: 02

blk: queue ef0e4614, I/O limit 4095Mb (mask 0xffffffff)

Attached scsi tape st0 at scsi0, channel 0, id 3, lun 0

磁帶操作

裝入磁帶後,可執行如下操作:

倒帶,將磁帶卷至起始位置

mt -f /dev/st0 rewind

擦除,擦掉磁帶上的內容

mt -f /dev/st0 erase

注意:擦除工作非常慢,並且對磁帶有損傷,最好不要執行,當資料寫滿後,可以繼續寫入資料並覆蓋原有資料,無須執行擦除動作。新磁帶開啟封裝後立刻可以使用,不需要執行擦除。

出帶,將磁帶卷至初始位置然後從磁帶機內彈出

mt –f /dev/st0 offline

資料操作

基本操作如下:

1. 列目錄操作tar tvf /dev/st0

假如磁帶上沒有任何檔案,則列目錄會報錯,這個錯誤沒有關係,不影響磁帶的使用。

[root@dev131 /root]# tar tvf /dev/st0

tar: /dev/st0: Cannot read: Input/output error

tar: At beginning of tape, quitting now

tar: Error is not recoverable: exiting now

[root@dev131 /root]#

2. 寫入資料操作tar cvf /dev/st0 <要寫入的檔案名稱>

寫入資料的方法有兩種:不打包直接寫入檔案和打包壓縮後寫入檔案。二者各有優缺點。不打包直接寫入檔案的方法,看起來效率低,操作複雜,但是可以提高資料的生存率。磁帶是一種線性儲存的裝置,所有資料緊挨著順序寫入。當磁帶的某一點損壞的時候,其餘位置的磁帶還可以繼續讀取,其中的檔案也都能讀出。如果採用了打包壓縮後寫入的方法,則磁帶上儲存的只有一個檔案。當磁帶有任何一個地方發生了故障無法讀取,則這個壓縮檔將缺少一些細節,即使是一個bit的錯誤,也將導致壓縮檔報告CRC錯誤無法解壓。所以,如果是儲存大量的資料,建議直接寫入。如果是存取小檔案,則最好打包並給檔案名稱加時間標記寫入。

例如要將/root/test1.tar.gz寫入到磁帶並覆蓋磁帶的內容:

tar cvf /dev/st0 test1.tar.gz

磁帶機的傳輸速度比較慢,對於不是很大的檔案備份,稍等幾秒,寫入即可完成。使用參數cvf將覆蓋此帶上的已有檔案。

隨後列出磁帶上的檔案:

[root@dev131 /root]# tar tvf /dev/st0

-rw-r--r-- root/root 320 2006-12-01 09:29:02

test1.tar.gz

[root@dev131 /root]#

可看到資料寫入成功。

注意:這個命令只能在磁帶是全新的時候寫入,在第二次執行的時候,就會覆蓋掉磁帶上原來的資料。另外,使用tar命令備份,要求備份檔案體積必須小於單盤磁帶的容量,即一個檔案不能跨越兩盤磁帶。如果遇到這種情況,則不能使用tar命令備份,需要換其他備份程式進行操作。

3. 繼續寫入資料tar rvf /dev/st0 <要寫入的檔案名稱>

磁帶儲存是線性儲存,所有資料是依次寫入的。為了不覆蓋前邊的內容,在寫入時候,要使用rvf參數寫入內容。

tar rvf /dev/st0 test2.tar.gz

再執行一次rvf繼續寫入其他的檔案:

tar rvf /dev/st0 test3.tar.gz

寫入完成後,查看磁帶上有哪些檔案:

[root@dev131 /root]# tar tvf /dev/st0

-rw-r--r-- root/root 320 2006-12-01 09:29:02

test1.tar.gz

-rw-r--r-- root/root 320 2006-12-01 09:44:19

test2.tar.gz

-rw-r--r-- root/root 320 2006-12-01 09:30:14

test3.tar.gz

[root@dev131 /root]#

可以看到,新寫入的檔案和原檔案都儲存在了磁帶上。

磁帶的線性儲存特性,使得磁帶上可以寫入兩次相同的檔案。例如現在test3檔案發生了檔案大小的變化,再次寫入到磁帶:

tar rvf /dev/st0 test3.tar.gz

查看檔案清單,可以看到磁帶上有如下檔案:

[root@dev131 /root]# tar tvf /dev/st0

-rw-r--r-- root/root 320 2006-12-01 09:29:02

test1.tar.gz

-rw-r--r-- root/root 320 2006-12-01 09:30:14

test2.tar.gz

-rw-r--r-- root/root 320 2006-12-01 09:44:19

test3.tar.gz

-rw-r--r-- root/root 67085 2006-12-01 09:44:19

test3.tar.gz

[root@dev131 /root]#

這裡可看到,磁帶上有兩個檔案同名的檔案寫入。這個檔案的兩次備份大小和時間可以相同,也可以不相同。

注意:在磁帶上如果相同檔案寫入了多次,在恢複時候會比較麻煩,需要先將磁帶卷至檔案所儲存的地方,而後讀取磁帶當前位置所儲存的檔案,操作較為複雜,速度也比較慢。所以不建議在一盤磁帶上寫入相同檔案名稱的檔案。備份前,最好將備份檔案的檔案名稱上加上時間標記,便於尋找備份。例如要備份的檔案名稱是test- 20061201-0930.tar.gz和test-20061201-0945.tar.gz,則寫入到一盤磁帶上。如此在執行備份和恢複操作時候,能夠更加便利快捷的進行存取操作。

4. 讀取資料tar xvf /dev/st0 <要讀取的檔案名稱>

讀取資料前,首先查看磁帶上的內容,擷取要恢複的檔案名稱。例如查看後得到如下結果:

[root@dev131 /root]# tar tvf /dev/st0

-rw-r--r-- root/root 320 2006-12-01 09:29:02

test1.tar.gz

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.