zurück zum Artikel

Linux vermatscht Umlaute

| Dr. Harald Bögeholz

Ich habe eine mit FAT32 formatierte externe Festplatte. Wenn ich unter Linux Dateien darauf kopiere und die Platte anschließend an einen Windows-Rechner stecke, sind alle Umlaute in den Datei- und Verzeichnisnamen durch merkwürdige Zeichen ersetzt. Unter Linux sieht aber alles normal aus.

Ich habe eine mit FAT32 formatierte externe Festplatte. Wenn ich unter Linux Dateien darauf kopiere und die Platte anschließend an einen Windows-Rechner stecke, sind alle Umlaute in den Datei- und Verzeichnisnamen durch merkwürdige Zeichen ersetzt. Unter Linux sieht aber alles normal aus.

Das FAT(32)-Dateisystem speichert Dateinamen als 16-bittige Unicode-Zeichen (UTF-16), Linux verwendet als Dateinamen dagegen Strings aus 8-bittigen Zeichen. Wenn Linux ein FAT-Dateisystem einbindet, muss der Kernel zwischen 16-Bit-Zeichen und 8-Bit-Zeichen übersetzen.

Moderne Linux-Distributionen kodieren Umlaute und überhaupt alle Zeichen in UTF-8. Aus historischen Gründen beherrscht der vfat-Treiber aber auch noch ISO-8859-1. Gibt man beim Mounten keine Optionen an, so hängt die Voreinstellung für die Zeichenkodierung von der Kernel-Konfiguration ab – anscheinend ist sie in Ihrem Fall ISO 8859-1. Wenn Sie auf ein so gemountetes FAT-Dateisystem Dateien mit UTF-8-kodierten Umlauten kopieren, entsteht das von Ihnen beobachtete Schlammassel.

Lösung: Geben Sie beim Mounten die Option -o iocharset=utf8 mit an, dann sollten die Umlaute heile bleiben. Wenn das Kind schon in den Brunnen gefallen ist, hilft eventuell das Perl-Skript convmv weiter, das vielen Distributionen beiliegt. Mounten Sie das Dateisystem wieder „falsch“ als ISO 8859-1. Falls Sie inzwischen mit einer anderen Distri-bution arbeiten, gelingt dies mit der Option -o iocharset=iso8859-1,utf8=no. Dann sollte der Aufruf

convmv -f utf-8 -t iso-8859-1 -r /Verzeichnis

testweise anzeigen, was er wie umbenennen würde, und es dann nach zusätzlicher Angabe von --notest auch tun. Siehe dazu auch die Manpage von convmv. (bo [1])


URL dieses Artikels:
https://www.heise.de/-326142

Links in diesem Artikel:
[1] mailto:bo@boegeholz.org