Tips for rsyncing MP3s from Linux to FAT32 USB external hard-drive

Posted by Larry Karnowski Mon, 21 Jul 2008 00:22:00 GMT

Here are some important lessons I learned about accurately copying MP3s (or really any kind of file) from a Linux ext3 filesystem to an external USB hard-drive using FAT32.

  • When mounting the USB hard drive, be sure to use iocharset=utf8 in your mount options. (To be safest, I put this in my /etc/fstab so I won't forget it.) Otherwise you will have problems creating directories or files that have European or Asian characters in their names. I had some real problems with all the Mexican, Celtic, and Yako Kanno albums I own. Rsync will just flat out refuse to create them without this option. (And forget the Icelandic heavy metal. It's right out.)

  • Similarly, when mounting, you might want to include the "shortname=mixed" mount option too. Although I personally didn't have a big problem with this, several posts I read online mentioned that rsync might try to upload a file multiple times. The issue is that since FAT32 stores both a short-name (remember the 8.3 names?) and a long-name, the filesystem can get confused occasionally. Again, I didn't see this myself. I used the option, though, with no trouble.

  • Lastly, don't use the standard "rsync -a" (archive) flag. It tries to maintain user and group ownership, and FAT32 doesn't support either so you get a lot of "chown NO PERMISSION" errors, etc. Basically, you're making rsync do more work than it has to. Similarly, the "-a" option also tries to preserve symlinks which FAT32 doesn't support. I'm not really sure what would happen in that case, probably more warnings. Instead use "rsync -rt" to recurse through each subdirectory and to maintain the file's last modified time. That's about all FAT32 will let you do!

Hope this helps! Keep rockin'!

Tags , , , , , , ,  | 2 comments

Comments

  1. Elliott said 3 months later:

    Hey I appreciated these tips. I'm using Ubuntu exclusively, and have a FAT32 external HDD for backup... I use fat so I can recover files from Windows or Mac machines, because I don't know anyone else who uses Linux.

    I'm a little worried that the utf8 option in fstab will make files unreadable in other operating systems -- is this true? Have you tried accessing those files on other OS's? I know MS-DOS doesn't allow a good number of funky characters (*, !, etc.), will utf8 interfere?

    Thanks, Elliott.

  2. Elliott said 3 months later:

    To follow up...

    When I mount the file system as utf-8 my dmesg is showing this message:

    FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!

    Is this not a little worrisome?

Comments are disabled