2

I've just started off with FreeNAS and have got a bunch of data (300gb+) I need to get from a FAT32 partition which I need to shift to the FreeNAS ZFS partition.

FreeNAS has successfully mounted the FAT32 partition and can get to the contents, the only issue is that whever I try to do

mv, cp, tar
or
pax
to shift or create an archive of the files, it inevitably chokes on a file it finds with an odd character with an
Invalid argument
warning. The file name will be something like
foo?s bar.mp3
where the
?
will have been an apostrophe or such and FreeNAS doesn't understand it.

I understand I can mount the drive with a different charset to overcome this problem but can't find any reference to it online. Please could someone assist with the necessary arguments I need to use with mount and the syntax it takes, please. I can SSH to the box.

TIA

Dan
  • 261
  • 4
  • 11
  • An example of the sort of command I'm running:
    pax -w -v -f videofolder.tar /mnt/Elements/video
    And it will get so far and hit a file containing a "rogue" filename and will throw "Invalid Argument" thus missing out a lot of files. The idea being I'd expand the tarball in the new ZFS partition.
    – Dan Jan 06 '10 at 13:17
  • This not an answer to your question but, a workaround. I had the same problem recently but it was on an external hard drive and only about a dozen files so, I just plugged it into another computer and manually renamed the files then plugged back into my FreeNAS box. – Owen Nov 10 '10 at 16:50

1 Answers1

1

You can specify the charset to use for conversion at mount time. From man mount :

iocharset=value

Character set to use for converting between 8 bit characters and 16 bit Unicode characters. The default is iso8859-1. Long filenames are stored on disk in Unicode format.

Specify it in you fstab or through the -o switch if you're mounting the FS manually :

 mount -t vfat -o iocharset=<value> /dev/<xxx>
François Feugeas
  • 1,393
  • 9
  • 17