Über die Mailingliste der LUG-Frankfurt bin ich auf ein nützliches Programm gestoßen: convmv. Dies konvertiert den Namen von Dateien und Ordnern zwischen versch. Zeichensätzen hin und her. Dabei erkennt es auch, wenn einige der zu konvertierenden Dateinamen schon im Zielzeichensatz vorliegen und ignoriert sie.
Einen Probelauf der noch keine Änderungen am Dateisystem vornimmt und - ausgehend vom aktuellen Verzeichnis - alle Dateien und (Unter-)Ordner konvertiert, startet man mit:
convmv -f iso-8859-1 -t utf-8 -r .
Wenn man sicher ist, das convmv alles richtig machen wird, kann man es mit --notest dazu veranlassen die Änderungen wirklich zu vollziehen.
convmv -f iso-8859-1 -t utf-8 -r . --notest
Hat man Dateinamen die in UTF-8 waren aus Versehen nochmal in UTF-8
konvertiert, kann man das auch mit convmv beheben. Man muss dazu nur
UTF-8 als Quellzeichensatz und den bei der Konvertierung genutzen
Quellzeichensatz als Zielzeichensatz angeben:
convmv -f utf-8 -t iso-8859-1 -r .
Liest das noch jemand?
Ich habe das Problem, dass auf meinen Debian-Etch-Server die Umlaute im Dateisystem (XFS-Partition) “Sch..rott” aussehen, per Samba bereitgestellt (UTF8) aber alles ok ist: sowohl per CIFS gemountet (iocharset=utf8) als auch originär unter WinXP. Alles wird richtig dargestellt. Nur halt “nativ” nicht. Selbst LANG ist auf de...UTF8 eingestellt.
Gibt es da einen Trick? Leider finde ich nirgends HOWTOs oder andere Postings zu dem Thema
Wie sieht dieser “Sch...rott” aus?
... du verblüffst mich! Was für eine Antwort könnte ich geben? Ich wüsste zu den meisten Sch..zeichen nicht mal, wo ich sie auf der Tastatur finde! 8|
Ich glaube, pro Umlaut genau ein Sch..zeichen. Ist das für deinen Durchblick relevant?
Du musst sie ja nicht abtippen - Copy&Paste
Die locales sind richtig installiert? Wie sieht es denn im Samba aus, wenn du manuell eine “Umlaut-Datei” anlegst auf dem Server?
///nestelt in seinen Unterlagen und sucht die entsprechenden Dateien und Beispiele zusammen...
So:
*1.* Der Schrott besteht tatsächlich nur aus den Fragezeichen, die im Thunar / unter X auch mal klein in einer Raute erscheinen.
- *2.* locales alle auf de_DE.UTF-8
- *3.* CIFS ist mit iocharset=utf8 gemountet. Die per “touch Grässliche\ Grüße.txt” am Client angelegte Datei erhält am Server die Sch..behandlung. Sieht am Client aber so gut wie irgend möglich aus.
- *4.* Das gleiche gilt für den WinXP-Client. Textdatei “Schöne Beschärung.txt” angelegt - sieht in Windows gut aus und am CIFS-Client auch. Nur nicht am Server.
- Wenn ich jetzt * convmv -f iso-8859-1 -t utf8 -r --notest . * am Server losschicke, sieht alles lokal am Server prima aus. Nur sehe ich in Windows und am CIFS-Client mit unveränderten Einstellungen die Dateien nun als “GrÀssliche GrÃŒÃ?e.txt” - klassischer UTF-8-Matsch, würde ich sagen. Scheint also nicht der richtige Weg zu sein, oder? Bin etwas mit meinem Latein am Ende (oder mit meinem utf8252 ...)
Das sieht so aus, als würden die Clients da nicht mit utf-8 darauf zugreifen. Von CIFS/WinXP etc. habe ich keine Ahnung, aber in der Gegend muss irgendwo der Fehler liegen.
...ähem...räusper...[kleinlaut]hab in der smb.conf ein ziemlich unzweideutiges unix charset= iso8859-15 gefunden, das “irgendwer” da wohl vergessen hat[/kleinlaut] Heureka, jetzt funktioniert’s: FS mit convmv umgewandelt, smb.conf auf UTF-8 umgestellt - alles wie gewünscht! iocharset ist ja wohl laut man-Page eher für die Dateien des Clients zuständig, und codepage schein sowieso überflüssig zu sein ... Trotzdem Dank für den “moralischen Support”!
Gern geschehen