Вот что произошло:
Я использовал ноутбук и получил доступ к некоторым данным на моем USB-накопителе. Затем я закрыл ноутбук, переведя систему в спящий режим. USB-накопитель все еще был подключен. После того, как ноутбук полностью перешел в спящий режим, я вынул его (свет был выключен, так что, должно быть, он был без питания). Сегодня я разбудил ноутбук без USB-накопителя. Теперь, когда я снова подключаю его, файловая система не монтируется автоматически.
Я попробовал вручную смонтировать его:
chi mnt # mount -t vfat /dev/disk/by-id/usb-JetFlash_Transcend_4GB_QTMFKJQQ-0\:0-part1 usb/
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
missing codepage or helper program, or other error
Manchmal liefert das Syslog wertvolle Informationen – versuchen
Sie dmesg | tail oder so
Проделав это, dmesg | tail
я обнаружил следующее:
FAT-fs (sdb1): bogus number of FAT structure
FAT-fs (sdb1): Can't find a valid FAT filesystem
Итак, я попробовал сделать это fsck.vfat
на перегородке флешки, чтобы посмотреть, можно ли это как-то исправить:
chi mnt # fsck.vfat /dev/disk/by-id/usb-JetFlash_Transcend_4GB_QTMFKJQQ-0\:0-part1
dosfsck 3.0.9, 31 Jan 2010, FAT32, LFN
Cluster size is zero.
Есть ли способ восстановить файловую систему на флешке с помощью инструментов Linux? Я использую Gentoo.
Также не следует ли считать такое поведение ошибкой или, по крайней мере, опасным? Извлечение флешки, когда система находится в спящем режиме, кажется мне обычным случаем использования. Кроме того, если вы ее вынете, очень легко забыть вставить ее обратно перед тем, как снова включить систему, и я не думаю, что это должно убить вашу файловую систему таким образом. Я готов сообщить об этой ошибке, но я не знаю, какой список рассылки/багтрекер будет правильным.
РЕДАКТИРОВАТЬ:
Я нашел несколько предложений в Интернете. Однако, если я попробую это с помощью:
dd if=/dev/disk/by-id/usb-JetFlash_Transcend_4GB_QTMFKJQQ-0\:0-part1 of=sector6.bin bs=512 count=1 skip=6 conv=noerror,sync
dd if=sector6.bin of=/dev/disk/by-id/usb-JetFlash_Transcend_4GB_QTMFKJQQ-0\:0-part1 bs=512 count=1 conv=noerror,sync,notrunc
Я все еще получаю ту же ошибку после этого. Я также пробовал использовать CHKDSK F: \R \T
под Windows, как предлагалось в некоторых сообщениях, но этот инструмент только сообщает о диске как о RAW
и, таким образом, неподдерживаемом.
решение1
Прежде чем что-либо делать с USB-накопителем, следует создать его образ:
dd bs=4k of=stick.img if=/dev/disk/by-id/usb-JetFlash_Transcend_4GB_QTMFKJQQ-0\:0
Затем вы надежно убираете флешку и используете файл stick.img для своих нужд, вместо того чтобы уничтожать еще больше данных.
Есть ли на нем важные файлы? Проверитьhttp://www.cgsecurity.org/wiki/PhotoRecдля инструментов восстановления. Он восстанавливает не только фотографии, как следует из названия.
После восстановления данных создайте новую файловую систему на USB-накопителе, поскольку старой больше нельзя доверять ваши данные. (mkfs.vfat)