ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

LinuxコミュのHDDから情報の救出。助けてください。

  • mixiチェック
  • このエントリーをはてなブックマークに追加
RedHat cloneの一つ、Scientific linuxをDell Inspiron 9400上で使用しています。3日前、bootがスタートはするのですが、一切のエラーを表示せずにそれ以上進まない現象にであいました。


結局、直接修理して再びブートするのは諦めて、データの救出を優先することにしました。以下、いままで試したこと。

1. KNOPPIXでCDからノートパソコンを起動する。
2. sdaが壊れたHDDであることを確認。sda1とsda2になぜか分かれており、sda2が読み込めない状態。
3 dd_rescue /dev/sda /dev/sdbで壊れたHDDを外付けUBD-HDDにコピー。このとき、なぜか一切のエラーが生じなかった。
4. fsck -y /dev/sdbを試みたが、BAD SUPER BLOCKのエラーにより停止。
5.http://fromto.cc/hosokawa/diary/2002/20021107-home1/にあるように、fsck -b 32 -n /dev/sdbとしたが…、やはりSUPER BLOCK関係のエラーでだめだった。
7. その後、http://www.atmarkit.co.jp/flinux/rensai/linuxtips/728fixpartition.htmlの経過をたどって、最終的にmke2fs -S /dev/sdbを実行。
8. fsck -y /dev/sdbを実行。大量のinodeエラーが出ており、最終的にFilesystem still has errorsとの警告がでて修了
9. すべてのファイルがlost+foundに流れた上に、きちんと動かない。また、ファイル構成が完全にガタガタになっており、全く内部が見られない。

という状態です。


お願いです!!HDDからデータをレスキューした経験のある方、以上の手順より、より適切な方法をご゙存知の方、上のやり方で間違っている点に気がついた方、教えてください!!どうか、お願いします!!

コメント(77)

> 私が書いているのはハードウェアの故障である場合の話です。

これは嘘。

filesystem というのは論理構造なので filesystem type の食い違いというのはハードウェア故障ではありません。ハードウェア故障 mount 出来なかったものがで fdisk で書き換えると mount 出来たりすることは無いですし、ハードウェア故障で何らかの操作をして時間がかかるのであれば、その故障したデバイスを操作する時点で kernel が何かの文句を言ってくると思います。

なるほど。そういう理解レベルだったんですね。であれば、fdisk で filesystem type 変えたら復帰するなんてデマもいい所だと思います。

----

>38

25 の書き込みで出来ると思います。あとはまるとしたら Device の名前が違う可能性があること位かなと思います。 FC8 の Live CD であれば lvm-gnome-gui が入っていると思うので GUI で scan して mount するところまで出来るんじゃないかな ??

CENTOS の Live CD とかなら lvscan して mount するという感じですかね。ただ、Installer からお任せで DISK の設定していると思うので 25 の書き込みでそのまま動きそうな気がします。
 初めまして。

 LVMなら年がら年中こねくり回しているので、ちょっと茶々入れさせてください。

 まず、元々インストールしていたScientific LinuxのライブCDがあるなら、それで起動してください。LVM使っているようですので、とりあえず待避用の外付けHDDは外しておいた方がいいです。

 で、以下のコマンドを実行し、結果をコピペすれば、ある程度何が起きているのか分かりそうな気がします。コマンドが多くて済みません。
# parted -s /dev/sda print
# e2fslabel /dev/sda1
# e2fslabel /dev/sda2
# vgscan
# pvs
# vgs
# lvs

 お話を聞いている限り、インストーラで手出ししていなければLVMを構築できそうにないので、とりあえず、実際にインストールに使ったディストリビューションのLive CDがベストでしょう。後は、パーティションテーブルとパーティション、LVMのPVの状態を把握することが先決のように思います。単にLVを活性化する方法から、多少強引にLVを構築し直す方法まで、いずれにしても状態を把握しないと手を選べないと思います。
皆様、返信が遅れて遅れてしまいました。
>>こたさん
いえ、fsck -y したのは、dd_rescueしてUSB-HDDに移したコピーデータで、元のデータには一切手をつけていません。従って、内臓HDDのデータは、こわれた時と全く同じです。で、昨日またdd_rescueで内臓データをコピーし終わったところです。

>>だぁくさん
ext2,ext3, LVMの話を昨日まともに読んだばかりなので、ちょっと内容がわかりませんでした…、すみません。

>>シロヤマさん
前にも書きましたが、今回の目的は1.の

「内臓HDDの/home以下の情報を救い出す」です。残りのデータは全て捨てるつもりです。

>>Shinn'さん
>LVM使っているようですので、とりあえず待避用の外付けHDDは外しておいた方がいいです。
そうなんですか。関係ないわけでは、ないのですね。

家に帰ったら、とりあえず自分が使用していたScientific Linux4.4のLive CDを用いた、即復旧作業に取り掛かりたいと思います。
幾つかの報告をいたします。

まず嬉しいことに、シロヤマさんから教えていただいた方法、つまり
Scientific Linux 4.4のLive CDから起動して、
$ su
# mkdir -p /mnt/test
# mount /dev/mapper/VolGroup00-LogVol00 /mnt/test
# cp -Rf /mnt/test/home/* TARGET_DIR ※
とする方法で、元のHDDの内容にアクセスすることに成功し、とりあえず絶対に失えないファイルをすべて手に入れることができました!!皆様、本当にありがとうございました。これからは、最低二つはバックアップをとることを肝に銘じます…。


次に、最初にやったように
dd_rescue /dev/sda /dev/sdb
としてコピーしたものに
fsck -y /dev/sdb1
として、USB-HDDから起動させてみたところ、
login password:
という表示をえるところまではいきました。しかし、やはり文字を打ち込むことができませんでした。


41のShinn'さんの方法に従い、(僕には暗号にしか見えないのですが…)原因を探ってみました。SLのLive CDを使用した環境下でです。
# parted -s /dev/sda print
Disk label type : msdos
Minor type filesystem flags
1   primary ext3  boot
2   primary      lvm

# e2label /dev/sda1
/boot

# e2fslabel /dev/sda2
e2label: Bad magic number in super-block white trying to open /dev/sda2
Could'nt fomd valid filesystem superblock.

# vgscan
Reading all physical volumes. This may take a while...
Fould volume group "VolGroup00" using metadata type lvm2

# pvs
PV     VG     Fmt Attr Psize  Pfree
/dev/sda2 VolGroup00 lmv2 a-  74.41G 96.00M

# vgs
VG       #PV #LV $SN Attr  VSize  VFree
VolGroup00    1 2  0 wz--n- 74.41G  96.00M

# lvs
LV      VG     Attr   LSize
LogVolume00  VolGroup00 -wi-ao  72.38G
LogVolume01  VolGourp01 -wi-a-  1.94G
となりました。

>32、こたさん
>リモートログインとか ping とか試しました ??
ためしていません。Desktopとして使用していたので、外部からはアクセスするようにしていなかったので。
ping(初めてこのコマンドの存在をしりました)も、勿論していません。
>リターンキー押しました ??
押したり、押していなかったり、の両方を試してみましたがやはりダメでした。


この事件がおきる前に私がしたことは、wireless LANをいれようと試み、Gnomeにあるネットワークの設定を弄くったことでしたが、これだけでこんなブートできない状況に陥るとは夢にも思いませんでした。

これは、私が結局どの部分を破壊してしまったからだったと考えられますか?
というより、(CTRL +) ALT + F[2-5] とかで tty 切り替えるとか、boot 時に指定して Run Level 切り替えると入力が動く気がしますね(CTRL + ALT + BS で X を ZAP するとかも試してみるとか)。
恐らく普段は Run Level 5 で X + gdm とか立ち上がってくるのが X の起動が失敗して見た目入力できなくなっているだけとかかなと思ってみたり。

なんであれやっぱり HDD には罪は無いと思います。
loopback 削除しちゃったとか。やったこと無いけどどうなるんでしょうね。
>tamtamさん
>大切なファイルは取り出せたのなら、
>
>fsck -y /dev/sda1
>
>とすると、実は、ちゃんとブートできたりして…。
やってみました…が、やはり
login password:
で文字が入力できず…。ちなみに、このときX-windowは起動していません。consoleです。

>こたさん
>(CTRL +) ALT + F[2-5] とかで tty 切り替える
これはしてみました。が、ダメでした。

>boot 時に指定して Run Level 切り替えると入力が動く気がしますね(CTRL + ALT + BS で X を ZAP するとかも試してみるとか)。
RunLevelを1にしてみましたが、やはりダメでした。


>ネットワークの設定を誤ると、ブートはしてもXのログイン画面が出るまでに恐ろしく時間がかかるように>なる(長時間画面が真っ黒なまま)ことはあります。

>そこで、電源ブチッをやるとファイルシステムが壊れることはありますが…。
これを自分がやったような気が、しないでもないのですが…、ファイルシステムが壊れてしまい起動しなくなったのかもしれません。
>47 こたさん
!!!!!??????

それのような気がします…汗。確か、「?なんだろう、これ?つかってないから、こんなものけしてしまえー!」と消した気がします…。

初めてloopbackという言葉をきいて今調べてみたのですが、あれはこんな意味http://www.sophia-it.com/content/loopbackがあったのですか!
RedHat 系なら

/etc/sysconig/network-scripts/ifcfg-lo0
/etc/sysconig/network-scripts/ifup-lo

とかじゃないかな..

ただ Single User でも動かないと言うのは不思議。
 もう関係ないかもしれませんが…

>fsck -y /dev/sda1

 fsckするなら、/dev/sda1 より /dev/VolGroup00/LogVolume00 かと思います。

> やってみました…が、やはり
> login password:
> で文字が入力できず…。ちなみに、このときX-windowは起動していません。consoleです。

 まさかとは思いますが…文字が入力できないって、キー入力しても「●」とも何とも出てこない、ということではないですよね?
>Shinn'さん
>まさかとは思いますが…文字が入力できないって、キー入力しても「●」とも何とも出てこない、ということではないですよね?
いや、その「まさか」で、なにも入力できません。つまり、反応しない状態です。
>tamtamさん、こたさん
うーん…、hostsファイルをみてみたのですが、ちゃんとlocalhostは残っていました。どうやら、勘違いだったようです、すみません。ただ、調子が悪くなる前、前述のとおりgnomeネットワーク設定でネットワーク関係の場所を弄くっていたので、おかしくなっているとしたらそこしかないのですけど。
まぁでも /home が救出できたなら、再 Install してもそれ程被害は大きくないのかなとか勝手に思っています。現状を頑張って復旧するよりも、再 Install した方が頭は使わなくていいかなと思います。

HDD を交換するかどうかは当人の判断にお任せしますが、少なくともフォーマットが正常に終わるのであれば保証期間中でメーカにいくら壊れていると言っても対応してくれるとは私は思えません。

あえて現状復帰を頑張ればいろいろ経験を積み知識が広がるかもしれないですが、苦労は増えます。面倒だと思えば一から再 Install するのが手っ取り早いんじゃないですかね。
> 55, tamtamさん
>/etc/sysconig/network-scripts/ifcfg-lo0
>/etc/sysconig/network-scripts/ifup-lo
/etc/sysconig/network-scripts/ifcfg-loというファイルがありました。viでみたところ、

DEVICE=lo
IPADDR=127.0.0.1
NETMASK=255.0.0.0
NETWORK=127.0.0.0
# if youRe having problems with gated masking 127.0.0.0/8 a martian,
# you can change this to something else (255.255.255.255, for example)
BROADCAST=127.255.255.255
ONBOOT=yes
NAME=loopback

>63、こたさん
被害はもはやない状況なのですから、さいインストールすべきなのかもしれません。結局、なにがいけなかったのか、というのは気になるところですが…。
新発見、というわけでもないのですが、/etc/ssyconfig/network-scriptsをみていたところ、ifcfg-eth0がなくて、ifcfg-eth1がwirelessになっているのですが、eth0がないのは正常なのでしょうか。
>67, tamtamさん
えっと、勿論pwdでみると/mnt/test/〜〜〜となり、HDDのある場所の下にあるところです。

>そうであれば、後は、一度HDDをumountして

>Shinn' さんが書かれているように

>/dev/VolGroup00/LogVolume00 を fsck して見て、それでダメなら、
>実際的には、再インストールですかねぇ。
わかりました、やってみます。
eth1 の ONBOOT が yes なら no にして reboot とか。
>tamtamさん
えーと、なにが気に入らないのかわからないのですが、login: passwordまでたどり着けませんでした…。おかしいな。

>こたさん
ONBOOTはnoでした。

もう一度、rebootしてみて、それで正常に起動しなかったら、諦めてインストールし直す方向を前向きに検討しようと思います
→再び、CMAN, DLM installedの表示がでて、とまってしまいました(症状が前より悪化している)。ちよっと諦めて、新しいlinuxをインストールしてしまおうと思います。これは、新しいSLのインストールDVDをいれて、そのままなにも考えずにインストールしてしまって問題はないと思いますが、それでいいのでしょうか?

63でこたさんがおっしゃっているのですが、経験者の方々からすると、これはHDDが物理的に壊れているのではなくて、それ以外が何か原因がうたがわれますか?
 疑われることは多々ありますが、ありすぎてどうしようもない気もします。あれやこれやと出るたびに10や20のコメント繰り返し。。。
 結局、再インストールが最も早いのは確かでしょう冷や汗

 なお、"login:"で何も入力できなくなるならともかく、"password:"で入力できないということが気がかりです。本当に失礼な問いで申し訳ないですが、最近のディストリビューションを使う初心者の方ということですので、念のため…コンソールログインの時は、"password:"への入力に対し画面上は何の反応もなく、Enterを押して初めて、それまで入力したパスワードが正しいかどうか確認してログインするのですが、この動きは大丈夫ですね? つまり、コンソールログインで"password:"のところでは、「キー入力しても「●」とも何とも」出るわけないのですが。。。
 CTRL + ALT + F2でコンソール切り換えたときとか、これで勘違いしてるってことはないですね?あせあせ
>Shinn'さん
実は、最初、パスワードが表示されないのを忘れていまして…(汗。恥ずかしいことに、おっしゃるとおりの間違いをしていました(大汗)。そのあと、間違いに気が付き、やりなおしてみたのですが…、やっぱり結果がかわらりませんでした。そもそも、パスワードをいれろ、という命令がでてきて、ただリターンキーを押してみても、全く反応しないという状態だったので、どうしょもなかったと思います。

明日、新しいものを再インストールをしようと思います。

皆様--特にtamtamさん、シロヤマさん、こたさん、Shinn'さん、やまぐちさん--、とんでもない素人の議論にこんなに時間を割いていただき、本当にありがとうございました。
>L0k!Xさん、シロヤマさん
http://www.atmarkit.co.jp/flinux/rensai/linuxtips/488bootsingle.htmlにのっている最後の方法、つまりkernelの画面で"e"を押して、singleと書いて、リターンキー、リターンキーでbootスタートを試してみましたが、ダメでした。家にあるほかのRedHatシリーズで試してみたので、これは間違っていないと思います。
カーネルパラメータに
init=/bin/sh
とか
init=/sbin/sash
で状況をみてみるという手もありますね。

ログインすると、残り54件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

Linux 更新情報

Linuxのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。