ブロックサイズが4KBを超えるファイルシステムをマウントするにはどうすればよいですか?


18

WD Mybook Live NASから3TBのハードディスクを引き出しました。パーティションテーブルは次のとおりです。

Model: ATA WDC WD30EZRS-11J (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 3      15.7MB  528MB   513MB                primary
 1      528MB   2576MB  2048MB  ext3         primary  raid
 2      2576MB  4624MB  2048MB  ext3         primary  raid
 4      4624MB  3001GB  2996GB  ext4         primary

だから私はパーティション4(大きなもの!)にアクセスしようとしています:

root@john-desktop:~/linux-3.9-rc8# mount -t ext4 /dev/sdb4 /mnt/
mount: wrong fs type, bad option, bad superblock on /dev/sdb4,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

Dmesg出力:

[ 2058.085881] EXT4-fs (sdb4): bad block size 65536

これで十分です。私の知る限り、カーネルは4Kを超えるブロックサイズをサポートするように構成されていません。

私の質問は、より大きなブロックサイズのパーティションをマウントできるようにするには、カーネル構成でどのシンボルを検索する必要があるかということです。私はこれをグーグルで探しましたが、以前にこのオプションを見たと思っていましたが、最新の安定したカーネルのソースにはその言及が見つかりません。

編集:ここでhdparmからの完全なハードディスク情報:http : //pastebin.com/hDdbUzjd

編集:dumpe2fsの出力:

Mount count:              0
Maximum mount count:      30Last checked:             Wed May 30 15:22:14 2012Check interval:           15552000 (6 months)Next check after:         Mon Nov 26 14:22:14 2012Lifetime writes:          319 GBReserved blocks uid:      0 (user root)Reserved blocks gid:      0 (group root)First inode:              11
Inode size:               256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory hash:   half_md4
Directory Hash Seed:      cd7a28a0-714c-9942-29f4-83bca1209130
Journal backup:           inode blocks
Journal features:         journal_incompat_revoke
Journal size:             2048M
Journal length:           32768
Journal sequence:         0x00010146
Journal start:            0

マウントコマンドにブロックサイズを渡しても何も行われないことに注意してください:mount -t ext4 -o bs = 65536 / dev / sdb4 / mnt .... bsオプションは、少数のファイルシステムでのみサポートされます(extではサポートされません)。 。)
ジョンハント

dumpe2fs -hそのボリュームの出力は何ですか?mke2fsに関する2012年のマニュアルページには、「ブロックごとの有効なブロックサイズの値は1024、2048、4096バイトです。」とあります。かなりジャンプ4096から65536まで
Hauke Laging

@HaukeLaging-その出力を追加しました、ありがとう:)
ジョンハント


@jofelは実際には解決策を提供せず、単なる曖昧な推論を提供します。
ジョンハント

回答:


19

ウーフー、私はそれを解決しました:)

簡単な答えは、深刻なカーネルハッキングなしでわかる限り、x86 Linuxマシンに4kを超えるブロックサイズのデバイスをマウントできないことです。

ただし、回避策があります。fuse-ext2を使用してディスクをマウントします。

fuseext2 -o ro -o sync_read /dev/sdb4 /mnt/

(おそらく最初にapt-get fuseext2を取得する必要があります。.)

初めて完全に動作します!

これは基本的に、人々がMyBook Liveディスクを回復する方法です。

ハウツーのブログ投稿はこちら:http : //john-hunt.com/2013/04/25/recovering-data-from-a-wd-mybook-live-2tb-3tbor-similar/


カーネルページキャッシュはブロックサイズをCPUのページサイズに制限するため、i386 / amd64の場合、4kブロックサイズを超えるfsをマウントすることはできません。別の方法は、e2toolsを使用することです。
-psusi

1
ありがとうございました!この方法でSeagate Central NASドライブにアクセスできました。
トビア

2台のマシン(kubuntu 14.04 x86および15.10 x64)でこの方法を試してみましたが、開いているマウントフォルダーのfuseext2でフリーズとCPU使用率が100%になります。誰にでも言うことができます、なぜですか?
ユラシンカレフ

YShinkarevと同様の経験を得ています-fuseext2マウントにアクセスしようとするとハングし、マウント解除しようとするとフリーズします。Ctrl + cは効果がありません...
アダムグリフィス

これは、それ自体が質問に答えていませんが、あなたが使用してデータを回復することができdebugfs /dev/sdXX、次のような基本的なコマンドを実行することができる場所lsrdump安全な場所にファイルをコピーします。出典:n-dimensional.de/blog/2012/05/01/wd-mybook-live-data-rescue fuseext2がフリーズするため、このメソッドを使用しました(bugs.debian.org/cgi-bin/bugreport.cgi?bug= 776248
アレッツ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.