Keine LC_* Variablen gesetzt?

05/01/2008 - 15:05 von Peter Mairhofer | Report spam
Hi,

Anstoss gibt mir mal wieder cron. Ich habe soeben ein Mail von cron
bekommen, wobei die Ausgabe Umlaute enthielt. Das System ist auf UTF8
eingestellt, aber cron schreibt mir in den Header:


Aber hier sollte doch utf8 stehen!

Nun hab ich gelesen dass cron den Charset fuer den Header nimmt, den er aus
den LC_* Variablen beim Start von crond bekommen hat.

Bei mir ist aber keine einzige LC_* Variable gesetzt sondern nur LANG!
(Dennoch funktionieren alle Anwendungen - scheinbar - im passenden Charset
sowie Sprache)

# echo $LANG
de_AT.UTF-8
# env | grep LC
#

Wieso? Es handelt sich dabei um ein relatives neues Debian 4.0 System
(Linux VServer mit debootstrap installiert).

Muss ich die LC_ Variablen jetzt setzen damit mir cron UTF8 Mails
generiert? Und wenn ja, wie mach ich das im "Debian"-Way?

Vielen Dank,
Peter
 

Lesen sie die antworten

#1 Sven Joachim
05/01/2008 - 16:06 | Warnen spam
Am 05.01.2008 um 15:05 schrieb Peter Mairhofer:

Anstoss gibt mir mal wieder cron. Ich habe soeben ein Mail von cron
bekommen, wobei die Ausgabe Umlaute enthielt. Das System ist auf UTF8
eingestellt, aber cron schreibt mir in den Header:


Aber hier sollte doch utf8 stehen!

Nun hab ich gelesen dass cron den Charset fuer den Header nimmt, den er aus
den LC_* Variablen beim Start von crond bekommen hat.

Bei mir ist aber keine einzige LC_* Variable gesetzt sondern nur LANG!
(Dennoch funktionieren alle Anwendungen - scheinbar - im passenden Charset
sowie Sprache)

# echo $LANG
de_AT.UTF-8
# env | grep LC
#

Wieso? Es handelt sich dabei um ein relatives neues Debian 4.0 System
(Linux VServer mit debootstrap installiert).



Weil die Dateien, in denen sie stehen (/etc/default/locale
bzw. /etc/environment) von cron nicht ausgewertet werden. Sie werden
erst beim Login wirksam. Zu diesem Verhalten gibt es auch einen
Fehlerbericht: http://bugs.debian.org/cgi-bin/bugr...?bugA0057.

Muss ich die LC_ Variablen jetzt setzen damit mir cron UTF8 Mails
generiert? Und wenn ja, wie mach ich das im "Debian"-Way?



Am besten wohl in /etc/init.d/cron die /etc/default/locale sourcen und
die LANG- und LC_*-Variablen exportieren. Siehe auch den oben erwàhnten
Fehlerbericht.

Sven

Ähnliche fragen