linux修改utc
『壹』 linux修改時間
修改linux的系統時間的方法如下:
1、利用date命令設定系統的日期與時間,語法「date -s "年月日 時:分秒"」。在Linux中,可以利用date命令修改系統時間。date命令可以用來顯示或設定系統的日期與時間。例如把date -s 「2003-04-14 cst」,cst指時區,時間設定用date -s 18:10。
2、執行「hwclock --systohc」命令保存設置,關機重啟。當我們進行完 Linux 時間的校時後,還需要以 hwclock 來更新 BIOS 的時間,因為每次重新啟動的時候,系統會重新由 BIOS 將時間讀出來,所以, BIOS 才是重要的時間依據吶。
Linux系統時間有兩種
日歷時間。該值是自協調世界時(UTC)1970年1月1日00:00:00這個特定時間以來所經過的秒數累計值。基本數據類型用time_t保存。最後通過轉換才能得到我們平時所看到的24小時制或者12小時間制的時間。
進程時間。也被稱為CPU時間,用以度量進程使用的中央處理器資源。進程時間以時鍾滴答計算。
『貳』 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伺服器怎麼修改時區和時間
一、查看和修改Linux的時區 1. 查看當前時區 命令 : "date -R" 2. 修改設置Linux伺服器時區 方法 A 命令 : "tzselect" 方法 B 僅限於RedHat Linux 和 CentOS 命令 : "timeconfig" 方法 C 適用於Debian 命令 : "dpkg-reconfigure tzdata" 3. 復制相應的時區文件,替換系統時區文件;或者創建鏈接文件 cp /usr/share/zoneinfo/$主時區/$次時區 /etc/localtime 例如:在設置中國時區使用亞洲/上海(+8) cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 二、查看和修改Linux的時間 1. 查看時間和日期 命令 : "date" 2.設置時間和日期 例如:將系統日期設定成2009年11月3日的命令 命令 : "date -s 11/03/2009" 將系統時間設定成下午5點55分55秒的命令 命令 : "date -s 17:55:55" 3. 將當前時間和日期寫入BIOS,避免重啟後失效 命令 : "hwclock -w" 註: date 不加參數可以直接看到當前日期時間 cal 不加參數可以直接看到本月月歷
『肆』 如何將linux 的本地時間設置為utc時間
如果你的 Linux 系統時區配置不正確,必需要手動調整到正確的當地時區。NTP 對時間的同步處理只計算當地時間與 UTC 時間的偏移量,因此配置一個 NTP 對時間進行同步並不能解決時區不正確的問題。所以大家在用了國外雲計算服務商如 Microsoft Azure 或其它 VPS、虛擬機時,需要注意是否與中國大陸的時區一致。
查看Linux當前時區
你可以使用如下命令非常容易地就查看到 linux 系統的當前時區:
date
ls -l /etc/localtime
linux-time02
獲取時區TZ值
要更改 Linux 系統時區首先得獲知你所當地時區的 TZ 值,使用 tzselect 命令即可查看並選擇已安裝的時區文件。
執行 tzselect 命令
linux-time03
通過向導選擇你所在大洲、國家和城市
tzselect 最終將以 Posix TZ 格式(例如 Asia/Shanghai)輸出你所在的時區值,將此記錄下來。
linux-time03
更改每個用戶的時區
Linux 用戶一個多用戶系統,每個用戶都可以配置自己所需的時區,你可以為自己新增一個 TZ 環境變數:
export TZ='Asia/Shanghai'
執行完成之後需要重新登錄系統或刷新 ~/.bashrc 生效。
source ~/.bashrc
更改Linux系統時區
要更改 Linux 系統整個系統范圍的時區可以使用如下命令:
sudo rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
注意:/usr/share/zoneinfo/Asia/Shanghai 中的具體時區請用自己獲取到的 TZ 值進行替換。
使用Systemd更改Linux系統時區
如果你使用的 Linux 系統使用 Systemd,還可以使用 timedatectl 命令來更改 Linux 系統范圍的時區。在 Systemd 下有一個名為 systemd-timedated 的系統服務負責調整系統時鍾和時區,我們可以使用 timedatectl 命令對此系統服務進行配置。
sudo timedatectl set-timezone 'Asia/Shanghai'
linux-time05
最後,如果你發現 Ubuntu 與 Windows 雙系統時間不同步,可以參考我們之前的文章說明和解決辦法。
『伍』 Linux系統如何更改時間時區
對於許多與系統相關的任務和進程,使用正確的時區是必不可少的。例如,cron守護進程使用系統的時區執行cron作業,日誌文件中的時間戳基於同一系統的時區。
環境
Centos 8
檢查現在的時區
timedatectl是一個 命令 行實用程序,允許您查看和更改系統的時間和日期。
[root@localhost ~]# timedatectl
Local time: Tue 2020-03-31 16:35:23 CST
Universal time: Tue 2020-03-31 08:35:23 UTC
RTC time: Tue 2020-03-31 08:35:23
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
更改時區
在更改時區之前,您需要找出要使用的時區名稱。要列出所有可用時區,請使用下面的 命令 :
[root@localhost ~]# timedatectl list-timezones
…
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk
…
然後使用set-timezone選項更改時區,比如更改為Europe/Berlin:
[root@localhost ~]# timedatectl set-timezone Europe/Berlin
使用創建鏈接的方式更改時區
如果運行的是舊版本的Centos,比如Centos6之前的版本,並且系統上不存在timedatectl命令,則可以通過將/etc/localtime符號鏈接到/usr/share/zoneinfo目錄中的時區文件來更改時區。
查看一下/usr/share/zoninfo下面的時區文件,
[root@localhost ~]# ls /usr/share/zoneinfo/
[root@localhost ~]# ls /usr/share/zoneinfo/Asia/
現在替換時區文件。
[root@localhost ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
[root@localhost ~]# date
Tue Mar 31 16:53:59 CST 2020
可以看到已經切換到了CST中國標准時間
總結
在本文中,使用了兩種方式修改時區。一種是使用timedatectl,另一種方式使用創建鏈接的方式。
『陸』 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