[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Systemsprache auf Deutsch stellen



On 22.05.06 14:48:18, Holm Kapschitzki wrote:
> Andreas Pakulat schrieb:
> >locale-gen ist ueberfluessig. Ansonsten wuerde ich die Default-Locale
> >nicht auf Deutsch stellen, das bringt manche Programme u.U.
> >"durcheinander". Du kannst aber sehr bequem die Sprache aller Benutzer
> >auf de_DE@euro oder aehnliches einstellen indem du ein 
> >export LANG=de_DE@euro
> >
> >in /etc/profile ablegst. Dann wird fuer jeden Nutzer der sich einloggt
> >die Sprache gesetzt. Skripte und Programme werden aber ueblicherweise
> >nicht ueber eine "login-shell" gestartet so dass diese davon unberuehrt
> >sind.
> >  
> 
> auf meinem Server loggen sich keine Benutzer ein, da ich keine Shellzugänge 
> vergebe. Trotzdem müssen natürlich unter Confixx Systemaccounts erstellt 
> werden, für Mail und Berechtigungen, (z. Bsp. suexec etc.) aber das dürfte 
> mit der Sprache ja wenig zusammenhängen.
> 
> Also in erster Linie gehts mir wie gesagt um die Systemprogramme und den 
> Apache.

Aha. Es geht also um einen reinen Server. Sehr schoen.

> Also was würdest Du denn nun genau systemweit einstellen ? "LANG=C " ? Wo denn 
> ?

LANG=C. Das ganze ist Default und du musst dafuer einfach nur die
/etc/environment leeren, sowie bei dpkg-reconfigure locales keine
Default-locale auswaehlen

> Nicht  LANG=de_DE.UTF-8 oder de_DE@euro ISO-8859-15 ?

Nein. Ich wuerde aber in der Apache-Konfig entweder das Default-Charset
auf ISO-8859-1/15 oder UTF-8 setzen.

> >>|Aber irgendwie habe ich dann in den Mails, die über Postfix laufen 
> >>Sonderzeichen, statt deutsche Umlaute.|
> >>    
> >
> >In welcher Form? Hast du 2 Zeichen statt einem? Dann ist die Mail utf-8
> >kodiert. Womit zeigst du die Mail denn an, mit less? Oder liest du sie
> >im Mailclient?
> 
> aus einem "ü" wird ein "X"

Huh? Also am Client. Hast du dir schonmal die Mail im Roh-Format
angesehen? Insbesondere was den Content-Type angeht. Das Subject muss
auch speziell kodiert werden wenn es Umlaute enthaelt.

> ich selber nehme Thunderbird, aber ich nehme mal an die Benutzer 
> "Outlook/Thunderbird/ und alles quer Beet .....)

Hmm, was auch oft passiert, insbesondere mit den M$-Programmen, ist das
gar kein Content-Type gesetzt wird. Dann kann der empfangende Mailclient
die Mail oft nicht korrekt in die lokale Kodierung umkodieren (also
z.B. eine latin1-kodierte Mail zur Anzeige in ner UTF-8 umgebung in
UTF-8 umkodieren). Meist nimmt der Mailclient dann an die Mail waere im
lokalen Encoding kodiert und wenn das nicht stimmt gibts Probleme bei
der Ausgabe.

> > Wenn ersteres: Einfach ein 
> >cat mail | recode utf8..latin9 | less   
> 
> wie gesagt die Benutzer haben keinen Shellzugang sondern nehmen alle zur 
> verfügung stehenden Mailclients.

Ja aber du kannst doch wohl hoffentlich auf den Server und dort mal in
die spool-files schauen? Ansonsten schau dir mal die Rohdaten der Mail
an, das geht auch bei TB.

> >>Wie macht ihr denn das ? UTF8? Aber bei UTF8 gibts doch auch Probleme ?
> >>    
> >
> >Also ich laufe hier auf LANG=C als Default und setze LANG=de_DE.UTF-8 fuer
> >meinen eigenen Nutzer sowie LANG=de_DE fuer den 2. Benutzer. Ich hab
> >keinerlei Probleme mit UTF-8. 
> >Andreas
> >  
> 
> also nichts machen dpkg-reconfigure locales, sondern nur /etc/exports nehmen, 

Hae? Wieso /etc/exports? Das ist fuer NFS-Freigaben. Ok, um das mal ein
wenig in eine Linie zu kriegen:

In Sarge wird die Datei /etc/environment beim Login eingelesen und nur
dabei. Entweder beim Login ueber ssh, einem Login an einem TTY oder auch
wenn eine Shell mit dem Parameter -l gestartet wird.

In dieser Datei stehen Eintraege der Form
<Variable>=<Wert>

Dabei ist <Variable> eine beliebige Shell-Variable.

dpkg-reconfigure locales macht nun nichts weiter als die von dier
markierten Locales (im 1. Schirm) in die Datei /etc/locale.gen
einzutragen und die von dir ausgewaehlte Locale mittels
LANG=<locale>
in /etc/environment einzutragen. Abschliessend ruft es noch locale-gen
auf um die locales zu generieren.

Soviel dazu. Ich habe keinerlei LANG-Einstellung in /etc/environment und
somit laeuft das System mit LANG=C (dem "einprogrammierten"
Default-Wert). Damit kommen mit ziemlicher Sicherheit Programme
und Skripte zurecht. Es gibt naemlich Programme/Skripte die die Ausgabe
von anderen Programmen "parsen" und wenn da dann statt englischen
ploetzlich dt. Meldungen auftauchen ist das etwas unguenstig.

Genauso ist es meist guenstiger in den logs englische Fehlermeldungen zu
bekommen, da man damit besser suchen und in engl. ML's fragen kann.

> aber ich denke das gilt nur für Shellaccount und nicht für die Dienste, also 
> ich müsste einen Weg finden für alle Dienste eine Systemsprache einzustellen, 
> wo zum Beispiel Postfix oder Squirrelmail! salle deutschen Umlaute korrekt 
> anzeigt. Benutzerspezifische Einstellungen währen an dieser Stelle, nehme ich 
> mal an egal.

Squirrelmail kenne ich zwar nicht genau, aber welche Locale beim Starten
desselben aktiv ist sollte egal sein. Wichtig ist aber das die Mails
einen korrekten Content-Type haben und das der Apache die HTML-Seiten in
der richtigen Kodierung ausliefert. Also evtl. dessen Konfiguration mal
pruefen ob er per default latin1, latin9 oder utf-8 verschickt. Postfix
selbst sollte ja eigentlich am Inhalt der Mails (auch bzgl. Kodierung)
nichts aendern, ausser du hast das explizit irgendwo eingerichtet - das
muesstest du dann aber wiederum wissen.

Andreas

-- 
Look afar and see the end from the beginning.



Reply to: