Bug 144600 - Missing UTF-8 support on vfat devices mounted via HAL/gnome-volume-manager
Missing UTF-8 support on vfat devices mounted via HAL/gnome-volume-manager
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: hal (Show other bugs)
3
All Linux
medium Severity medium
: ---
: ---
Assigned To: David Zeuthen
: FutureFeature
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2005-01-09 05:58 EST by Dominik Jungo
Modified: 2013-03-05 22:42 EST (History)
3 users (show)

See Also:
Fixed In Version: 0.4.6
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2005-01-20 13:51:05 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Dominik Jungo 2005-01-09 05:58:29 EST
Description of problem:
Fedora and newer RedHat Linux use HAL and the gnome-volume-manager
which detects when you connect an USB Drive to your Linux Machine and
then depending on the HAL entries mounts them, or not. Unfortunately
you forgot to add a parameter when mounting vfat drives. This missing
parameter is "iocharset=utf8". Without this missing mount parameter
all german umlauts are sown as questionmarks. If you don't use HAL and
the gnome-volume-manager you can just add  in /etc/fstab to the vfat
entry. If you use HAL, this doesn't work, because HAL writes an entry
for the device you connect and might overwrite your iocharset=utf8
parameter. In this case you have create an own policy: create a file
fatUmlauts.fdi in:

/usr/share/hal/fdi/95userpolicy

which contains:

<?xml version="1.0" encoding="ISO-8859-1"?> <!-- -*- SGML -*- -->

<deviceinfo version="0.2">
<!--
mount vfat block devices with mountparameter iocharset=utf8
this should fix problems showing questionmarks instead of german umlauts
-->
<device>
<match key="block.is_volume" bool="true">
<match key="volume.fstype" string="vfat">
<merge key="volume.policy.mount_option.iocharset=utf8"
type="bool">true</merge>
</match>
</match>
</device>
</deviceinfo>

It would be nice, when the next relase would contain this mount option
by default.

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. connect a vfat device containing german Umlauts (öäü) in filenames 
2. ls a directory containing these filenames
3. the Umlauts are shows as questionmarks
    

Actual Results:  the device was mounted without the iocharset=utf8
parameter

Expected Results:  hal/fstab-sync should create an entry with
iocharset=utf8 as mount parameter.

Additional info:
Comment 1 David Zeuthen 2005-01-13 12:32:55 EST
DaveJ, per our discussion on IRC yesterday, any chance we can change
the  kernel such that the default iocharset for vfat is UTF-8? If no,
please reassign back to hal and I'll deal with it from userspace.
Comment 2 Dave Jones 2005-01-13 16:00:08 EST
I've been thinking about this.
Basically if it sits in hal, or in kernel package, its going to be a patch that
isn't going to go upstream, ever.

However, from a maintainence point of view, the upstream vfat code does change
quite regularly, making it a possibility that the patch would need redoing every
time I rebase.

hal should be less susceptable to such regular changes no?
Comment 3 David Zeuthen 2005-01-13 16:02:27 EST
Yeah, it should be painless to maintain in hal; I'll take the bug back :-)
Comment 4 David Zeuthen 2005-01-20 13:51:05 EST
This is fixed in hal-0.4.6 which will be in Rawhide and FC3
updates soon.
Comment 5 Dawid Gajownik 2005-02-21 08:35:24 EST
I may be wrong, but you should use utf8 option, not iocharset=utf8.
Please refer to
/usr/share/doc/kernel-doc-2.6.10/Documentation/filesystems/vfat.txt

Note You need to log in before you can comment on or make changes to this bug.