LINUX.ORG.RU

Смонтировать 4G fat16 флешку. count of clusters too big.

 


0

1

Всем привет. Ради спортивного интереса пытаюсь смонтировать в Linux флешку, которую отформатировал осциллограф в FAT16. В винде она монтируется и читается абсолютно нормально, в линуксе нет:

dmesg:

[131448.803556] sd 6:0:0:0: [sdc] 7829504 512-byte logical blocks: (4.01 GB/3.73 GiB)
[131448.804171] sd 6:0:0:0: [sdc] Write Protect is off
[131448.804178] sd 6:0:0:0: [sdc] Mode Sense: 23 00 00 00
[131448.804853] sd 6:0:0:0: [sdc] No Caching mode page found
[131448.804860] sd 6:0:0:0: [sdc] Assuming drive cache: write through
[131448.809077]  sdc: sdc1
[131448.812033] sd 6:0:0:0: [sdc] Attached SCSI removable disk

/proc/partitions:

   8       32    3914752 sdc
   8       33    3906688 sdc1

fdisk:

Disk /dev/sdc: 3.8 GiB, 4008706048 bytes, 7829504 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start     End Sectors  Size Id Type
/dev/sdc1  *       63 7813438 7813376  3.7G  6 FAT16

Попытка монтирования:

$ sudo mount -t msdos /dev/sdc1 /mnt/tmp/
mount: /mnt/tmp: wrong fs type, bad option, bad superblock on /dev/sdc1, missing codepage or helper program, or other error.

dmesg:

[131896.436825] FAT-fs (sdc1): count of clusters too big (122068)
[131896.436837] FAT-fs (sdc1): Can't find a valid FAT filesystem

На всякий случай дамп: https://nopaste.linux-dev.org/?1162604

Кароче косяк в том, что по идее FAT 16 не поддерживает партиции размером 4 гига, но при этом некоторые кривые осциллографы позволяют создать такую ФС, а винда позволяют это читать.

В гугле солюшна не нашёл. Хотелось бы уметь читать флешку в линуксе, а то что же получается? Мне что, каждый раз, когда я забираю данные с осциллографа, виртуалку с виндой грузить?

☆☆☆☆☆

Последнее исправление: DELIRIUM (всего исправлений: 1)

7zip внезапно читает файловые системы и прочую чушню.

fat fuse ещё какой-нибудь, может?

anonymous
()

Нашёл воркэраунд:

$ sudo fatresize -s 1G /dev/sdc1
fatresize 1.0.2 (10/15/17)
Information: Would you like to use FAT32?  If you leave your file system as FAT16, then you will have no problems.  If you convert to FAT32, and MS Windows is installed on this partition, then you must re-install the MS Windows boot loader.  If you want to do this, you should consult the Parted manual (or your distribution's manual).  Also, converting to FAT32 will make the file system unreadable by MS DOS, MS Windows 95a, and MS Windows NT.

$ sudo mount -t msdos /dev/sdc1 /mnt/tmp/
$ ls /mnt/tmp/
all0000  all0001  all0002
$ sudo umount /mnt/tmp
$ 
DELIRIUM ☆☆☆☆☆
() автор топика

Я вот уже человек семейный... Но почему бы тебе не проверить, если fstype переделать кпк на fat32, вдруг смонтируется? Ну и поискать в драйвере vfat, когда ему подходят такие данные, когда - нет, и ещё посмотреть внутрь ядерного exfat драйвера.

Shadow ★★★★★
()

Отличный багрепорт! Но для исправления он должен оказаться в почтовом ящике мейнтейнера файловой системы VFAT.

VFAT/FAT/MSDOS FILESYSTEM
M:	OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
S:	Maintained
F:	Documentation/filesystems/vfat.txt
F:	fs/fat/
AEP ★★★★★
()

Linux не умеет fat16 вообще, - нередко скопированные файлы на ф16 потом не видны ни с доса ни с винды, только с лини.

LinuxDebian ★★★★
()
Ответ на: комментарий от LinuxDebian

Скорее всего ты дофига нестандартные(с точки зрения негласных стандартов микрософта) параметры при создании указываешь. Там даже мелкософтовская пдфка какая-то была.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.