Unicode über Samba FreeBSD > OpenBSD

kraekers

Well-Known Member
Hallo und ein schönes neues Jahr,

ich habe folgendes Problem.

Mein Server basiert auf OpenSBD 4.8 und meine Workstations basieren auf FreeBSD 8.1.

Die Systeme sind nicht auf Unicode umgestellt, was jedoch unter FreeBSD in Angriff genommen werden soll.

OpenBSD ist ja, soviel ich weiß, nicht Unicode tauglich. Wie stelle ich es daher an, dass die Workstations unter UTF-8 mit einem nicht UTF-8 tauglichen OpenBSD Server über Samba kommunizieren ohne das ich mir die Dateien zerstöre?

Auf dem OpenBSD-Server habe ich in der smb.conf folgenden Eintrag:

Code:
dos charset = CP1252	
unix charset = ISO8859-15	
display charset = ISO8859-15

Kann der weg oder wie muss er ggfs. geändert werden?

Gibt es ansonsten was noch zu beachten wäre?

Für einige Tipps wäre ich dankbar.

Vielen Dank im Voraus.

Beste Grüße

kraekers
 
OpenBSD ist ja, soviel ich weiß, nicht Unicode tauglich.
Doch, prinzipiell schon. Es kommt aber darauf an, ob der Samba-Port die Unicode-Implementierung schon benützt oder ob vielleicht noch ein paar Funktionen in der libc fehlen, die er unbedingt benötigt. Das configure-Skript mal durchlaufen zu lassen könnte Auskunft geben.
 
Packages werden ja auch nur aus Ports gebaut. ;) Jedenfalls, bei mir setzt configure unter anderem Folgendes in die config.h:

Code:
#define DEFAULT_UNIX_CHARSET "UTF-8"
Das sieht mir doch stark nach funktionierendem UTF-8 aus.
 
Das ist richtig. Aber es ist doch die Frage ob die Paketersteller diesen Parameter benutzt haben.

Was muss denn in die smb.conf wenn ich noch mal nerven darf?

Reicht denn ein

Code:
unix charset     = UTF8

oder sollte da noch etwas anderes hinzugefügt werden?
 
Da gibt’s keinen Parameter. Das Skript erkennt, daß UTF-8 benutzt werden kann und teilt das über die Header-Datei dem Präprozessor mit. Nichts anderes passiert beim Erstellen von Paketen für ein Release.

Das Unix Charset is ja per default schon UTF-8, wenn ich das richtig verstanden habe. Ändern mußt du also das Display Charset.
 
So, habe ich mal getestet und läuft so wie ich will.

Die Workstation mit FreeBSD 8.1 + UTF-8 und OpenBSD 4.8 mit Samba + UTF-8 Integration.

Wenn ich etwas von der Workstation auf den Server kopieren werden Umlaute sauber kopiert und auf allen meinen Clients, die UTF-8 eingestellt haben, korrekt dargestellt.

Wenn ich mich über das KDE4-Terminal + SSH auf dem Server einlogge, sehe ich auch alle Umlaute der kopierten Daten einwandfrei.

Nur wenn ich direkt auf der Shell des OpenBSD Servers werkel, dann sehen die Umlaute kryptisch aus. Aber soviel ich weiß unterstützen die Shells eh kein UTF-8, daher scheint dies so normal zu sein.

Ich kann daher meine Daten entweder nur über einen Filemanager mit Sambaeinbindung oder über Terminal + SSH verändern (z.B. umbenennen), auf der Shell des Servers werde ich direkt nicht mehr arbeiten (können, zumindest nichts umbennen mit Umlauten).

Kann jemand die Erfahrungen teilen?

Beste Grüße
kraekers
 
Ich habe bei mir einen Rechner mit FreeBSD 8 und Windows Clients und habe die selbe Erfahrung gemacht. Beim Zugriff über Samba oder mit ssh habe ich keinerlei Probleme, die Konsole an sich kommt mit dem Zeichensatz aber nicht klar.

Unter FreeBSD i386 konnte ich mir dann aber mal mit jfbterm helfen... Schau mal hier: http://forums.freebsd.org/showthread.php?t=311
 
So, habe ich mal getestet und läuft so wie ich will.

Die Workstation mit FreeBSD 8.1 + UTF-8 und OpenBSD 4.8 mit Samba + UTF-8 Integration.

Wenn ich etwas von der Workstation auf den Server kopieren werden Umlaute sauber kopiert und auf allen meinen Clients, die UTF-8 eingestellt haben, korrekt dargestellt.

Wenn ich mich über das KDE4-Terminal + SSH auf dem Server einlogge, sehe ich auch alle Umlaute der kopierten Daten einwandfrei.

Nur wenn ich direkt auf der Shell des OpenBSD Servers werkel, dann sehen die Umlaute kryptisch aus. Aber soviel ich weiß unterstützen die Shells eh kein UTF-8, daher scheint dies so normal zu sein.

Ich kann daher meine Daten entweder nur über einen Filemanager mit Sambaeinbindung oder über Terminal + SSH verändern (z.B. umbenennen), auf der Shell des Servers werde ich direkt nicht mehr arbeiten (können, zumindest nichts umbennen mit Umlauten).

Kann jemand die Erfahrungen teilen?

Beste Grüße
kraekers

Der Shell ist das egal, es liegt einzig an deinem Terminal. Wenn du dich per SSH einloggst, bist du ja auch direkt in ner Shell auf dem Server. Du meinst wohl die Konsole..
 
Ich habe bei mir einen Rechner mit FreeBSD 8 und Windows Clients und habe die selbe Erfahrung gemacht. Beim Zugriff über Samba oder mit ssh habe ich keinerlei Probleme, die Konsole an sich kommt mit dem Zeichensatz aber nicht klar.

Unter FreeBSD i386 konnte ich mir dann aber mal mit jfbterm helfen... Schau mal hier: http://forums.freebsd.org/showthread.php?t=311

Es hilft eigentlich jeder beliebige Terminal-Emulator, der UTF-8 beherrscht. Sogar xterm tut das. Man muß aber natürlich auch eine Schrift benutzen, die die gewünschten Zeichen enthält. Eine kleine Zusammenfassung bietet dieser Artikel auf Undeadly: http://www.undeadly.org/cgi?action=article&sid=20100729233638
 
Ich wollte aber das ganze X-Geraffel nicht, weil ich nur ein Konsolenprogramm benutzen wollte und dann ist jfbterm eigentlich ne gute Lösung.
 
Hallo,

vielen Dank für die vielen Antworten und Tipps. Habe jetzt X unter OpenBSD am laufen und dazu die Lokalisierung in /etc/profile angepasst. Jetzt kann ich mit Umlauten unter Xterm arbeiten (bei Bedarf), so bin ich glücklich. Die meise Zeit werde ich eh über das KDE4 Terminal auf den Server zugreifen.

Danke Euch allen.

Beste Grüße
kraekers
 
Zurück
Oben