- ベストアンサー
tarとテープデバイス
Solaris2.Xでtarを使ってDDS2のテープに保存したデータをLinuxのtarで読もうとするとエラーになります。 readエラーなので、そもそもテープ自体のフォーマットを理解していないように見えるのですが、FreeBSDだとこれが問題なく読めます。 使っているのは、gnu tar 1.13.17です。 LinuxはRedHat Linux7.1及び7.2です。 単にブロックサイズの問題なのかどうなのか・・・ そもそも、Linuxで読むことは不可能なのでしょうか? どなたか知見のある方、教えていただければ幸いです。
- you-m
- お礼率20% (1/5)
- その他(OS)
- 回答数4
- ありがとう数2
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
テープドライブが違うのであれば、 OSの違いよりそっちの問題の方が大きいように思います。 確かに、通常上位互換があるはずですが、 何らかの理由でDDS4として読もうとしている可能性も ありえると思いますし。 DDS2のドライブがあれば、それをつないで読めるかどうかでハードかソフトかに振り分けられると思いますが。 使っているソフトは基本的に同じと考えていいはずですし。 ソフトだと思ってFreeBSDにDDS4つけてやっぱり読めないという可能性もありますしね。 DDS自体はよく知らないのでこのへんで引き下がります(^^;;
その他の回答 (3)
- terra5
- ベストアンサー率34% (574/1662)
単にブロックサイズが違うというだけなら、 特に問題無いか、対処可能だと思います。 あと、ちょっと気になったのが,質問には DDS2、 補足にはLinuxのDDSとあったことなんですが、 DDS2は読めるんですよね? FreeBSDだと読めるということですが、Linuxと同じハードウェアを使った場合でしょうか? 違うならDDSのハードウェアがDDS2を読めない, 同じならデバイスドライバの問題か、 読むための設定の違いとなると思いますが。
補足
申し訳ありません。 少々誤解を招く書き方でしたね。 Linuxに接続されているドライブはDDS4です。 Solarisに接続されているのは、DDS2のドライブ FreeBSDもDDS2のドライブです。 一般的に考えれば、DDSのドライブは上位互換があるので、下位のDDSメディアであれば問題なく読み書きできるはずなのですが・・・ その辺りの互換性は微妙なんですかねえ。 実際に読めていないメディアでは無いですが、別のDDS2メディア(メーカも違ってたと思います)で読み書きした事はあります。 それはもちろんLinuxの中で閉じた使い方でしたが。 このままでは、テープの読み書きの為だけにBSDマシン(もしくはSolaris)を別途用意する羽目になりそうなんです。 うーむ・・・
- terra5
- ベストアンサー率34% (574/1662)
昔の全く違うマシンの話(irexかhp-uxかSun OS )ですが, バイトオーダーの関係で読めなかったことがありました。 確か dd か何かで swap してから tar を使ってよませてましたが。 ただ、エラーはなんだったか憶えてませんが(^^;; 後は,デバイスドライバの問題とかないでしょうか。 tarは同じソフトを使っているようですし。 ただ、readエラーってどういうエラーかわかりませんが(^^;; tar自体は別にOSには依存しませんから、Linuxだから読めないということはないでしょう。 ファイル名の制限とかは別にしてですが。 (例えそうでもリストぐらいは見られますし) ファイルシステムは意味が無いというか、強いて言えば tarがファイルシステムでしょうか(^^;; あと考えられるのは、tarで使うテープデバイス名がデフォルトの物ではだめか、 間違った名前を使っているかでしょうか。
補足
ご回答ありがとうございます。 そうなんです。 tarのアーカイブはOS依存しないと思っていたので、ちょっと困ったことになってるんです。 お客の環境からデータを引き上げてくる際にテープに吸い上げてきたのですが、社内にいつも使える環境がLinuxのDDSしかなく、そこで読めないのです。 そもそも、リスト以前にメディア自体が不明なフォーマットであるかのような挙動をします。 MTコマンドも同様です。 考えられるとすると、デバイスのスペシャルファイル自体の構造やら、レコード当たりのブロックサイズやらが*BSDやSolarisと違うのかな~と思うのですが、今ひとつそういった情報が見つからなくて困ってます。 他のバックアップ等は普通に使えているので、デバイスの指定が違う等は無いです。 というか、普段からデバイスファイルは明示的に指定する習慣になっています。
- uric
- ベストアンサー率41% (78/186)
テープデバイスで使用しているファイルシステムに対応したモジュールを組み込めばよいかと思いますが。 ファイルシステムは何をお使いですか?
補足
ご回答ありがとうございます。 tarはそれ自体がファイルシステムのような物なので、ファイルシステムを意識する必要は無いはずなのですが・・・。
関連する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ファイルの使い方」がわからなかったため、質問させていただきました。 実に初歩的な質問で恐縮ですが、宜しくお願いいたします。
- 締切済み
- Linux系OS
- UNIX(Solaris)でのtarファイルの解凍エラー
AというUNIX(Solaris)でtar cvf で固めたフォルダ階層を別のBというUNIX(Solaris)でtar xvfで解凍すると、 tes, 7 テープブロック tar: ディレクトリの検査合計エラーです というエラーメッセージがコンソールに出力されます。 これは、Solarisじゃない別のOSから持ってきた場合に出力されるという話は聞いたことがあるのですが、同じSolarisで圧縮したものを解凍してもでるのでしょうか? どのような条件下で出力されるエラーかご存知方がいらっしゃいましたらご教授のほどお願いいたします。
- 締切済み
- Solaris系OS
- tar.gzファイルの解凍
FreeBSDを使用しています。 ダウンロードした AAA.tar.gz というファイルを解凍したいのですが、 gunzip AAA.tar.gz とすると、 gunzip: AAA.tar.gz: not in gzip format と出ます。 そこで、 file AAA.tar.gz とすると、 AAA.gz: GNU tar archive と出ました。 ですので、 tar xzvf AAA.tar.gz としてみましたが、以下のように出ます。 gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error exit delayed from previous errors どのようにして解凍すればよいのかご教授いただけませんでしょうか?よろしくお願いいたします。
- ベストアンサー
- BSD系OS
- テープへのバックアップ
はじめまして。 教えていただきたい事がございます。 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系OS
- テープデバイスに書き込めない
TurboLinux8ServerでテープデバイスDDS4を使ってます。 デバイスの認識はうまくいっているようなのですが、 実際に書き込みを行うと、 「/dev/nst0:読み込み専用のファイルシステムです」 と表示されます。 テープ自体のライトプロテクトのスイッチは書き込み可に なってます。 mt status を実行すると SCSI 2 tape drive File number=0 ,blocknumber=0 ,partition=0 Tape block size 0 bytes. Dencity code 0x13(DOS(61000bpi)) Soft error count since last status=0 General status bits on (5010000): WR_PROT ONLINE IM_REP_EN と表示されます。 何が原因なのかさっぱりわかりません。 よろしくおねがいします。
- ベストアンサー
- その他(OS)
- バイナリで配布されているプログラムをインストールする際、ディストリビューションとか関係ないんですか?
すみません。PC-UNIX初心者です。 今、FreeBSDとSolaris10とDebianとFedoraCoreが入っているんですが、とりあえず、プログラム開発環境を作りたいと思いまして、ApacheとPHPとMySQLをインストールしようとおもいました。 書籍の解説&CDには、tar.gz形式のファイルが入っていますが、どのディストリビューションでもこれらのバイナリファイルはインストール可能なんでしょうか?ディストリビューション特有のパッケージ(RPMなど)があることは、知っているんですが、よくサイトで配布されているtar.gz形式とかのバイナリファイルまたはソースファイルは、どのディストリビューションでもインストール可能なようにできているんでしょうか? そもそもLinuxとFreeBSDとかは構造および開発経緯が違う?から、一緒のファイル(この場合だとhogehoge.tar.gz)でインストールを行えるとは思いもよりませんでした。これは、カーネルが同じだからできるという解釈でいいんでしょうか?それともFreeBSDとLinuxではカーネルは違うんでしょうか? PC-UNIXはディストリビューション間で互換性を保とうとカーネルを同じにしているんでしょうか? 詳しい方、よろしくお願いします。
- ベストアンサー
- Linux系OS
- 8GB以上のファイルが読み込めません
RedHatLinux ES4.6 でLTOに書き込んだファイルが Solaris10 で読み込めなくて困っています。 ファイルサイズが8GB未満の場合は問題ないのですが、 8GBを超えている場合、ディレクトリの検査合計エラーが 出力されてしまいます。 Solaris側でgtarを使えば読み込めることはわかっているのですが、 Solaris側担当は、容易には対応してくれません。 なんとかRedHat側のLTO書き込み時のオプション変更で回避したいのですが、何かよい方法はないでしょうか? 書き込み(RedHat) fileaが33GB tar cvf /dev/st0 filea fileb 読み込み側(Solaris) tar xvf /dev/rmt/1
- 締切済み
- Solaris系OS
- 中1です。.tar.gzをインストールしたいです!
僕はUbuntu14.04LTSの64bitを使っている中1です。 日経Linuxなどを見てコマンドに入力するものの、エラーが発生し、なかなかインストールできません。 ちなみにコマンドに入力した文字は・・・↓ パッケージの名前は「a」です。 $ tar zxvf package-a.tar.gz $ cd package-a ← このような入力をしています。 $ ./configure しかし「 tar zxvf package-a.tar.gz」 $ make 「~ のようなファイルやディレクトリはありませ ん」と $ su 最初の時点で表示されます。 password : ********* 間違えがあるようであればアドバイスお願いします。 # make install # exit ※そもそもコマンドが間違っているのであれば、 パッケージ名を「a」でお願いします。
- 締切済み
- Linux系OS
- バックアップの取り方 及び プリントスクリーン Redhat Linux ES3.0
お世話になっております。 Redhat Linux ES3.0にて運用をすることになったのですが、UNIX系は初めてなので右も左もわかりません。 とりあえずフルバックアップをDDS-4テープで取りたいのですが、どうやればよいでしょうか? またWindowsで言うプリントスクリーンってLinuxにもありますか?プリンター繋がってないので設定を画面でキャプチャーして別の端末で印刷したいのです。 あればやり方を教えてください。 以上、宜しくお願い致します。
- 締切済み
- Linux系OS
- tarでディレクトリのみをアーカイブしたい
【質問】 Solaris8 純正のtarコマンドで、ファイルを除いてディレクトリのみをアーカイブする良い方法を模索しています。 【背景】 ディレクトリ構成をtarで抽出し、別のマシンで解凍する(/export/homeなど)際に、配下のファイルサイズが大きく時間がかかるため、抽出の際にファイルを除外しておきたい 【前提】 tarでアーカイブする際、ディレクトリを指定すると配下のファイルも再帰的にアーカイブされてしまう。 【詳細】 例えば、以下のようなディレクトリ構造のとき、 AAA/ AAA/aaa/ AAA/aaa/hoge.c BBB/ BBB/foo.txt ディレクトリのみをtarアーカイブして、 AAA/ AAA/aaa/ BBB/ という内容のtarアーカイブを作成するとき、私は以下のようなやり方をしています。 A.全抽出→解凍→ファイル消し→再抽出 # tar cf - AAA BBB | (cd /tmp/work; tar xvf -) # cd /tmp/work # find . -type f -exec rm {} \; # tar cvf /dev/rmt/0 AAA BBB B.除外リスト作成→除外リスト指定で抽出 # find AAA BBB -type f > exclude-list # tar cvfX /dev/rmt/0 exclude-list AAA BBB どちらも結果的にはディレクトリのみ抽出できるので問題はないのですが、ちょっと手間がかかります。コマンドライン1行でできる良い方法があれば教えて下さい。 # そもそも【前提】が私の思い込みかもしれないので、 # 「違うよ」という指摘があればお願いします。
- 締切済み
- Solaris系OS
お礼
やはり、その辺りの回答に落ち着いてしまうのでしょうかねえ。 どっかにDDS2のドライブがあれば会社にもってってみるんですけど・・・ 確かにBSDの環境作ってやっぱり読めない等の場合は色々まずいですよねえ。 もう少し環境作って試して見る事にします。 ありがとうございました。