テープバックアップ HP Ultrium 460

テープバックアップ HP Ultrium 460

Debian 8に接続されているサブテープドライブ(LTO-2テープ、SCSI接続)があります。 「セッション」の作成が可能かどうかわかりませんか?それでは、どうすれば正しく実行する必要がありますか?

私の言葉は、somedir1テープに一度書き込んで一定時間後にsomedir2同じテープに書き込む必要があり、テープデバイスはsomedir2テープに書き込まれたデータに「接続」する必要があるということです。 CD/DVDへのマルチセッション書き込みのようなものです。

なぜなら、今は「セッション」を生成する方法が見つからないからです。

私が書く方法:

mt -f /dev/st0 eod- テープをデータの終わりに設定

tar -czf /dev/st0 /somedir1- 書くsomedir1

mt -f /dev/st0 eod- テープをデータの終わりにリセットします(テープデバイスが巻き戻しを引き起こします)。

tar -czf /dev/st0 /somedir2- 書くsomedir2

mt -f /dev/st0 rewind- 巻き戻し。

データを読み取ると、リストではなくリストのみがtar -tzf /dev/st0リストされます。somedir2somedir1

ベストアンサー1

テープバックアップに関するいくつかの注意事項。誰かが役に立つと思うかもしれません...

  1. 書いてから巻き戻さない -/dev/nst0デバイスの使用(Linux用)
  2. シェル変数の設定TAPE=/dev/nst0
  3. ヘッドをテープの先頭に設定します。mt rewind
  4. ヘッドをテープに書き込まれたデータブロックの終わりに設定します。mt eod
  5. 現在のテープ位置を取得する:合計値をmt status見るFile numberblock number
  6. テープヘッダーを前のブロックの先頭に設定しますmt bsf 2; mt fsf。ヘッドをテープの先頭に設定しないでください。巻き戻しを使用してください。
  7. tar czv <dir_or_file><dir_or_file>- テープに書き込む
  8. tar tzv- テープ(ファイルリスト)から現在のデータブロックの内容を取得します。
  9. 時々エラーが発生する -mt retensionソフトエラーをリセットするために使用される

基本的なテープ操作を含むいくつかのクイックbashスクリプト:

#!/bin/bash

export TAPE="/dev/nst0"
############################################
function anykey {
      read -n 1 -p "Press any key to continue..."
}

while true; do
clear
cat <<EOF
Choose action:

1. Show tape status
2. Show list of files of current block
3. Write new data (append tape)
4. Rewind tape (Set to BOT)
5. Wind tape (Set to EOD)
6. Set head to N blocks before
7. Set head to N blocks after
8. Extract data from current block
9. Erase tape

0. Exit
-----

EOF
read -p "Select action: " ans

case $ans in
    1).
      echo "====="; mt status ; echo "====="; anykey ;;
    2)
      echo "====="; tar tzv; echo "====="
      echo "Rewinding to the beginning of current block..."
      mt bsf 2; mt fsf
      echo "Done"; anykey ;;
    3).
      read -p "Select file or directory: " path
      cd $(dirname $path)
      if [ $? -ne 0 ]; then
          anykey
          continue
      fi..
      echo "Positioning to the end of written data..."
      mt eod; tar czv $(basename $path) -C $(dirname $path)
      echo "Done"; anykey ;;
    4).
      echo "Rewinding tape..."; mt rewind; echo "Done"; anykey ;;
    5).
      echo "Winding tape..."; mt eod; echo "Done"; anykey ;;
    6)
      read -p "Enter number of blocks before to set to: " ans
      mt bsf $(($ans+1)); mt fsf
      echo "Done"; anykey ;;
    7)
      read -p "Enter number of blocks after to set to: " ans
      mt fsf $ans; echo "Done"; anykey ;;
    8)
      read -p "Enter folder where to extract: " path
      cd $path
      if [ $? -ne 0 ]; then
          anykey
          continue
      fi
      read -p "Extract all data from this block? [Y|n]: " ans
      if [ $ans == "n" ]; then
          read -p "Enter file or dir name: " ans
          tar zxpv $ans
      else
          tar zxpv
      fi
      echo "Done"; anykey ;;
    9)
      echo "WARNING! Erasing will destroy ALL data on tape! Continue? [y|n]"; read ans
      if [ $ans == "y" ]; then
          echo "Rewinding tape..."; mt rewind;.
          echo "Erasing tape. This is quite long operation..."; mt erase; echo "Done"
      fi
      anykey ;;
    0) exit 0 ;;
    *) continue ;;
esac
done

テープドライブユニット

おすすめ記事