• ベストアンサー

tarとテープデバイス

Solaris2.Xでtarを使ってDDS2のテープに保存したデータをLinuxのtarで読もうとするとエラーになります。 readエラーなので、そもそもテープ自体のフォーマットを理解していないように見えるのですが、FreeBSDだとこれが問題なく読めます。 使っているのは、gnu tar 1.13.17です。 LinuxはRedHat Linux7.1及び7.2です。 単にブロックサイズの問題なのかどうなのか・・・ そもそも、Linuxで読むことは不可能なのでしょうか? どなたか知見のある方、教えていただければ幸いです。

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

  • ベストアンサー
  • terra5
  • ベストアンサー率34% (574/1662)
回答No.4

テープドライブが違うのであれば、 OSの違いよりそっちの問題の方が大きいように思います。 確かに、通常上位互換があるはずですが、 何らかの理由でDDS4として読もうとしている可能性も ありえると思いますし。 DDS2のドライブがあれば、それをつないで読めるかどうかでハードかソフトかに振り分けられると思いますが。 使っているソフトは基本的に同じと考えていいはずですし。 ソフトだと思ってFreeBSDにDDS4つけてやっぱり読めないという可能性もありますしね。 DDS自体はよく知らないのでこのへんで引き下がります(^^;;

you-m
質問者

お礼

やはり、その辺りの回答に落ち着いてしまうのでしょうかねえ。 どっかにDDS2のドライブがあれば会社にもってってみるんですけど・・・ 確かにBSDの環境作ってやっぱり読めない等の場合は色々まずいですよねえ。 もう少し環境作って試して見る事にします。 ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • terra5
  • ベストアンサー率34% (574/1662)
回答No.3

単にブロックサイズが違うというだけなら、 特に問題無いか、対処可能だと思います。 あと、ちょっと気になったのが,質問には DDS2、 補足にはLinuxのDDSとあったことなんですが、 DDS2は読めるんですよね? FreeBSDだと読めるということですが、Linuxと同じハードウェアを使った場合でしょうか? 違うならDDSのハードウェアがDDS2を読めない, 同じならデバイスドライバの問題か、 読むための設定の違いとなると思いますが。

you-m
質問者

補足

申し訳ありません。 少々誤解を招く書き方でしたね。 Linuxに接続されているドライブはDDS4です。 Solarisに接続されているのは、DDS2のドライブ FreeBSDもDDS2のドライブです。 一般的に考えれば、DDSのドライブは上位互換があるので、下位のDDSメディアであれば問題なく読み書きできるはずなのですが・・・ その辺りの互換性は微妙なんですかねえ。 実際に読めていないメディアでは無いですが、別のDDS2メディア(メーカも違ってたと思います)で読み書きした事はあります。 それはもちろんLinuxの中で閉じた使い方でしたが。 このままでは、テープの読み書きの為だけにBSDマシン(もしくはSolaris)を別途用意する羽目になりそうなんです。 うーむ・・・

すると、全ての回答が全文表示されます。
  • terra5
  • ベストアンサー率34% (574/1662)
回答No.2

昔の全く違うマシンの話(irexかhp-uxかSun OS )ですが, バイトオーダーの関係で読めなかったことがありました。 確か dd か何かで swap してから tar を使ってよませてましたが。 ただ、エラーはなんだったか憶えてませんが(^^;; 後は,デバイスドライバの問題とかないでしょうか。 tarは同じソフトを使っているようですし。 ただ、readエラーってどういうエラーかわかりませんが(^^;; tar自体は別にOSには依存しませんから、Linuxだから読めないということはないでしょう。 ファイル名の制限とかは別にしてですが。 (例えそうでもリストぐらいは見られますし) ファイルシステムは意味が無いというか、強いて言えば tarがファイルシステムでしょうか(^^;; あと考えられるのは、tarで使うテープデバイス名がデフォルトの物ではだめか、 間違った名前を使っているかでしょうか。

you-m
質問者

補足

ご回答ありがとうございます。 そうなんです。 tarのアーカイブはOS依存しないと思っていたので、ちょっと困ったことになってるんです。 お客の環境からデータを引き上げてくる際にテープに吸い上げてきたのですが、社内にいつも使える環境がLinuxのDDSしかなく、そこで読めないのです。 そもそも、リスト以前にメディア自体が不明なフォーマットであるかのような挙動をします。 MTコマンドも同様です。 考えられるとすると、デバイスのスペシャルファイル自体の構造やら、レコード当たりのブロックサイズやらが*BSDやSolarisと違うのかな~と思うのですが、今ひとつそういった情報が見つからなくて困ってます。 他のバックアップ等は普通に使えているので、デバイスの指定が違う等は無いです。 というか、普段からデバイスファイルは明示的に指定する習慣になっています。

すると、全ての回答が全文表示されます。
  • uric
  • ベストアンサー率41% (78/186)
回答No.1

テープデバイスで使用しているファイルシステムに対応したモジュールを組み込めばよいかと思いますが。 ファイルシステムは何をお使いですか?

you-m
質問者

補足

ご回答ありがとうございます。 tarはそれ自体がファイルシステムのような物なので、ファイルシステムを意識する必要は無いはずなのですが・・・。

すると、全ての回答が全文表示されます。