① linux修改時區時間命令
. 前言
如果你想修改Linux系統里的時間,本文合適你。Linux上有多種修改時間的命令工具,本文介紹最常用、最通用的方法。
linux修改時間
先來了解世界時間的標准,包括GMT、UTC、CST、DST、以及操作系統同步時間的方式
1.1 UTC
整個地球分為二十四時區,每個時區都有自己的本地時間。在國際無線電通信場合,為了統一起見,使用一個統一的時間,稱為通用協調時(UTC, Universal Time Coordinated)。
1.2 GMT
格林威治標准時間 (Greenwich Mean Time)指位於英國倫敦郊區的皇家格林尼治天文台的標准時間,因為本初子午線被定義在通過那裡的經線。
UT(世界時)和GMT(格林威治標准時)是相同的時間標准,都是基於天體觀察的。
UT 是相同標準的「科學」名稱。GMT:格林威治時間,是標準的「民間」名稱。
因此,格林威治標准時(GMT)和世界時 (UT) 是相等的。
UTC是我們現在用的時間標准,GMT是老的時間計量標准。UTC是根據原子鍾來計算時間,而GMT是根據地球的自轉和公轉來計算時間,也就是太陽每天經過位於英國倫敦郊區的皇家格林威治天文台的時間就是中午12點。由於現在世界上最精確的原子鍾50億年才會誤差1秒,可以說非常精確。而GMT因為是根據地球的轉動來計算時間的,而地球的自轉正在緩速變慢,所以使用GMT的話,會不太精準,一般情況那感覺不到差異,但是UTC更加科學和精確。
1.3 CST
中國標准時間 (China Standard Time)
1.4 DST
夏令時(Daylight Saving Time) 指在夏天太陽升起的比較早時,將時鍾撥快一小時,以提早日光的使用。(中國不使用)
我們需要知道的是:
GMT + 8 = UTC + 8 = CST
1.5 操作系統時間
以Linux為例,其實Windows或者其他操作系統也是類似的。
Linux時間有兩個時間:
Wall Time:系統時間,該時間由系統維護,可以是臨時,也可以是網路上同步回來的,也可以是從硬體讀取出來的,前提條件是系統服務正常運行,如果系統關機了,那就不存在Wall Time
RTC Time:RTC(Real-Time Clock)或CMOS時間,即硬體時間,你可以理解為主板BIOS在一聲聲哀嚎聲中,數學老師帶著一摞試捲走了進來。
好像是因為冬天天冷,體育老師凍感冒了。
所以變成了兩節數學課,順便考個試。
數學老師名叫歐島,一個很富有數學氣息的名字,常年帶著一個黑框眼睛。
卷子陸續分發。
作為一個學渣,蘇牧無奈的拿出了數學參考資料,想碰碰運氣看能不能找到原題。
「叮!查看了數學題目,數學積分+1,當前積分1/100,等級:一級」
突然,從腦海中冒出來的聲音,將他嚇了一大跳,差點沒從凳子上滑落下來。
一旁的同桌顏小珂忍住沒有笑場。
歐島則是狠狠的瞪了蘇牧一眼。
「???…」
蘇牧瞪大了眼睛,有些不可置信。
「這是什麼鬼東西?這是系統??居然真的有系統這種東西?」
蘇牧繼續翻動,又出現了同樣的聲響。
「叮!您查看了數學題目,數學積分+1,當前積分2/100,等級:一級」
他只是瞟了一眼,居然就增加了積分?
蘇牧覺得自己的腦子清明了些。
這些陌生的數學題目,似乎看起來也熟悉了幾分。
他越發的激動起來。
這些都是真正出現在他眼前的變化!
蘇牧翻書的動作越來越快,積分也越來越多,直到歐島走過來站到了他的面前,才反應過來迅速收了回去。
這個時候,他的積分已經達到了81/100。
他並沒有慌張,而是繼續將試卷上的題目查看了一遍。
終於,系統迎來了新的提示音。
「叮,您的數學積分已經足夠,等級:二級,當前積分0/1000!」
這一瞬間,蘇牧彷彿像醍醐灌頂一般,曾經那些陌生的數學題,彷彿變成了多年的好友!
他居然!
看懂了!
看懂了!!
居然看懂了!!
蘇牧的內心頓時內流滿面,頗有苦盡甘來的感覺。
彷彿是要檢驗自己的成果,蘇牧的心思完全沉寂在了試卷之中,這是一個學渣對於知識的渴望。
時間一點一滴的過去,就連蘇牧自己都沒有發現。
可惜的是,雖然他的數學已經達到了二級,但還是有些題目沒辦法運算出來。
「叮…..」
這一次不是系統的提示音,而是下課的鈴聲。
蘇牧真的是頭一次感受到了時間過的如此之快。
曾經漫長的兩個小時,現在居然還讓他有些意猶未盡。
這就是學霸的感覺嗎?他默默的想到。
這張試卷,蘇牧覺得自己應該是103分。
因為不會的題目他都空著。
而那些簡單一點的題目,蘇牧有一種迷之自信。
他得出的答案,一定是正確答案!
……
「我要好好學習了。」
強忍住內心的激動,蘇牧擺正了
② 怎麼把linux上的UTC時間改成CST時間
[root@localhost ~]# date
Fri Apr 14 23:26:05 EDT 2006 //EDT (美國)東區時區
[root@localhost ~]# date -s 2011/9/30
Fri Sep 30 00:00:00 EDT 2011
[root@localhost ~]# date -s 14:18
Fri Sep 30 14:18:00 EDT 2011
[root@localhost ~]# date
Fri Sep 30 14:18:01 EDT 2011
[root@localhost ~]# hwclock -w
/usr/share/zoneinfo/Asia/ 下保存著系統各個時區信息
/etc/localtime 保存當前系統時區及時間信息
[root@localhost ~]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
cp: overwrite `/etc/localtime』? y
[root@localhost ~]# date
Sat Oct 1 02:20:03 CST 2011 //更改為CST
[root@localhost ~]# date -R
Sat, 01 Oct 2011 02:21:45 +0800
然後重新設置下時間即可。
我們也可以通過rh系統中的命令來修改:
[root@localhost ~]# tzselect // tzselect – select a time zone
比較人性化,可以根據提示直接修改即可。
③ linux系統怎麼改時間
方法/步驟
首先輸入date的時候,系統輸出的是linux的當前時間
④ 怎樣更改linux小紅帽系統時區由mst改成cst
1) 找到相應的時區文件 /usr/share/zoneinfo/Asia/Shanghai
用這個文件替換當前的/etc/localtime文件。
2) 修改/etc/sysconfig/clock文件,修改為:
ZONE="Asia/Shanghai"
[color=red]UTC=true[/color]
ARC=false
3)
時間設定成2005年8月30日的命令如下:
#date -s 08/30/2005
將系統時間設定成下午6點40分0秒的命令如下。
#date -s 18:40:00
4)
同步BIOS時鍾,強制把系統時間寫入CMOS,命令如下:
#clock -w
5)重啟apache。
參考資料二、
本文檔解釋了如何從linux下設置計算機的時鍾,如何設置您的時區和其它與linux如何保存時間相關的材料。
您的計算機有兩個時鍾,一個是始終運行的、由電池供電的( 硬體的、BIOS或CMOS )時鍾,另一個是由運行在您的計算機上的操作系統維護的( 系統 )時鍾。硬體時鍾通常只在操作系統啟動時用來設置系統時鍾,然後直到重啟或關閉系統,由系統時鍾來記錄時間。在Linux 系統中,您可以選擇用UTC/GMT 時間或本地時間來記錄硬體時鍾。推薦的選項是用UTC 記錄,因為夏令時可以自動記錄。使用UTC 記錄硬體時鍾的唯一不足是,如果您使用雙系統,其它操作系統,如DOS 要求硬體時鍾用本地時間設置,那麼在那個操作系統里時間將是錯誤的。
設置時區:
Linux 下的時區是通過建立從/etc/localtime[1] 到/usr/share/zoneinfo [2] 目錄下與您所在時區相符的文件的符號鏈結實現的。例如,由於我在南澳大利亞,/etc/localtime就是到 /usr/share/zoneinfo/Australia/South的符號鏈結。要建立這個鏈結,運行:
ln -sf ../usr/share/zoneinfo/your/zone /etc/localtime
替換your/zone 為形如Australia/NSW或Australia/Perth 的文件。看看/usr/share/zoneinfo目錄都有什麼時區。
[1] 這里假設/usr/share/zoneinfo 是到/etc/localtime 的鏈結的前提是Redhat Linux
[2] 在舊版本的系統里,您會發現使用/usr/lib/zoneinfo而不是/usr/share/zoneinfo。參考後面「一些應用程序中時間錯誤」。
⑤ Linux 7系統修改時間
1 TIMEDATECTL命令
該命令是作為systemd系統和服務管理器的一部分分發的工具,可以用它來查看和更改系統時鍾的配置,包括更改當前的日期和時間、設置時區以及可以激活與遠端伺服器系統時鍾的自動同步,是紅帽企業版 7 版本新增的命令。
1.1 展示當前日期和時間
可以使用timedatectl命令來展示當前日期和時間,並且有系統和硬體時鍾的配置的詳細信息。
[root@strong ~]# timedatectl
Local time: Sat 2019-09-21 15:02:27 CST
Universal time: Sat 2019-09-21 07:02:27 UTC
RTC time: Sat 2019-09-21 07:02:27
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
1.2 更改當前時間
更改當前時間,命令格式為:timedatectl set-time HH:MI:SS。
該命令同時更改系統時間和硬體時鍾,執行結果與使用命令date --set 和hwclock --systohc的效果相同。
[root@strong ~]# timedatectl set-time 20:00:00
[root@strong ~]# timedatectl
Local time: Sat 2019-09-21 20:00:04 CST
Universal time: Sat 2019-09-21 12:00:04 UTC
RTC time: Sat 2019-09-21 12:00:05
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
[root@strong ~]# timedatectl set-time 2019-09-15
[root@strong ~]# timedatectl
Local time: Sun 2019-09-15 00:00:03 CST
Universal time: Sat 2019-09-14 16:00:03 UTC
RTC time: Sat 2019-09-14 16:00:03
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
僅僅更改日期,時間會變為00:00:00,故更改日期時需把對應的時間加上,例如:timedatectl set-time "2019-09-21 15:16:00"。
1.4 更改時區
1.4.1 列出所有時區
[root@strong ~]# timedatectl list-timezones
1.4.2 更改時區
[root@strong ~]# timedatectl set-timezone Asia/Shanghai
2 DATE命令
該命令在所有Linux系統都可用,用於設置和查看當前日期和時間,常用於腳本中以格式化的形式用於展示系統時間的詳細信息。
2.1 展示當前日期和時間
1)不帶任何格式展示
[root@strong ~]# date
Sat Sep 21 15:24:57 CST 2019
默認展示的是本地時間,以UTC的方式展示,需使用date --utc或date -u。
[root@strong ~]# date --utc
Sat Sep 21 07:25:50 UTC 2019
2)格式化展示
客制化日期和時間的展示格式,使用命令:date +"格式"。
常用的格式為:
控制格式
描述
%H
以HH格式展示小時;
%M
以MM格式展示分鍾;
%S
以SS格式展示秒;
%d
以DD格式展示天數;
%m
以MM格式展示月;
%Y
以YYYY格式展示年;
%Z
時區;
%F
以YYYY-MM-DD格式展示日期,和%Y-%m-%d等價;
%T
以HH:MM:SS格式展示時間,和%H:%M:%S等價;
[root@strong ~]# date
Sat Sep 21 15:37:18 CST 2019
[root@strong ~]# date +"%Y-%m-%d %H:%M:%S"
2019-09-21 15:38:00
2.2 更改當前時間
更改當前時間,命令格式為:date --set HH:MM:SS。
[root@strong ~]# date --set 15:40:20
Sat Sep 21 15:40:20 CST 2019
2.3 更改當前日期
更改當前日期,命令格式為:date --set YYYY-MM-DD。
[root@strong ~]# date --set 2019-09-25
Wed Sep 25 00:00:00 CST 2019
僅僅更改日期,時間會變為00:00:00,故更改日期時需把對應的時間加上,例如:
[root@strong ~]# date --set "2019-09-21 15:42:35"
Sat Sep 21 15:42:35 CST 2019。
3 CLOCK命令
該命令是用於訪問硬體時鍾的工具,也稱為Real Time Clock(RTC),對應的設置保存在/etc/adjtime文件中。硬體時鍾獨立於操作系統,即使系統關閉,它仍然工作,用於從硬體時鍾展示時間。
3.1 展示當前日期和時間
[root@strong ~]# hwclock
Sat 21 Sep 2019 03:51:24 PM CST -0.368709 seconds
3.2 設置日期和時間
設置日期和時間的命令為:hwclock --set --date "dd mmm yyyy HH:MM"
[root@strong ~]# hwclock --set --date "21 Sep 2019 16:02:25"
[root@strong ~]# hwclock
Sat 21 Sep 2019 04:02:35 PM CST -0.342764 seconds
3.3 同步日期和時間
可以使用hwclock命令在硬體時鍾和當前系統時間直接互相同步。
3.3.1 系統時間同步到硬體時鍾
[root@strong ~]# hwclock --systohc
3.3.2 硬體時鍾同步到系統時間
[root@strong ~]# hwclock --hctosys