この記事は公開されてから7年経過しています。現在とは内容が異なる場合がありますのでご注意ください。
最新の記事や関連記事をお探しの方は下の「サイト内検索」で検索してみてください。
最新の記事や関連記事をお探しの方は下の「サイト内検索」で検索してみてください。
※[2014-08-25] 追記しました。
※[2017-07-14] 再追記しました。
AWS EC2 の AmazonLinux インスタンスだと、デフォルトのタイムゾーンは UTC になってます。
これを JST にするときは以下のようにやると思います。
1 2 |
ec2-user$ sudo rm /etc/localtime ec2-user$ sudo ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime |
この後インスタンスのリブートを行なえば特に問題ないんですが、リブートをしない場合は次の点に気をつけましょう。
crond の再起動を忘れないように
そう、crond は古いタイムゾーンのまま時間をチェックしているようで、
毎日0時に実行するはずのものが午前9時に実行されるという風に9時間ずれてしまいます。
ので、
1 |
ec2-user$ sudo service crond restart |
を行うようにしましょう。
ちなみに、 yum update で kernel のアップデートがあったとき?にも /etc/localtime が元に戻るようなので、お気をつけ下さい。
[2014-08-25:追記]
コピー元のzoneinfoファイルを指定する方法があるようです。
1 2 3 4 |
ec2-user$ sudo vi /etc/sysconfig/clock --- ZONE="Japan" UTC=false |
として保存しておくと Kernel アップデートのたびに localtime をコピーしなおさなくてもよいそうです。
[2017-07-14:追記]
crond だけじゃなく syslog(もしくはrsyslog) も再起動しておかないと syslog で出力されているログの時刻がずれたままとなります。
1 |
ec2-user$ sudo service rsyslog restart |