- ベストアンサー
ハードディスクのマウントで文字化けする
Debian 4.0 etch(localesパッケージにてUTF-8環境に変更済み)を利用しています。 USB外付けハードディスク(vfat)のマウント時に、日本語ファイル名が文字化けしてしまいます。 また、mountオプションにiocharset=utf8を指定すると以下のように怒られてしまいます。 # echo $LANG ja_JP.UTF-8 # mount -t vfat /dev/sda2 /mnt/sda2 -o codepage=932 # ls /mnt/sda2 ????/ ???[?????Y/ ?f???E?h???}/ ???ʃA?j??/ ???l??/ ?l?^/ ???ʃQ?[??/ ???l?\?t?g/ # umount /dev/sda2 # mount -t vfat /dev/sda2 /mnt/sda2 -o codepage=932,iocharset=utf8 mount: wrong fs type, bad option, bad superblock on /dev/sda2, missing codepage or other error In some cases useful info is found in syslog - try dmesg | tail or so # dmesg | tail MSDOS FS: Using codepage 932 MSDOS FS: IO charset utf8 usb-storage: task-switchin usb-storage: task-switchin FAT: freeing iocharset=utf8 MSDOS FS: Using codepage 932 MSDOS FS: IO charset utf8 usb-storage: task-switchin usb-storage: task-switchin FAT: freeing iocharset=utf8 どのようにすれば日本語ファイル名が文字化けせずにマウントする事が出来るでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
いや, 最初に mount -t vfat /dev/sda2 /mnt/sda2 -o codepage=932 でマウントできているので「フォーマットの問題」ではないような気がします>#2. とりあえず気になるのは ・codepage の指定って必要なんだろうか? ・iocharset=utf8 じゃなくて単に utf8 としたらどうなるんだろうか? くらい.
その他の回答 (2)
- cannabisc4
- ベストアンサー率81% (13/16)
すみません。さきほど回答したものですが、はやとちりです。 mount /dev/sda2 /mnt/sda2 -o codepage=932,iocharset=utf8 でマウントした場合はどうなるでしょうか? mount: wrong fs type, bad option, bad superblock on /dev/scd0, のエラーが出てますので、/dev/sda2はvfatでない可能性があります。 fdisk /dev/sda -l してフォーマットをいまいちど確認してみるといいかもです。
補足
ご回答ありがとうございます。ご指摘にもありました通り # mount /dev/sda2 /mnt/sda2 -o codepage=932,iocharset=utf8 実行したところ、質問文と同じく「wrong fs type, bad option~」と表示されてしまいます。 また、 # dmesg|tail usb-storage: task-switchin MSDOS FS: Using codepage 932 MSDOS FS: IO charset utf8 usb-storage: task-switchin usb-storage: task-switchin FAT: freeing iocharset=utf8 となっており、 # fdisk /dev/sda -l Disk /dev/sda: 255 heads, 63 sectors, 182401 cylinders Units = cylinders of 16065 * 512 bytes Device Boot Start End Blocks Id System /dev/sda1 1 63742 512000000 b Win95 FAT32 Partition 1 does not end on cylinder boundary: phys=(1023, 45, 48) should be (1023, 254, 63) /dev/sda2 63742 127483 512000000 c Win95 FAT32 (LBA) Partition 2 does not end on cylinder boundary: phys=(1023, 59, 1) should be (1023, 254, 63) /dev/sda3 127483 182402 441135104 7 HPFS/NTFS Partition 3 does not end on cylinder boundary: phys=(1023, 3, 2) should be (1023, 254, 63) といった感じになっています。
- cannabisc4
- ベストアンサー率81% (13/16)
mount -t vfat /dev/sda2 /mnt/sda2 -o codepage=932,iocharset=utf8 でマウントしてみてはどうでしょうか?
お礼
ご回答ありがとうございます。 # mount /dev/sda2 /mnt/sda2 -o utf8 で無事解決する事が出来ました。