mount_msdos without iconv? (-L en_US.UTF-8 -D UTF-8 no worky)

Mike Zhang furry_for_puffy at
Fri Feb 15 13:43:01 PST 2019

I have a bunch of files with unicode filenames that I'm trying to copy onto
an MSDOS mount and what ends up happening is I get a bunch of invalid nodes
that cannot be accessed in any way, including rm -rf /mymountpt/dir.  This
seems to be because mount_msdos is trying to be too smart for its own good
and convert character sets in a way that apparently results in invalid
filenames sometimes.  I am using -L en_US.UTF-8 -D UTF-8 to mount the fs.

I've already had to wipe the FAT table, re-newfs and restore from backup on
OpenBSD because there was no other way to get rid of the invalid nodes (the
nodes created by DragonFly are undeleteable even on OpenBSD).  As far as I'm
aware, OpenBSD's mount_msdos treats each filename as a raw char *, to be
passed through byte for byte without regard to charsets or code pages or
what have you.  This is exactly the behavior I'm looking for.

So my question is, is there any way to force raw, unconverted filenames on
DragonFly?  I'd like to be able to use this thing on all my boxen without
resorting to silliness like NFS exporting it from OpenBSD.


More information about the Users mailing list