お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2012-07-31 02:03:52

odenkantube
新しいメンバ
登録日: 2012-07-31

fsckしたらパーティションが壊れた

はじめまして。odenkantubeと申します。
初の投稿となるため、またLinuxに関しても不慣れなため色々ご迷惑をおかけすると思います。申し訳ございません。

さて表題の件ですが、実験がてらとHTTPで自分のサーバーにF5アタックをしたところ、サーバーが落ちてしまいました。
サーバーダウンというもの自体が初の経験であり、少々気が動転してしまいそのまま強制終了した後に何の気なしに

コード:

$ sudo fsck

を実行してしまいました。
そしたらUbuntuがインストールしてあるパーティションが壊れてしまいました。再起動したらgrubが「error:unknown filesystem」と表示したまま何も進まなくなってしまいました。
また手元にあったdebianのLiveUSBを起動し、ディスクユーティリティを開けてみたところ、Ubuntuの入っていたパーティションが見事にunknownになっていました。
試してみたこととしましては、debianの方で

コード:

$ sudo mount -t ext4 /dev/sda1

だけはやってみました。しかしbad filesystem(?)と言われてしまい何も出来ませんでした。

警告灯を特に読まずy連打したこと、またバックアップをまともに取っていなかったことなどいくつも問題があったとは思います。
それでももし、まだ何か復旧の余地があるならば方法をお伺いしたく思います。
よろしくお願いします。

OS:Ubuntu 10.04LTS Server版
本体:Acer ASR3610-A44
/dev/sda1はext4で使用しておりました。

以上よろしくお願いします。

オフライン

 

#2 2012-07-31 13:51:05

epii
メンバ
登録日: 2008-12-11

Re: fsckしたらパーティションが壊れた

復旧の方法については自分には知識が無いのでアドバイスできませんが、
マシンを電源長押し等で強制終了すると(今回のように)ファイルシステムが破損することがあるので、
できるだけ避けたほうがいいと思います。

コンソールからログインできる状態であれば通常通りシャットダウンすれば問題ないのですが、
そうでない場合には magic SysRq キー (http://ja.wikipedia.org/wiki/%E3%83%9E%E3%82%B8%E3%83%83%E3%82%AFSysRq%E3%82%AD%E3%83%BC)
を使うことで比較的安全にシャットダウンできる可能性があります。

質問内容とはあまり関係のない投稿になってしまいましたが、お役に立てれば幸いです。

オフライン

 

#3 2012-07-31 18:35:06

ack
メンバ
登録日: 2007-06-01

Re: fsckしたらパーティションが壊れた

パーティションが見えなくなった時にtestdiskが有用な事があります。

本家Webサイト
http://www.cgsecurity.org/wiki/TestDisk

紹介記事例
http://pctrouble.lessismore.cc/software/testdisk.html
http://uiuicy.cs.land.to/testdisk1.html

6.0(squeeze)以降のDebianにはtestdiskがあるので
http://packages.debian.org/squeeze/testdisk
apt-getでインストールできます。

お持ちのLiveUSB環境で起動しtestdiskを導入、救出を試みるのはいかがでしょうか。

オフライン

 

#4 2012-07-31 20:17:10

hito
管理者
登録日: 2007-03-18

Re: fsckしたらパーティションが壊れた

odenkantube による投稿:

試してみたこととしましては、debianの方で

コード:

$ sudo mount -t ext4 /dev/sda1

だけはやってみました。しかしbad filesystem(?)と言われてしまい何も出来ませんでした。

警告灯を特に読まずy連打したこと、またバックアップをまともに取っていなかったことなどいくつも問題があったとは思います。
それでももし、まだ何か復旧の余地があるならば方法をお伺いしたく思います。
よろしくお願いします。

まず、当該領域の復旧を試みる前に、「当該領域のイメージバックアップを取る」という作業を行なってください。予備のHDDを準備し、

コード:

sudo dd if=/dev/sda1 of=(予備のHDDに該当するディレクトリ)/sda1.dd bs=64k

などとすることで、「sda1.dd」という「現在の当該領域のイメージ」が確保できます。これにより、復旧によってさらに壊す、という問題を避けることができます。

次にやるべきことは、「もともとの領域と同じ状態」、つまりUbuntu 10.04環境でのマウントを試みることです。LiveCD(Desktop CD)を用いてライブセッションを起動し、当該領域のマウントを試みてください。

それでもダメであればあらためてfsckを行うことになりますが、10.04環境でも bad filesystem メッセージが出ているようであれば、なぜかは不明ですがファイルシステムメタデータ(の先頭部分)が破壊されていることになります。これはfsckではあまり起きません。

考えられることは、

 A) マウントしたままfsckをかけてしまい、ファイルシステムの整合性を破壊してしまった。
 B) LVMを使っていたが、LVM領域を適切に復旧していない。
 C) なにか普通は起きないことが起こった。

のいずれかです。B に該当するのであれば、LVM構成をまず復旧すべきです。
A, Cの場合はtestdiskで予備スーパーブロックを用いたfsckをかけることで復旧できる可能性があります。
また、いずれの場合もPhotoRecでデータだけを拾うことはできる可能性があります。

ということで、
 ・まずイメージバックアップを取る
 ・「やってしまった」以前の環境がどうなっていたのかを思い出してみる
ということをし、それを元に復旧を進めるのが安全だとおもいます。

オフライン

 

Board footer

Powered by FluxBB