Linux系統時間與硬件時間及時間同步

Linux系統有系統時間和硬件時間之分:

系統時間: 一般說來就是我們執行 date命令看到的時間,linux系統下所有的時間調用(除了直接訪問硬件時間的命令)都是使用的這個時間。

硬件時間:主板上BIOS中的時間,由主板電池供電來維持運行,系統開機時要讀取這個時間,並根據它來設定系統時間(注意:系統啓動時根據硬件時間設定系統時間的過程可能存在時區換算,這要視具體的系統及相關設置而定)。

1、查看當前系統時間date:

[root@surfer ~]#date

2018年06月 26日星期二 10:09:21 CST

 

2、設置系統時間date -s +時間

[root@surfer ~]#date -s 10:10:10

2018年06月 26日星期二 10:10:10 CST

 

3、設置系統時間時,如果還需要設置日期,則要將日期與時間值用雙引號包裹起來

[root@surfer ~]#date -s "2018/8/8 10:00:00"

2018年08月 08日星期三 10:00:00 CST

 

4、查看硬件時間用hwclock或者clock命令:

[root@surfer ~]#hwclock

2018年06月26日 星期二 10時13分02秒  -0.805503 秒

[root@surfer ~]#clock

2018年06月26日 星期二 10時13分07秒  -0.507462 秒

 

5、將硬件時間寫入到系統時間:

[root@surfer ~]#hwclock -s

 

6、將系統時間寫入到硬件時間

[root@surfer ~]#hwclock -w

 

7、時間同步,Linux系統需安裝ntpdate

檢查是否安裝了ntpdate : rpm -qa | grep ntpdate

如果沒有安裝則運行如下命令:yum install ntpdate

時間同步命令:ntpdate  www.pool.net.org   ,其中 www.pool.net.org 是互聯網中標準時間服務器

 

8、contab命令

通過vi /etc/crontab命令可以看到定時任務的書寫格式

[root@surfer ~]# vi/etc/crontab

SHELL=/bin/bash      #SHELL變量指定了系統要使用哪個shell

PATH=/sbin:/bin:/usr/sbin:/usr/bin    #PATH變量指定了系統執行命令的路徑

MAILTO=root    #MAILTO變量指定了crond的任務執行信息將通過電子郵件發送給root用戶,如果MAILTO變     量的值爲空,則表示不發送任務執行信息給用戶

 

# For details seeman 4 crontabs

 

# Example of jobdefinition:

# .---------------- minute (0 - 59)   #分鐘

# |  .------------- hour (0 -23)   #小時

# |  |  .---------- day of month (1 - 31)  #日期

# |  |  | .------- month (1 - 12) OR jan,feb,mar,apr … #月份

# |  |  | |  .---- day of week (0 - 6)(Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat  #周

# |  | |  |  |

# *  * *  *  * user-name command to be executed

在以上各個字段中,還可以使用以下特殊字符:

星號(*):代表所有可能的值,例如month字段如果是星號,則表示在滿足其它字段的制約條件後每月都執行該命令操作。

逗號(,):可以用逗號隔開的值指定一個列表範圍,例如,“1,2,5,7,8,9”

橫槓(-):可以用整數之間的橫槓表示一個整數範圍,例如“2-6”表示“2,3,4,5,6”

斜線(/):可以用斜線指定時間的間隔頻率,例如“0-23/2”表示每兩小時執行一次。同時斜線可以和星號一起使用,例如*/10,如果用在minute字段,表示每十分鐘執行一次。

crontab -l  :列出當前用戶的crontab文件內容

* * * * */usr/local/gse/agent/bin/gsectl watch

crontab -e  :編輯當前用戶的crontab文件內容

 

[root@surfer data]#crontab -e

*/1 * * * * echo"hello world">>/data/code.txt

 

在這裏我添加了一個定時任務*/1 * * * * echo"hello world">>/data/code.txt  :意思是每一分鐘打印一次hello world,並且重定向到了/data/code.txt文件裏面,幾分鐘過後查看code.txt,出現瞭如下內容,說明這個定時任務已經開始執行

[root@surfer data]# cat code.txt 
hello world
hello world
hello world
hello world

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章