Bagaimana saya bisa memasang filesystem dengan ukuran blok> 4KB?

18

Saya memiliki hard disk 3TB yang ditarik dari WD Mybook Live NAS. Tabel partisi adalah sebagai berikut:

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

Jadi saya mencoba mengakses partisi 4 (yang besar!):

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

Output Dmesg:

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

Ini cukup adil. Sejauh yang saya tahu, kernel saya tidak dikonfigurasi untuk mendukung ukuran blok lebih dari 4K.

Pertanyaan saya adalah, simbol apa yang harus saya cari di konfigurasi kernel saya untuk memungkinkan partisi berukuran blok yang lebih besar untuk dipasang? Saya telah menjelajahi google untuk ini, dan saya pikir saya melihat opsi sebelumnya tetapi saya tidak dapat menemukan menyebutkannya di sumber kernel stabil terbaru.

Sunting : Info hard disk penuh dari hdparm di sini: http://pastebin.com/hDdbUzjd

Edit : keluaran 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
John Hunt
sumber
Harap dicatat, meneruskan ukuran blok ke perintah mount tidak melakukan apa-apa: mount -t ext4 -o bs = 65536 / dev / sdb4 / mnt .... opsi bs hanya didukung pada beberapa filesystem (dan bukan ext. .)
John Hunt
Apa dumpe2fs -houtput untuk volume itu? Halaman manual 2012 saya untuk mke2fs mengatakan: "Nilai ukuran blok yang valid adalah 1024, 2048 dan 4096 byte per blok." Cukup melompat dari 4096 ke 65536.
Hauke ​​Laging
@ HaukeLaging - Telah menambahkan output itu, terima kasih :)
John Hunt
@jofel yang sebenarnya tidak menawarkan solusi, hanya alasan yang tidak jelas.
John Hunt

Jawaban:

19

Woohoo, saya menyelesaikannya :)

Jawaban singkatnya adalah Anda tidak bisa memasang> perangkat ukuran blok 4k pada mesin x86 linux sejauh yang saya tahu tanpa peretasan kernel serius.

Namun, ada pekerjaan sekitar .. menggunakan fuse-ext2 untuk me-mount disk:

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

(Anda mungkin perlu apt-get fuseext2 terlebih dahulu ..)

pertama kali bekerja dengan sempurna!

Ini pada dasarnya adalah bagaimana orang dapat memulihkan disk MyBook Live mereka.

Bagaimana caranya posting blog di sini: http://john-hunt.com/2013/04/25/recovering-data-from-a-wd-mybook-live-2tb-3tbor-similar/

John Hunt
sumber
Ya, cache halaman kernel membatasi ukuran blok ke ukuran halaman CPU, jadi untuk i386 / amd64, Anda tidak dapat memasang fs dengan ukuran blok lebih dari 4k. Alternatif lain adalah menggunakan e2tools.
psusi
1
Terima kasih! Saya dapat mengakses drive NAS NAS Seagate dengan cara ini.
Tobia
Saya mencoba cara ini pada 2 mesin (kubuntu 14.04 x86 dan 15.10 x64), tetapi mendapatkan pembekuan dan penggunaan CPU 100% oleh fuseext2 pada folder open mount. Adakah yang bisa saya katakan, mengapa?
Yura Shinkarev
Saya mendapatkan pengalaman yang mirip dengan YShinkarev - hang ketika mencoba mengakses mount fuseext2, juga membeku ketika saya mencoba untuk umount. Ctrl + c tidak berpengaruh ...
Adam Griffiths
Meskipun ini tidak menjawab pertanyaan itu sendiri, Anda dapat memulihkan data menggunakan debugfs /dev/sdXXtempat Anda dapat menjalankan perintah dasar seperti lsdan rdumpuntuk menyalin file ke lokasi yang aman. Sumber: n-dimensional.de/blog/2012/05/01/wd-mybook-live-data-rescue Saya menggunakan metode ini karena fuseext2 membeku ( bugs.debian.org/cgi-bin/bugreport.cgi?bug= 776248 )
Alecz