プロが教えるわが家の防犯対策術!

環境はvmware内のcentos6.6(minimal)
パーティションはLVM

実は、あるシェルプログラムの中に
rm -rf /
という記述が紛れ込んでしまい実行後にルート配下のディレクトリをいくつか消してしまいました。
「/bin」、「/sbin」、「/usr」、「/boot」等のディレクトリ

そのせいでほとんどのコマンドが利用できなくなりました。
それで復旧を試みようとし、レスキューモードで立ち上げ
https://tech.aucfan.com/rm-rf-retrieval/
を参考にextundeleteを/tmp配下にダウンロードしてコンパイルインストールしようとしましたが、
「C++ compiler cannot crate executables」というエラーが表示されてしまいました。
yumが利用できないのでwget をつかってgcc-g++に関連するすべてのrpmをダウンロードしてインストールを試みようとしましたが、
/bin/sh is needed by gcc-4.4.7-11.el6.x86_64
等のエラーが出てしまいました。
/binは削除してしまったためにこれが出てしまっているのかと思って、
/mnt/sysimageに/binをコピーしてみましたがだめでした。
オプションにnodepsやforceを指定しても駄目でした。

/bin等のディレクトリを復元する方法やextundelete以外に復元する方法をご存知の方が
いたら教えてください。

A 回答 (4件)

もういわれなくてもおわかりかもしれませんけど、動作確認もされてないようなプログラム(シェルスクリプトももちろん含む)をroot権限で動かしてること自体がそもそもの間違いです。

    • good
    • 0

バックアップも取ってなかった程度の重要度の低いデータなのでしょうから、捨てて出直すのがいいと思いますよ。

誤削除じゃなくて、ディスク障害なら救えなかったわけだし。
前回バックアップ以降の更新データでどうしても救いたいものがあるなら、専門家に任せるのがいいと思います。技術が無ければ、金で解決です。

ただ、すでにいろいろ更新しちゃってるようですけど、救いたいデータのあるパーティションと異なるパーティションのみ更新しているでしょうか?同じパーティションを更新していると、もう上書きされてしまっていて手遅れかもしれません。
    • good
    • 0
この回答へのお礼

返信ありがとうございます。

別の環境で同じような状況を再現させて復元方法を試しているので
データは特に問題ありません。
notnotさんが言われるように専門化も検討したいと思います。

ありがとうございます

お礼日時:2015/01/02 18:38

>すみません。

説明不足でしたが、必要なファイルも削除してしまっているので
>extundeleteを使って復元を行おうとしてます。

それなら確実にCentOSのインストールからやり直して再構築した方が早いです。
extundeleteを使うにしてもextundeleteを行うためのシステムを構築する必要があるようですし。
    • good
    • 0
この回答へのお礼

返事が遅れて申し訳ありません。

そうですね。
根本的にroot権限でやった自分が悪いので
最後の悪あがきと思いましたがあきらめます。

ありがとうございます

お礼日時:2015/01/02 18:30

復元するより必要なファイルのバックアップをとって再構築した方が早いかと。

この回答への補足

wormholeさん
返答ありがとうございます

すみません。説明不足でしたが、必要なファイルも削除してしまっているので
extundeleteを使って復元を行おうとしてます。

補足日時:2015/01/01 22:35
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!