AIX:suまたはcrontabを使用するときにタイムゾーンが異なるのはなぜですか?

AIX:suまたはcrontabを使用するときにタイムゾーンが異なるのはなぜですか?
3:root@SERVER:/root # cat wtf.sh
echo "date"
date 
echo "su - root -c date"
su - root -c date
3:root@SERVER:/root # 
3:root@SERVER:/root # ksh wtf.sh
date
Wed Nov  9 13:15:01 MEZ 2016
su - root -c date
Wed Nov  9 12:15:01 UTC 2016
3:root@SERVER:/root # grep TZ /etc/environment
    TZ=MEZ-1MESZ-2,M3.5.0/02:00,M10.5.0/03:00
3:root@SERVER:/root # oslevel -s
6100-09-06-1543
3:root@SERVER:/root # 

なぜ違うの?

crontabにUTCが表示されても、システムTZはMEZです。

ベストアンサー1

最近TZに切り替えましたか?

TZを変更した場合は、通常は再smitty chtz_date起動をお勧めします。

ログアウト/ログインしたばかりの場合、セッションに新しいTZが表示されます。ただし、すでに実行されているプロセスは以前のプロセスについてのみ知っています。

その後、TZ変更を適用するには、すべてのサービスを再起動する必要があります。再起動はできませんので、init再起動をお勧めします。

あなたの場合、cron殺して再起動するとうまくいきません。これにより、再起動を回避できます。

再起動しても問題が解決しない場合は、追加してecho $TZ現在の各環境の変数を確認してください。

また、見ることができますAIXを再起動せずにタイムゾーンをUTCに変更する方法

編集:TZを確認します/etc/environmentが、上書きされていることを確認する必要があります。

/etc/profile
$HOME/.kshrc
$HOME/.profile

引用:AIX Korn シェル環境

おすすめ記事