テープのリストアに関する質問

このQ&Aのポイント
  • HP-UXを用いて複数のアーカイブを一つのテープにバックアップしたが、リストア時に一部のアーカイブしか復元されない問題が発生した。理由を教えてください。
  • mtコマンドでのデバイスファイルの指定方法について質問です。バックアップの際に/dev/rmt/0mnを指定しているが、/dev/rmt/0mを指定しても大丈夫ですか?
  • テープのリストアに関して困っています。アーカイブを一つのテープにバックアップし、リストアを試みたが一部のアーカイブのみ復元されました。また、mtコマンドでのデバイスファイルの指定方法もよく分かりません。お知恵をお貸しいただけますか?
回答を見る
  • ベストアンサー

テープのリストア

非常に困ってます。 HP-UXを用いて tar cvf n ./1997.tar ./1998.tar ./1999.tar ./2000.tar cd gazo tar cvf /dev/rmt/0mn ./97* ./98* ./99* ./00* というようなシェルを実行し、一つのテープにアーカイブを二つ作成し、バックアップを 行いました。 このテープの内容をリストアしようと次のコマンドを実行した所 tar xvf /dev/rmt/0m 1997.tarのみしか、リストアされませんでした。何故か理由が分かりますか? tar xvf /dev/rmt/0mn とすると1997.tar 1998.tar 1999.tar 2000.tarが リストアできました。 後、テープを操作するmtコマンドでのデバイスファイルの指定方法は バックアップの際に/dev/rmt/0mnを指定しているため、 /dev/rmt/0mnと指定する必要があるのでしょうか?(例:mt -f /dev/rmt/0mn ref) mt -f /dev/rmt/0m refと指定するのはだめなのでしょうか? どうかご回答よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • dyna_1550
  • ベストアンサー率34% (122/353)
回答No.2

> (1)のmtコマンドの/dev/rmt/0mはの/dev/rmt/0mnのどちらを用いても > 良いのでしょうか? mt -f /dev/rmt/0m rew では、「rew」(巻き戻し)なので /dev/rmt/0mn と書いても 動くと思いますよ。 /dev/rmt/0mn の最後の n は、クローズ時に巻き戻さない、ということなので。 > 私のやり方はハードウェア圧縮を用いているのですか? /dev/rmt/0mn の後ろから2番目の m が圧縮指定と思います。 mtコマンドでは、巻き戻しやテープの取出し以外にマルチボリュームの 何番目ということも行いますが、書き込みで0mnを指定して書き込んだ意場合、 0m でないとちゃんと動かないはずです。 可能であれば、/dev/rmt/0 (もしくは/dev/rmt/0n)というように 無圧縮で保存したほうがあとあと面倒が減ると思います。 HPのホームページにコマンドリファレンスがありましたので参考にしてください。 tar(1) http://docs.hp.com/ja/B2355-90851/tar.1.html mt(1) http://docs.hp.com/ja/B2355-90850/mt.1.html mt(7) http://docs.hp.com/ja/B2355-90859/mt.7.html

その他の回答 (1)

  • dyna_1550
  • ベストアンサー率34% (122/353)
回答No.1

> tar cvf n ./1997.tar ./1998.tar ./1999.tar ./2000.tar デバイスの部分が、「n」だけになってますが、以下の意味でしょうか? tar cvf /dev/rmt/0mn ./1997.tar ./1998.tar ./1999.tar ./2000.tar 僕は通常、一個にまとめてからテープに書き込むので、はずしてるかもしれませんが、 上記の記述はマルチボリュームになってるだけ? であれば、 mt -f /dev/rmt/0m rew tar xvf /dev/rmt/0mn tar xvf /dev/rmt/0mn tar xvf /dev/rmt/0mn ・・・ を繰り返せば全部でてくると思いますが。 > バックアップの際に/dev/rmt/0mnを指定しているため、 > /dev/rmt/0mnと指定する必要があるのでしょうか?(例:mt -f /dev/rmt/0mn ref) ハードウェア圧縮は避けたほうがいい・・というのはおいといて、 mtのmanには指定するよう書いてあったような記憶が・・(裏覚えです) いずれにせよ、圧縮しているのがわかっているなら書いたほうがいいと思います。

HATENA1101MAN
質問者

お礼

回答ありがとうございます。 >デバイスの部分が、「n」だけになってますが、以下の意味でしょう>か? >tar cvf /dev/rmt/0mn ./1997.tar ./1998.tar ./1999.tar >./2000.tar すみません。その通りです。 >上記の記述はマルチボリュームになってるだけ? テープはひとつしか使用しておりません。 >mt -f /dev/rmt/0m rew  (1) >tar xvf /dev/rmt/0mn >tar xvf /dev/rmt/0mn >tar xvf /dev/rmt/0mn >・・・ (1)のmtコマンドの/dev/rmt/0mはの/dev/rmt/0mnのどちらを用いても 良いのでしょうか? >ハードウェア圧縮は避けたほうがいい 私のやり方はハードウェア圧縮を用いているのですか?

関連するQ&A

  • テープにtarでバックアップしたものをリストアする方法

    いつも大変お世話になっております。 Solaris 8上で、以下のスクリプトを実行し、テープにtarファイルとしてバックアップをとりました。それをLinux(Redhat Enterprise Linux 5)でリストアしたいと思います。 方法を教えていただけないでしょうか。 Solaris上のバックアップスクリプト(/usr1,/usr2,/usr3が対象) -------------------------------------- #!/bin/sh cd /usr1;tar cvf /dev/rmt/0mn . cd /usr2;tar cvf /dev/rmt/0mn . cd /usr3;tar cvf /dev/rmt/0m . -------------------------------------- manや様々な書籍・Webを見てもいまいち「テープに書き込んだtarファイルの使い方」がわからなかったため、質問させていただきました。 実に初歩的な質問で恐縮ですが、宜しくお願いいたします。

  • tar を用いてテープにバックアップ

    tarコマンドを用いてテープにバックアップを行おうと思います。 以下のコマンドを実行しようと思います。 1. tar cvf /dev/rmt/0mn ./dirA* 2. tar cvf /dev/rmt/0m ./dirB* 仮に2行目のコマンドを以下の2'に変更した場合バックアップの取り方に違いはありますか? 2'. tar rvf /dev/rmt/0m ./dirB* また、tar のオプションでrの追記を用いた場合、 tarコマンドの実行はテープのどの位置で変更を行っても実行結果に違いはないのですか? tarコマンドとテープについていろいろと調べたのですが、どうしても分かりません。どうぞよろしくお願いします。。

  • テープでバックアップ

    HP環境でテープにファイルのバックアップを取ろうと思っています。 tar cvf /dev/rmt/0mn ファイル名 という内容でコマンドを実行しますと [そんなデバイスはないぞ!!(no open 何とか)] というエラーが出てきました。。 ioscan -fun -C tape コマンドでは /dev/rmt/0m /dev/rmt/0mn /dev/rmt/0mb /dev/rmt/0mnb があると出てきたのですが… mt-f /dev/rmt/0m statusでも [そんなデバイスはないぞ!!(no open 何とか)] というエラーが出てきました。。 マウントができていないのでしょうか? テープはマウントする必要がないのですよね? これにはどのような対処をすればよろしいのでしょうか? 初心者のため初歩的かも知れない質問しているかも知れません。 どうぞ、よろしくお願いします。

  • テープへのバックアップについて

    tarコマンドを使って、テープに3つのディレクトリのバックアップを取りたいと思っています。 バックアップを取るディレクトリを下記の3つだとした場合、 /home/aaa /home/bbb /home/ccc バックアップは、 tar cvf /dev/rmt/0 /home/aaa /home/bbb /home/ccc で出来ると思うのですが、テープ容量に比べてバックアップディレクトリのサイズが小さい為、1つのテープで3世代管理をしたいと思っています。 テープで3世代バックアップを取るには、どうすればよろしいのでしょうか? 2回目以降のコマンドをcvfからrvfにして続けて取ればOKか?とも思ったのですが、その場合、ディレクトリ名が重なってるのでどうなるのだろう?という疑問があります。 ご存知の方、ご回答よろしくお願いいたします。

  • 質問:テープへのバックアップについて

    tarコマンドを使って、テープにディレクトリのバックアップを取りたいと思っています。バックアップを取るディレクトリを下記のものだとした場合、 /home/aaa バックアップは、 tar cvf /dev/rmt/0 /home/aaa のコマンドで出来ますでしょうか? テープ容量に比べてバックアップディレクトリのサイズが大きいため、 2本のテープを用意しようと思います。 テープの交換の際、交換指示のコメントが表示されるのかという疑問があります。 また、バックアップテープから戻す際、きちんと戻すことが出来るのかという疑問があります。 ご存知の方、ご回答よろしくお願いいたします。

  • DATにバックアップを取るとき

    UNIX初心者です。Solaris2.6使用。 4mmDATの1本のテープに /var /opt /export/home の三つのファイル システムをバックアップした後で、2番目の/optの中身を確認するにはどう すればいいのでしょうか? man mt で調べて、各ファイルシステムの終わりにマーカを書き込めばいい らしいことはわかったのですが、具体的なやり方がいまひとつ分かりません。 実際に試したのは、 テープのリワインド状態から、 ufsdump 0cuf /dev/rmt/0mn /var mt -f /dev/rmt/0 weof 1 ufsdump 0cuf /dev/rmt/0mn /opt mt -f /dev/rmt/0 weof 2 ufsdump 0cuf /dev/rmt/0mn /export/home mt -f /dev/rmt/0 weof 3 この後、ufsrestore if /dev/rmt/0 を実行し、 ufsrestore > ls で中を見てみると、最後にテープに落とした /export/home の内容が 表示されます。ufsrestoreを終わらせて mt bsf コマンドを実行すると I/Oエラーになってしまいます。 どこがおかしいのでしょうか?

  • tarコマンドを用いてバックアップ

    非常に困っています。 tarコマンドを用いてテープにバックアップを取ろうと思っています。しかし、tarコマンドには2GB以上のアーカイブを作れないという仕様上の制約があります。 仮に以下のようなコマンド操作を行ったとします。 tar cvf /dev/rmt/0m FILE1 FILE2 FILE3; FILEA FILEB FILECはいずれも1GBとし、計3GBのバックアップを取るものとする。 この場合バックアップできるのでしょうか? また、どこかのサイトにこの事が載っているのでしょうか? 片方だけでも分かる方よろしくお願いします。

  • tarでこういうのできますか?

    RedHatLinux9を使っていて バックアップをtarでテープに取ろうと思います。 /var/wwwと/var/spool/mailと/homeのバックアップを取りたいのですが、 これをtarでひとつにまとめてできるものなのでしょうか。 別々にやれば/に移動して tar cvf /dev/nst0 home tar cvf /dev/nst0 var/www tar cvf /dev/nst0 var/spool/mail とするんでしょうが、これを一回のコマンドでできないんでしょうか? バックアップを自動で行いたいんです。 お知恵をお貸しください。

  • テープへのバックアップ

    はじめまして。 教えていただきたい事がございます。 Solarisで146GBのデータをDDS-4にBackupする事になりました、 しかし自分には引数とコマンドがわかりません。。。 テープは/dev/rmt/0にあり、データは/home配下になります。 [iostat -E]ではst4、[mt]コマンドでは "・・DDS-4 4MM DAT tape drive:・・" とテープの認識は確認しております。 今回は容量も大きいので、圧縮して取る事となりました。 そこでコマンドですが・・・ [tar czfv /dev/rmt/0 /home/*]で間違いないでしょうか? よろしくお願い致します。

  • 別サーバのディレクトリをテープにバックアップしたい。

    別サーバのディレクトリをテープにバックアップしたい。 テープデバイスの接続してあるサーバ(Solaris)上から別サーバのディレクトリのバックアップをとるため 下記のコマンドを使ってみましたが、書き込んだデータを元に戻せません。 どの辺が間違っているのかアドバイスいただけると助かります。 [バックアップを取るコマンド] $ su ユーザ -c 'ssh サーバ -n TZ=UTC0 exec /bin/tar -cpzf - /tmp/data | dd ibs=63488 obs=63488 of=/dev/rmt/0un' [取り出すコマンド] $ mt -f /dev/rmt/0 rewind $ dd if=/dev/rmt/0 of=/tmp/test read: Not enough space 0+0 records in 0+0 records out