Zeitformat in Cronjobs anpassen

Aus Bluelupo's Wiki
Wechseln zu: Navigation, Suche

In Cronjobs des Users root hat man u.U Probleme mit den falsch gesetzten Ländervariablen ($LANG). Diese Variable in der Laufzeitumgebung ist nicht gleich des Enviroments auf der Kommanzeile.

Beispiel zur Laufzeit eines Cronjob des Users root das mithilfe der Ausgabe des Kommandos env aufgelistet wird.

SHELL=/bin/sh
USER=root
PATH=/usr/bin:/bin
PWD=/root
HOME=/root
SHLVL=2
LOGNAME=root
_=/usr/bin/env


Hier sieht man das Enviroment auf der Kommandozeile (xterm) des Users root.

SSH_AGENT_PID=1258
XDG_SESSION_ID=8
HOSTNAME=crash
TERM=xterm
SHELL=/bin/bash
HISTSIZE=100000
SSH_CLIENT=192.168.178.49 46862 22
SSH_TTY=/dev/pts/1
HISTFILESIZE=100000
USER=root
MAIL=/var/spool/mail/root
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
PWD=/root
EDITOR=vi
KDE_IS_PRELINKED=1
LANG=de_DE.UTF-8
KDEDIRS=/usr
HISTCONTROL=ignoredups
SHLVL=1
HOME=/root
LOGNAME=root
SSH_CONNECTION=192.168.178.49 46862 192.168.178.59 22
LESSOPEN=||/usr/bin/lesspipe.sh %s
XDG_RUNTIME_DIR=/run/user/root
_=/bin/env

Hier ist definitiv die Ländervariable $LANG aufdeutsch gesetzt (de_DE.UTF-8). Um nun Cronjobs des Users root ebenfalls die korrekte Ländervariable zu bekommen muss dies explizit im Cronjob gesetzt und exportiert werden. dadurch wird gewährleistet das Datums- und Zeitformate im jeweiligen Landesformat korrekt angezeigt werden.

export LANG=de_DE.UTF-8