# samba und die umlaute... :-( [gelöst]

## lolli78

hallo ihr,

samba ist toll. aber ich fände es noch besser, wenn es mir auch in den dateinamen umlaute und andere nicht-7bit-ascii-zeichen anzeigen würde.

die konfiguration:

```

gentoo-notebook <------------------> winXP-notebook

samba                                freigaben

```

auf der xp-box werden die umlaute dank

```

        unix charset = ISO8859-15

        display charset = ISO8859-15

```

korrekt angezeigt, aber auf der linux-box stattdessen nur fragezeichen.

in den smbmount-optionen habe ich fast alle varianten von iocharset und codepage ausprobiert, aber nichts half. weiss jemand, welche codepage windows xp (deutsch) normalerweise verwendet? vielleicht muss ich diese nls ja erst noch kompilieren...

danke schonmal für alle tipps...

lorenz.

----------

## ralph

https://forums.gentoo.org/viewtopic.php?t=114142&highlight=samba+umlaute

https://forums.gentoo.org/viewtopic.php?t=81527&highlight=samba+umlaute

https://forums.gentoo.org/viewtopic.php?t=64418&highlight=samba+umlaute

----------

## lolli78

uiuiui, da hab ich aber schlecht gesucht. stundenlang nach "samba" und "nls" und so...

ich werd mal den trick aus https://forums.gentoo.org/viewtopic.php?t=114142&highlight=samba+umlaute versuchen, der scheint ja vielversprechend. aber gibt es vielleicht noch eine andere möglichkeit ausser einer "default nls" im kernel einzurichten? in der man-page steht, dass es mit codepage=<args> und iocharset=<args> gehen soll, aber das klappt bei mir nicht. wahrscheinlich bin ich zu doof, aber einen bug möchte ich mal nicht ausschließen...

lorenz.

----------

## lolli78

so: mit "cp437" als default-nls in der kernel-konfig funktioniert es. 

komischerweise funktioniert es auch, wenn eine andere default-nls im kernel eingetragen ist (aber es muss eine eingetragen sein) und ich das verzeichnis von hand mounte, also ohne den fstab-eintrag.

```

mount <freigabe> <mountpoint> -o codepage=cp437,...

```

beim mounten mit hilfe der fstab (also mit mount <mountpoint>) wird jedoch immer die default-nls geladen, obwohl die option "codepage=cp437" an smbmount übergeben wird (das sagt zumindest smbmount). lsmod erzählt dann was anderes (nämlich, dass die codepage geladen und benutzt wurde, die als default-nls in der kernel-konfig steht).

im bugzilla von samba.org stehen etliche bugs zu diesem thema...  :Sad: 

lorenz.

----------

## sethleon

Hatte grad was rausgefunden,   :Very Happy: 

wenn man das folgende einstellt hat man volle UTF-8 unterstützung

für viele unicode zeichen im titel von dateien (ü,ö,ä,...,вааывафы):

in /etc/samba/smb.conf:

```
dos charset = uft8

unix charset = utf8
```

----------

## lolli78

hallo,

ja, die hat man dann schon. aber doch nur, wenn man von einem anderen computer auf die samba-box zugreift und nicht, wenn man von linux aus eine windows-freigabe mountet, oder? eigentlich braucht man doch dafür gar kein installiertes samba, alles benötigte müsste doch mit den kernel-sources beiliegen? (modul smbfs)

oder liege ich jetzt komplett daneben? ich habe samba hier installiert, damit ich auch von windows aus auf linux-freigaben zugreifen kann, deshalb habe ich noch nicht ausprobiert, ob es auch ohne funktioniert, aber eigentlich müsste es doch, oder?   :Question: 

lorenz

----------

## sethleon

Um auf einen anderen share zuzugreifen benötigt man

den smbclient, deshalb denk ich ist es nötig samba zu installieren.

Ich hab beide Wege ausprobiert, habe von win eine datei mit unicode

zeichen auf mein samba share kopiert --> alles lesbar,

und auch umgekehrt.

Ich hatte spaßenshalber mal eine Datei umgenannt in test_öäüÖÄÜ_ывяц.txt, jeweils in beider Richtungen kopiert, und

es ist im win und gentoo (bzw. linux) lesbar  :Very Happy: 

( aufgrund UTF-8 )

----------

## lolli78

hallo,

aha, gut zu wissen, dass es mit dem smbclient so geht. ich mounte aber lieber smb-freigaben, und dafür reicht das kernel-modul "smbfs". da läuft alles über mount-optionen - und ist dann völlig transparent, d.h. ich kann die dateien gleich mit irgendwelchen programmen öffnen und muss sie nicht hin- und herkopieren.

lorenz.

----------

## sethleon

Wenn man das per samba macht gibt es jedenfalls keine Probleme

zwischen Windoof und Linux Kodierung, z.B.

Westeurpäische Konvertierung:

Windows: 850

Linux: iso8859-1

Somit geh ich zumindest auf Nummer sicher, dass die

Kodierung international ist ( UTF-8 ) und zwar für unicode zeichen mit

8 Bit Länge. Deshalb kann man dort dann auch mal Umlaute mit drin haben.   :Wink: 

----------

## lolli78

hallo,

nach anfänglichem zweifeln hab ich jetzt mal in die man-pages geschaut.

da steht:

 *Quote:*   

>        dos charset (G)
> 
>               DOS  SMB clients assume the server has the same charset as they do. This option speci-
> 
>               fies which charset Samba should talk to DOS clients.
> ...

 

das bringt also gar nix, wenn du keine uralt-dos-clients hast.

 *Quote:*   

>        unix charset (G)
> 
>               Specifies the charset the unix machine Samba runs on uses. Samba needs to know this in
> 
>               order to be able to convert text to the charsets other SMB clients use.
> ...

 

da setzt du das default also nochmal explizit. hättest du auch weglassen können.

abgesehen davon reden wir über zwei verschiedene baustellen. du redest über smbclient, ich über smbmount. und smbmount interessiert die smb.conf afaik nicht, der nimmt die mount-optionen.

lorenz

----------

## sethleon

Jo is schon klar,

jedoch ist folgendes nicht standardmäßig gesetzt:

```
dos charset = utf8
```

zumindest das war der Ansatzpunkt zum gemeinsamen Share,

und Umlaute Verständnis.

EDIT: Da setz ich das unix charset lieber noch mal explizit.   :Wink: 

Jedenfalls nehm ich Samba um dabei sicher zugehen.   :Smile: 

----------

## lolli78

hallo,

 *Quote:*   

> 
> 
> jedoch ist folgendes nicht standardmäßig gesetzt:
> 
> ```
> ...

 

zeig mir das dos, das unicode versteht. wir reden hier nicht von einem dos 7 oder 8, das wohl immernoch unter manchem windows stecken soll, sondern von einem richtigen dos-client. für die wirst du wohl meistens codepage 437 oder 850 verwenden, wenn du umlaute sehen willst.

lorenz.

----------

## sethleon

Zumindest funktioniert es zwischen meinem Gentoo und Win XP   :Wink: 

----------

