Tabel partisi rusak (USB flash drive)

9

Ini adalah 8 GB Patriot thumb drive, yang saya gunakan secara luas dengan banyak data. Hari ini, terdeteksi, tetapi semua data hilang: ( EDIT setidaknya beberapa data masih ada, tetapi tabel partisi hilang)


EDIT @Sathya (terima kasih) inilah keluaran yang relevan dari sudo fdisk -l:

Disk /dev/sdc: 8019 MB, 8019509248 bytes
247 heads, 62 sectors/track, 1022 cylinders
Units = cylinders of 15314 * 512 = 7840768 bytes

Disk /dev/sdc doesn't contain a valid partition table

Sepertinya itu adalah / dev / sdc, dengan 8 GB itu ... dan tidak ada tabel partisi.

Saya mencoba me-mount / dev / sdc (dan kemudian dmesg | tail):

/media> sudo mount /dev/sdc mytmp
mount: wrong fs type, bad option, bad superblock on /dev/sdc,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

/media> dmesg | tail
[   24.300000]  sdc: unknown partition table
[   24.320000] sd 2:0:0:0: Attached scsi removable disk sdc
[   24.370000] usb-storage: device scan complete
[   26.870000] EXT2-fs error (device sdc): ext2_check_descriptors: Block bitmap for group 1 not in group (block 0)!
[   26.870000] EXT2-fs: group descriptors corrupted!
[   50.420000] unhashed dentry being revalidated: .DCOPserver_eeepc-brendanma__0
[   50.430000] unhashed dentry being revalidated: .DCOPserver_eeepc-brendanma__0
[   50.430000] unhashed dentry being revalidated: .DCOPserver_eeepc-brendanma__0
[ 5565.470000] EXT2-fs error (device sdc): ext2_check_descriptors: Block bitmap for group 1 not in group (block 0)!
[ 5565.470000] EXT2-fs: group descriptors corrupted!

EDIT @Col: hasil dari testdisk

Disk /dev/sdc - 8013 MB / 7642 MiB - CHS 1022 247 62
Current partition structure:
     Partition                  Start        End    Size in sectors

Partition sector doesn't have the endmark 0xAA55

Setelah saya menekan [proceed], dikatakan:

Structure: Ok.


Keys A: add partition, L: load backup, Enter: to continue

"Struktur: Oke." tampaknya meyakinkan ... akankah "A: tambah partisi" membuat data lama saya dapat diakses (jika masih ada), atau akankah itu membuat partisi baru yang segar?

Pilihan lain adalah " [ MBR Code ] Write TestDisk MBR code to first sector" - apakah lebih baik melakukan ini?


EDIT Saya menemukan bahwa setidaknya beberapa data saya masih di flash drive, dengan menggunakan di bawah ini, dan mencari teks bahasa Inggris dalam waktu kurang (seperti "the"):

cat /dev/sde | tr -cd '\11\12\40\1540-\176' | less

(Drive berubah dari "/ dev / sdb" ke "/ dev / sde" karena saya menghubungkan beberapa drive tambahan hari ini). Saya telah belajar bahwa "/ dev / s11" akan menjadi partisi pertama; dan "/ dev / sde" adalah keseluruhan drive. Karena unix memperlakukan perangkat ini seperti file, Anda dapat menggunakan semua perintah file unix biasa pada mereka, seperti cat, dan kemudian memprosesnya seperti aliran data lainnya. Di tratas menghapus karakter yang tidak dapat dicetak ("\ 40" adalah spasi, yang ingin saya pertahankan). Dalam waktu kurang, Anda dapat menggunakan "/" untuk mencari, mirip dengan Vim.

Bagaimana saya bisa mendapatkan kembali data saya (dengan asumsi masih ada)? Jika hanya tabel partisi rusak, apakah ada "alat pemulihan partisi" standar? Apakah ada cara untuk "partisi ulang" tanpa menghapus semuanya?

13ren
sumber
@ ChrisF Jawaban itu tidak berfungsi ... dan saya tidak bisa menanggapi di sana - jadi saya ada di sini (lihat edit pertanyaannya).
13ren
@ 13ren - Jika Anda menggunakan OpenID yang sama di kedua situs, Anda dapat mengaitkan akun Anda. Namun untuk saat ini silakan kirim email ke [email protected] dan minta mereka untuk melakukan asosiasi. Saya telah menggabungkan dua pertanyaan sementara itu.
BinaryMisfit
1
@ 13ren - Saya tahu Anda tidak bisa merespons di sana. Saya memasukkan tautan untuk moderator sehingga mereka dapat menemukan pertanyaan.
ChrisF
Terima kasih ChrisF, maaf saya salah paham. Saya mengirim email seperti yang Anda sarankan. @Diago terima kasih telah bergabung, saya dapat berkomentar sekarang. Saya akan mengirim email lagi kepada mereka.
13ren
1
Masukkan drive, dan lakukan sudo fdisk -l dan bisakah Anda memperbarui posting dengan output?
Sathyajith Bhat

Jawaban:

6

Mungkin layak menjalankan testdisk melalui perangkat, sepertinya tabel partisi Anda mungkin muncul pop. Testdisk harus dapat memulihkan data Anda.

Kol
sumber
@Col terima kasih, tapi saya tidak punya testdisk - saya sudah mencoba sudo testdiskdan man testdisk. Saya baru saja menginstalnya, dan mendeteksi / dev / sdc dengan 8GB (seperti yang ditambahkan pada pertanyaan). Saya tidak ingin melangkah lebih jauh sampai saya mengerti sedikit lebih banyak.
13ren
@ Col, saya sudah mencobanya, dan menambahkan hasilnya ke pertanyaan
13ren
Jika Anda merasa gugup, mungkin perlu menggunakan dd untuk membuat gambar stick usb ke hard drive Anda, saya pikir ini harus bekerja bahkan dengan drive yang tidak dapat dilepas karena menyalin sedikit demi sedikit.
Kol
Terima kasih, itu ide yang bagus! Tetapi bagaimana cara menyalin file dengan dd? Halaman manual berbicara tentang "file" ... oh, apakah / dev / sdc dianggap sebagai "file"? Jadi aku hanya dapat menyalin seluruh / dev / sdc ke file konvensi seperti" dd /dev/sdc mybackupfile?
13ren
1
Sekarang saya punya beberapa poin reputasi sekarang, jadi saya bisa memilih Anda!
13ren
1

Jangan khawatir, data Anda tidak hilang --- Anda benar tentang disk yang tidak dipasang, terlepas dari apa yang dikatakan antarmuka grafis.

Anda dapat memasangnya dengan melakukan (sebagai root) sesuatu seperti:

mount /dev/sdb1 /media/Patriot\ Memory

Di mana saya pikir itu sdb1merujuk ke usb stick Anda - mungkin sdc1atausdd1


sumber
Atau bahkan sda1, tergantung pada usia komputer (yaitu, jika harddisk di dalamnya adalah yang IDE)
Matthew Scharley
@Michiel terima kasih - tetapi tertulis "mount: No medium found". Menggunakan sdc1 dan sdd1 memberi "mount: perangkat khusus / dev / sdc1 tidak ada", yang membuat saya berpikir bahwa "sdb1" memang ada tetapi ada sesuatu yang salah. Ini telah bekerja selama berbulan-bulan, dan tidak ada yang berubah yang saya tahu - jadi saya khawatir ini semacam kegagalan perangkat keras
13ren
1

Meskipun dimungkinkan untuk membangun kembali tabel partisi, hal pertama yang harus Anda lakukan untuk mengambil gambar perangkat. Anda dapat melakukan ini dengan dd if=/dev/sdb of=~/memstick.img- mengubah jalur yang diperlukan.

Setelah Anda selesai melakukannya, jalankan PhotoRec , yang seharusnya dapat menarik semua file yang ada di sana. Jika Anda sudah mendapatkan semua yang Anda butuhkan, format stick dan mulai lagi, jika tidak, Anda dapat mencoba pemulihan data lebih lanjut.

Dentrasi
sumber
1

ddrescue adalah alat yang Anda butuhkan. Saya tidak berpikir Anda akan dapat menyelamatkan tabel partisi dan mengakses data dengan cara lain, berdasarkan output yang Anda posting dari testdisk dll.

http://www.forensicswiki.org/wiki/Ddrescue

ddrescue adalah alat pemulihan data. Ini menyalin data dari satu file atau perangkat blok (hard disk, cdrom, dll) ke yang lain, berusaha keras untuk menyelamatkan data jika terjadi kesalahan baca.

Operasi dasar ddrescue sepenuhnya otomatis. Artinya, Anda tidak perlu menunggu kesalahan, menghentikan program, membaca log, menjalankannya dalam mode terbalik, dll.

Jika Anda menggunakan fitur logfile dari ddrescue, data diselamatkan dengan sangat efisien, (hanya blok yang diperlukan yang dibaca). Anda juga dapat mengganggu penyelamatan kapan saja dan melanjutkannya nanti di titik yang sama.

Ddrescue tidak menulis nol pada output ketika menemukan bad sector dalam input, dan tidak memotong file output jika tidak diminta. Jadi, setiap kali Anda menjalankannya pada file output yang sama, ia mencoba mengisi kekosongan tanpa menghapus data yang sudah diselamatkan.

Jika Anda memiliki dua atau lebih salinan file yang rusak, cdrom, dll, dan menjalankan ddrescue pada mereka semua, satu per satu, dengan file output yang sama, Anda mungkin akan mendapatkan file yang lengkap dan bebas kesalahan. Ini karena kemungkinan memiliki area yang rusak di tempat yang sama pada file input yang berbeda sangat rendah. Menggunakan file log, hanya blok yang diperlukan dibaca dari salinan kedua dan berturut-turut.

Sam Dunlap
sumber