Невозможно смонтировать толстый диск в Linux
Это своего рода продолжение " Как смонтировать файл образа.bin в linux", но оно полностью переросло в другую проблему, поэтому я решил задать новый вопрос с соответствующей информацией, а не создавать гигантскую цепочку комментариев.
У меня есть диск, который я считаю fat32, который я не могу подключить:
> file-sk: /dev/dm-2: x86 boot sector, code offset 0x58, OEM-ID "BSD 4.4",
sectors/cluster 64, heads 255, sectors 3907024821 (volumes > 32 MB) , FAT (32 bit),
sectors/FAT 476816, reserved3 0x1000000, reserved 0x1, serial number 0x5cb415f7,
label: "SOURCE-PSE " DOS executable (COM), boot code –
Когда я пытаюсь смонтировать, он выдает ошибку файловой системы /badblock, и это dmesg
> mount -o ro -t vfat /dev/dm-2 /mnt/bsp2
mount: wrong fs type, bad option, bad superblock on /dev/mapper/loop1p1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so
> dmesg | tail
[155824.015650] FAT: IO charset iso8859-1 not found
Пользователь osgx показал мне, что причина, по которой iso не найдена, заключается в том, что она не загружена в ядро. Конфигурация моего ядра находится здесь: http://pastebin.com/j7iS7RF3
Я перечислил соответствующие моды, которые мог найти, и опробовал все из них.
> modprobe -l | grep fs
kernel/fs/nfs_common/nfs_acl.ko
kernel/fs/nls/nls_cp437.ko
kernel/fs/binfmt_misc.ko
kernel/fs/configfs/configfs.ko
kernel/fs/fscache/fscache.ko
kernel/fs/squashfs/squashfs.ko
kernel/fs/fat/fat.ko
kernel/fs/fat/vfat.ko
kernel/fs/fat/msdos.ko
kernel/fs/isofs/isofs.ko
kernel/fs/nfs/nfs.ko
kernel/fs/exportfs/exportfs.ko
kernel/fs/nfsd/nfsd.ko
kernel/fs/lockd/lockd.ko
kernel/fs/cifs/cifs.ko
kernel/fs/ufs/ufs.ko
kernel/fs/autofs4/autofs4.ko
kernel/fs/xfs/xfs.ko
kernel/fs/btrfs/btrfs.ko
Важный, который я поверил мне, isofs. Но когда я запускаю modinfo на нем, он говорит, что это просто iso9660. Так как я предполагаю, что мне нужен iso8559-1 (или 7), я думаю, он недоступен? Это четко указано в конфигурации ядра как m
который я думал, это означало, что он будет установлен как модуль, но я не вижу доступных типов iso. Любая помощь приветствуется. Спасибо!
1 ответ
Это проблема языка (набора символов), а не чисто файловой системы.
вам нужен параметр CONFIG_NLS_ISO8859_1=y.
Обновление для модульности
Учитывая, что ваш кернал уже поддерживает загрузку модуля:CONFIG_NLS_ISO8859_1=m
make && make modules_install
modprobe nls_iso8859-1