UTF8 oder ISO8859

Mardor

Well-Known Member
Hallo,

ich habe versucht mein System auf Deutsch umzustellen.

Nun habe ich viele Anleitungen gelesen die aber immer wieder unterschiedliche Angaben für die .login_conf machen:

Ist nun:

Code:
me:\
    :charset=ISO-8859-1:\
    :lang=de_DE.ISO8859-1:

oder

Code:
me:\
:charset=UTF-8:\
:lang=de_DE.UTF-8:

die bessere Einstellung.

Gruß Mardor
 
Hallo Nuke,

akzeptiert. Ist dann aber wenn ich mich für UTF-8 entschieden habe der Eintrag in /etc/login.conf korrekt ?

Code:
german|German Users Accounts:\
:charset=ISO-8859-1:\
:lang=de_DE.ISO8859-1:\
:tc=default:

Oder muss ich den dann auch auf UTF-8 und DE.UTF-8 anpassen ?

Gruß Mardor
 
Ich setze das eh immer direkt bei "default", da ich eh nur eine Nutzergruppe habe.

Aber solange du deine Nutzer nicht den entsprechenden Gruppen/Klassen über die passwd zuordnest, passiert da eh nichts und es greift default.
 
Hallo Nuke,

eigentlich sollte doch "tc=" den "german" eintrag an den "default" anhängen.

Die Aussage auf der man page verstehe ich leider nicht wirklich:
The usual convention to interpolate capability entries using the special
tc=value notation may be used.

Verstehe ich auch richtig, dass du die Einträge ":charset=UTF-8:\" und ":lang=de_DE.UTF-8:" an den default anhängst.

Gruß Mardor
 
Also ich hab die login.conf nicht großartig bearbeitet. tc leitet bei mir überall auf default, schon vom Standard aus.

Und ja, charset und lang habe ich einfach unten bei default mit angehängt. Das war auch meine einzige Änderung an der Datei.

Und um es ohne Missverständnisse hier zu zeigen, das ist meine login.conf, wenn ich mal alle Kommentare und Beispiele entferne:

Code:
default:\
    :passwd_format=sha512:\
    :copyright=/etc/COPYRIGHT:\
    :welcome=/etc/motd:\
    :setenv=MAIL=/var/mail/$,BLOCKSIZE=K:\
    :path=/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin ~/bin:\
    :nologin=/var/run/nologin:\
    :cputime=unlimited:\
    :datasize=unlimited:\
    :stacksize=unlimited:\
    :memorylocked=64K:\
    :memoryuse=unlimited:\
    :filesize=unlimited:\
    :coredumpsize=unlimited:\
    :openfiles=unlimited:\
    :maxproc=unlimited:\
    :sbsize=unlimited:\
    :vmemoryuse=unlimited:\
    :swapuse=unlimited:\
    :pseudoterminals=unlimited:\
    :priority=0:\
    :ignoretime@:\
    :umask=022:\
    :charset=UTF-8:\
    :lang=de_DE.UTF-8:

standard:\
    :tc=default:
xuser:\
    :tc=default:
staff:\
    :tc=default:
daemon:\
    :memorylocked=128M:\
    :tc=default:
news:\
    :tc=default:
dialer:\
    :tc=default:

root:\
    :ignorenologin:\
    :memorylocked=unlimited:\
    :tc=default:

russian|Russian Users Accounts:\
    :charset=KOI8-R:\
    :lang=ru_RU.KOI8-R:\
    :tc=default:
 
Ist dann aber wenn ich mich für UTF-8 entschieden habe der Eintrag in /etc/login.conf korrekt ?
Wenn du die Einstellungen in deinem $HOME vornimmst, werden die Einstellungen in /etc/login.conf "überschrieben". Da musst du nichts mehr anpassen. Einfach beim User in $HOME die Datei .login_conf erstellen und fertig z.B. bei mir:
Code:
me:\
  :charset=UTF-8:\
  :lang=en_US.UTF-8:
Nicht vergessen, dass du auf der Konsole noch "VT" aktivieren musst. Nur dann funktioniert dort auch UTF-8! Über SSH ist das kein Problem.
 
Hallo foxit,

vielen Dank für den Tipp.

Da ich auf der Kiste sowieso nur mit SSH draufkomme, würde dies entfallen.

Mich wundert trotzdem das ich beispielsweise folgende Files immer noch im Verzeichnis sehe:

gepr?ft.Kurz.2013.pdf

Leider habe ich auch keine Chance irgendwie das File umzubennen, da ich weder mit TAB nocht durch ausschreiben den Dateinamen ändern kann. Es kommt immer wieder das die Datei nicht gefunden wird.

Gruß Mardor
 
Die wenigsten Dateisysteme speichern das Encoding der Dateinamen mit. D.h. wenn du mittels ISO8859-1 oder einem anderen Encoding Dateien mit Umlauten speicherst, dann funktioniert das unter anderen Encoding-Einstellungen nicht. Schon alleine darum bei Multiplattform-Geschichten weiterhin Umlaute in Dateinamen vermeiden.

Was du mal probieren könntest, wäre LANG=de_DE.ISO8859-1 als Umgeungsvariable zu setzen, bevor du was machst. Oder welches Encoding auch immer.

Es gab da aber auch irgend ein Tool, welches Dateinamen "korrigiert"...
 
iconv
sitze zwar nicht am FreeBSD-PC und kann daher nicht nachsehen, aber schau mal nach. Ich meine, iconv macht solche Umsetzungen.

Mein FreeBSD ist ja schon alt (8.x) und da gehen nicht alle Programme klaglos mit UTF um. ee zum Beispiel macht damit Probleme und das fällt mir vielleicht am stärksten auf. Einige andere stolpern aber ebenfalls. Für reibungsloses FreeBSD konnte man daher zu meiner Version nicht unbedingt UTF-8 empfehlen, trotzdem nutze ich es eben mit diesen Einschränkungen sehr gern.

Wenn du fremde Dateisysteme mountest, brauchts du evtl passende Optionen. Mir fällt das nur mit Microsoft-Systemen auf, aber es könnte ja auch bei anderen gelten. Jeweils nachlesen ist vielleicht ein Tip, oder eben mit gestörten Namen leben.
 
achso, zum direkten Ändern der Datei.
Die falsch dargestellten Zeichen sind auf der Konsole eben auch irgendwie falsch. Du müsstest diese genauso falsch nachmachen (also abwegige Symbole fabrizieren), oder durch Joker ersetzen. Dabei sind oft mehr Zeichen im Gebrauch, als man auf den ersten Blick sieht.
Probier am einfachten mal Joker zusammen mit ls und wenn du die passende Datei bekommst, dann sollte auch mv mit diesen Jokern arbeiten und die richtige Datei finden.
 
neben mc, an den ich mich nie gewöhnen konnte, wird sicher so ziemlich jeder grafische Dateimanager das auch richtig machen, wenn er eine Option zum Umbenennen hat. Natürlich muss er dann auch "wissen", in welchem Format der Name nun neu zu schreiben ist, sich also aus der Systemeinstellung oder dem lokalen Setting heraus passend einstellen.
Damit zeigt sich dann auch ein Problem bei Dateien, die über ein Netzwerk betrachtet werden. Ist der Lokale Rechner etwa auf UTF eingestellt, der entfernte aber auf ISO und dementsprechend die Dateien auch in ISO benannt, dann kann der Betrachter Fehler sehen. Korrigiert er diese nun, dann sind die Dateien auf dem entfernten Rechner nicht mehr fehlerfrei. Wenn viele PCs auf eine Freigabe zugreifen, sollte man tunlichst auf einem Code bestehen, der dann für alle gleich ist. Deshalb entschied ich mich für UTF auch auf FreeBSD.

iconv(1) ist das Tool, das ich oben meinte. Es wandelt aber nicht Dateinamen, sondern Text von x -> nach y.
In einem Script kann es aber benutzt werden und arbeitet flott, so dass viele Dateien damit wie "in einem Rutsch" umbenannt werden können. Nach einer Umstellung eines Systems lohnt sich der Aufwand, über alle Daten-Dateien mit solch einem Script mal drüber zu gehen und einheitliches Encoding zu schaffen.
 
Zurück
Oben