web-dev-qa-db-ja.com

ext4 SSDをマウントできません: `JBD:有効なジャーナルスーパーブロックが見つかりません`

少し問題があります。私はラップトップでUbuntu10.04 LTSを実行しており、約2年前に古いHDDを32 GBSSDに交換しました。今日、コンピュータを起動しようとしましたが、起動できませんでした。

そこで、SSDを外付けHDDラックに入れ、ライブCD Ubuntu 10.10を起動して、SSDからデータを回復しようとしました。 SSDはドロップダウンメニューに表示されますが、マウントされません。

ログ:

ubuntu@ubuntu:~$ dmesg | tail
[ 2125.445659] sd 8:0:0:0: [sda] 62533296 512-byte logical blocks: (32.0 GB/29.8 GiB)
[ 2125.446983] sd 8:0:0:0: [sda] Write Protect is off
[ 2125.446988] sd 8:0:0:0: [sda] Mode Sense: 17 00 00 08
[ 2125.446992] sd 8:0:0:0: [sda] Assuming drive cache: write through
[ 2125.449084] sd 8:0:0:0: [sda] Assuming drive cache: write through
[ 2125.449098]  sda: sda1 sda2 < sda5 >
[ 2125.454285] sd 8:0:0:0: [sda] Assuming drive cache: write through
[ 2125.454293] sd 8:0:0:0: [sda] Attached SCSI disk
[ 2125.777836] JBD: no valid journal superblock found
[ 2125.777840] EXT4-fs (sda1): error loading journal

データを回復できるようにこれを修正する方法はありますか?

5
Andreja

実行するだけです:

mke2fs -t ext4 -O ^has_journal /dev/sdX

(あなたの場合、sdXはsda1)ext4パーティションを再作成するにはwithジャーナルを有効にします。または、パーティションを再フォーマットするには:

mke2fs -F -L "PartitionLabel" -t ext4 -O ^has_journal /dev/sdX
4
luart

fsckを実行してみましたか?

ライブブートから、次のようなものを試してください。

fsck.ext4 -Dcfy -C 0 /dev/sdX#

それは:

-D - Optimize directories
-c - Check for bad sectors
-f - Force a check
-y - Assumes 'yes' to all questions
-C 0 - Prints info to stdout

X(SSD)と各パーティション(EXT4パーティションのみ)で実行していることを、マウントせずに確認する必要があります。

これでシステムの既知の問題が修正されます。よろしければ報告してください。他のオプションが見つかった場合は更新できます。


また、私はこれに精通していませんが、チェックする価値があるかもしれない「スーパーブロック」について話しているリンクを見つけましたが、それは同様のコマンドを使用します:

Sudo fsck.ext4 -v /dev/sdX

不良スーパーブロックの出力は次のようになります。

fsck /dev/sda5
fsck 1.41.4 (27-Jan-2009)
e2fsck 1.41.4 (27-Jan-2009)
fsck.ext4: **Group descriptors look bad**... trying backup blocks...
fsck.ext4: Bad magic number in super-block while trying to open /dev/sda5

The superblock could not be read or does not describe a correct ext4
filesystem.  If the device is valid and it really contains an ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>

次に、スーパーブロックバックアップの場所を確認します。

Sudo mke2fs -n /dev/sdX

スーパーブロックのバックアップはstored on blocks: # # #

最後に、バックアップを復元します(存在する場合)。

Sudo e2fsck -b block_number /dev/sdX

繰り返しますが、私はこれを試したことがなく、その有効性について話すことができません-うまくいけば、他の誰かがこの方法についてもう少し知っているかもしれません。 ソース

1
nerdwaller