之前大都用linux,突然上手debian發現一些之前不大熟悉的問題
在此做下記錄:
場景:需要安裝每天定時執行一次配置定時任務,發現自己定時任務安裝天配置怎麼都不執行,分鐘可以執行
排除了定時任務本身未啟動問題
debian的定時任務的啟動日志需要單獨開啟,預設是沒有的,開啟後也買發現任何問題
偶爾看了下伺服器時間,當時就暈了,debian的伺服器時間預設用的時區非我們的東8區
1 安裝時間同步 apt-get install ntpdate
2 進行時間同步 ntpdate cn.pool.ntp.org
3 date -R 檢視
4 debian使用tzselect指令進行選擇修改時區
5 最後我們需要 vim /etc/profile 檔案修改下
export TZ='Asia/Shanghai'
export PATH=$JAVA_HOME/bin:$TZ:$PATH
6 source /etc/profile 使之有效
想着時間已經OK了,很欣喜,但是還是不起作用
原來 Debian裡設定時間由兩部分組成,localtime和timezone。平時直接用tzselect設定了時區後似乎能看到的時間都是正确的,也就忽略了localtime。但實際上crontab的執行時間是受localtime決定的
1 rm/etc/localtime
2 cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime
重新開機cron
/etc/init.d/crond start //啟動
/etc/init.d/crond stop //關閉
/etc/init.d/crond restart //重新開機
到此為止我這邊已經OK了
網上有文檔說有的還不行可以考慮下
dpkg-reconfigure tzdata 其他網友驗證