![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
SUNのNetraT1において、/usrが破損してしまい、バックアップで保存してある/usrのTARファイルから上書きした際、失敗してしまいOS(Solaris8)が起動しなくなってしまいました。
対応として、OSのCDROMからブートしてTARファイルから復元を試みましたがうまく行きません。
試みようと考えている方法としては、下記を考えております。
1・OS CDROMからブート
2・シェルをCSHに変更し、/usrに通っていたPATHを/cdrom…に変更
3・/usrをumount、実機のハードディスクを/usrにmount
4・バックアップファイルの復元
(ソフトウェアミラー構成なので3と4を2回実施)
5・実機の起動
※CSHを使用しているのは、動作中にPATH設定を変更出来たシェルだったた めです。
※/usrにマウントしなければならない理由ですが、TARで圧縮する際に
/usrごと行ってしまった為、解凍先を変更できない為です。
実施した結果としては、PATHを変更したにもかかわらず、/usr/libを参照してしまい、tar、ls等コマンド実行時に実機の破損したld.so.1等のモジュールを読む為、エラーになってしまいます。
設定したPATH (Solaris8 CDROMディスクへのPATHです)
path (/sbin /cdrom/Solaris_8/Tools/Boot/usr/sbin/install.d \
/cdrom/Solaris_8/Tools/Boot/usr/bin /cdrom/Solaris_8 \
/Tools/Boot/usr/lib)
フルパスでコマンドを実行しても同様です。
例:#/cdrom/Solaris_8/Tools/Boot/usr/sbin/fsck
コマンドを実行した際、PATHを/usrに見に行かせない方法がございましたら教えていただけないでしょうか。
また、TARで/usrに解凍する様に作成したバックアップファイルを、解凍時に
別のディレクトリ配下に解凍する事は可能なのでしょうか。
勉強不足で申し訳ございませんが、よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
pax(1)コマンドの-sオプションを使用すれば、絶対パスで取ったtarアーカイブを相対パスで展開出来ると思います。
○pax(1)
http://docs.sun.com/app/docs/doc/806-0624/6j9vek …
以下、手元にあるSolaris 10(x86版)での実行例です。
たぶん、Solaris 8でも変わりないと思いますが。
Solaris10% ls -l
合計 0
Solaris10% ls -l /tmp/{A,B}
-rw-r--r-- 1 user other 0 10月 14日 01:13 /tmp/A
-rw-r--r-- 1 user other 0 10月 14日 01:13 /tmp/B
Solaris10% tar cvf test.tar /tmp/{A,B}
a /tmp/A 0K
a /tmp/B 0K
Solaris10% tar tvf test.tar
tar: ブロックサイズ = 4
-rw-r--r-- 100/1 0 10月 14日 01:13 2005年 /tmp/A
-rw-r--r-- 100/1 0 10月 14日 01:13 2005年 /tmp/B
Solaris10% rm -f /tmp/{A,B}
Solaris10% ls -l /tmp/{A,B}
/tmp/A: ファイルもディレクトリもありません。
/tmp/B: ファイルもディレクトリもありません。
Solaris10% pax -r -v -s ',^/,./,' -f test.tar
USTAR アーカイブ形式
/tmp/A
/tmp/B
Solaris10% ls -l ./tmp
合計 0
-rw-r--r-- 1 user other 0 10月 14日 01:13 A
-rw-r--r-- 1 user other 0 10月 14日 01:13 B
Solaris10% ls -l /tmp/{A,B}
/tmp/A: ファイルもディレクトリもありません。
/tmp/B: ファイルもディレクトリもありません。
Solaris10%
Lean様、ご回答いただきありがとうございます。
paxコマンドがこのような使い方が出来るとは知りませんでした。
テストでうまく動いたので、早速実機にて試してみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- UNIX・Linux postfix smtpサーバーリレーがTLSハンドシェーク失敗 1 2022/08/15 15:45
- UNIX・Linux cronでシェルスクリプト実行時のkubactlコマンドが機能しない対処法。 2 2022/08/03 18:58
- その他(プログラミング・Web制作) python 2 2022/12/23 09:06
- Ruby Ruby / passenger のインストールについて 1 2023/01/30 18:31
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
- PostgreSQL PostgreSQL14.6のSSL対応について 1 2023/01/05 15:42
- UNIX・Linux Kali Linuxで起動できない - Minimal BASH Like Line Editing 1 2022/06/03 13:14
- CGI -T(汚染モード)でメールが送れません 1 2022/06/12 14:11
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
net use /d の強制実行
-
DOSコマンドで cmd /c rd /s /...
-
Apache2.4のダウンロードについて
-
tarで纏める際に、複数場外した...
-
tar.bz2ファイルのインストール...
-
ls -1R の結果をフルパスで欲しい
-
Windowsのローカルディレクトリ...
-
誤って/home配下を削除してしま...
-
sylpheedメールソフト 受信でき...
-
cpioコマンド
-
コマンドプロンプトのdelコマン...
-
ターミナルでsedを使って連続す...
-
lsでのファイル名・パスのフル...
-
Linuxのスラッシュ,ピリオドの...
-
Linux使いはじめなんですけどハ...
-
win7のコマンドプロンプトで一...
-
tarでフォルダに上書き
-
Isコマンドについて
-
rmとrmdirについて
-
rc.d や init.d の 「.d」の意味
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
net use /d の強制実行
-
Windowsのローカルディレクトリ...
-
tarで纏める際に、複数場外した...
-
tar.bz2ファイルのインストール...
-
誤って/home配下を削除してしま...
-
コマンドプロンプトでコマンド...
-
sylpheedメールソフト 受信でき...
-
コマンドプロンプトで何故パラ...
-
ls -1R の結果をフルパスで欲しい
-
zshのコマンド履歴がヒストリフ...
-
tarでフォルダに上書き
-
rmとrmdirについて
-
rc.d や init.d の 「.d」の意味
-
ブレース展開の使い方での質問です
-
Apache2.4のダウンロードについて
-
絶対パスでアーカイブされたフ...
-
"no space left on device"と出...
-
DOSコマンドで cmd /c rd /s /...
-
FTPのエラーメッセージで質問で...
-
コマンド スペースを含むディ...
おすすめ情報