dedlfix: Samba macht Zicken - Zeichencodierung

Beitrag lesen

Hi!

Erstell doch mal eine Datei auf dem Ubuntu-Client, die Nicht-ISO-8859-1-Zeichen enthält
Gute Idee. Bleiben wir beim Tröten.
Vom Ubuntu-Client, auch auf en_US.UTF-8, erzeuge ich eine Datei mit dem Namen "trœt".

Die chinesischen Zeichen und die anderen wählte ich mit dem Hintergedanken, dass auch kein Win-1252 mitspielt, dieses aber in dem Fall das œ kennt.

Ich hab den Rest vom Thread nicht richtig mitverfolgt, hattest du irgendwo deine Konfiguration aufgezeigt, also wie das Ubuntu mit dem Samba-Gentoo verbunden ist? Windows vs. Gentoo ist ja klar, das redet sicher nicht direkt mit Ubuntu.

Ein ls auf der Gentoo-Maschine (wo Samba läuft) zeigt "tr?????t" an, diesmal mit fünf Fragezeichen. Und der Windows-Client zeigt schließlich "tr□ôt" an (ein Kästchen, ein o circonflex), bei genauer Untersuchung finde ich im Dateinamen die Byte-Sequenz 74 72 E2 94 BC C3 B4 74. Das nach UTF-8 decodiert ergibt, wenn ich richtig gerechnet habe U+0074, U+0072, U+263C, U+00F4, U+0074.

Tipp- oder Rechenfehler, das muss ein U+253C sein. Jedenfalls ergibt das ┼ô, was nach CP850 (und auch CP437) C5 93 ist und als UTF-8 gelesen œ ergibt. Da haben also deine Systeme ein UTF-8-œ einzelbyteweise als CP850 interpretiert und diese beiden Zeichen wieder zu UTF-8 gemacht, was deine fünf Fragezeichen sind.

Ein "trœt" vom Windows-Client angelegt, sieht die Gentoo-Shell als "tr??t", der Ubuntu-Client als "tr?t" - wobei der das Fragezeichen hier als echtes Fragezeichen sieht, es ist also schon an anderer Stelle ein Codierungsfehler aufgetreten.

Sind da auch ein UTF-8-Fonts eingestellt? Andererseits deuten echte ? auf die Nichtexistenz eines Zeichens in der Zielkodierung hin.

Übrigens stimme ich dir mittlerweile zu, dass die bash auf der Gentoo-Maschine tatsächlich keinen UTF-8-Support hat; sie stellt bei ls jedes einzelne Byte im Dateinamen oberhalb von 0x80 als '?' dar. Sieht aus wie ASCII only. Das werde mal konkret weiter verfolgen.

Die Baustelle solltest du erst einmal klären. Gentoo hat USE-Flags für unicode und vielleicht auch utf8. Schau mal, ob die gesetzt sind (ufed ist ein ganz passables Tool für die USE-Flag-Verwaltung).

Oder habe ich eine Möglichkeit, Samba tatsächlich beim Interpretieren und ggf. Umcodieren auf die Finger zu schauen?

Vielleicht in Log-Files? Ich hab mich der Überwachung des Sambas noch nicht beschäftigt.

Der DNS-Server weigert sich bei manchen in der hosts-Datei eingetragenen Hostnamen beharrlich, diese aufzulösen.

Ist das überhaupt seine Aufgabe? Die /etc/hosts gilt doch nur lokal und nicht netzweit. Wenn du allerdings meinst, dass die Maschine ihre eigene /etc/hosts nicht lesen will, dann würde ich /etc/resolv.conf als Übeltäter vermuten, denn da steht die Reihenfolge der abzuklappernden Quellen bei einer Namensauflösung drin.

Lo!