首頁  >  文章  >  運維  >  centos重啟後時間不對怎麼辦

centos重啟後時間不對怎麼辦

藏色散人
藏色散人原創
2022-01-28 11:23:537242瀏覽

centos重啟後時間不對的解決方法:1、執行「ln -sf /usr/share/zoneinfor/Asia/Shanghai /etc/localtime」來更改時區;2、重啟即可。

centos重啟後時間不對怎麼辦

本文操作環境:centOS6.3系統、DELL G3電腦

centos重啟後時間不對怎麼辦?

解決linux的centos版本修改時間重啟後無效的問題 

安裝centos後,發現時間與本地時間不匹配,在網路上找了好多的辦法,但是一直沒有奏效,重啟之後,又恢復為原來的時間。很是納悶。

最後抱著試一試的心態加上了這句指令: ln -sf /usr/share/zoneinfor/Asia/Shanghai /etc/localtime  重啟之後,竟然修改過來了,長舒了一口氣。

下面將詳細的指示列出來,希望能夠對你有幫助。

linux的時間分為兩種,硬體時間和系統時間兩種:

     1:顯示系統時間:#date
    修改系統時間: date -s '2012-08-02 12:00'   #設定係統時間為本地時間

    2:顯示硬體時間:#hwclock --show
    設定硬體時間:#hwclock --set --hwclock --show

    設定硬體時間:#hwclock --set -- date '08/02/2012 12:00:00'

    3:這就是硬體時間同步系統時間:hwclock --hctosys 

    4:這個指令強制將系統時間寫入MOSCMOS :clock -w

    如果你只需要上面4步,在重啟之後,修改就生效的話,那就恭喜你,不用看下面一步了,如果還不生效的話,那你就必須得用這關鍵的第5步了。

   5: ln -sf /usr/share/zoneinfor/Asia/Shanghai /etc/localtime     #更改時區

在Linux中有硬體與系統時鐘兩種時鐘。硬體時鐘是指主機板上的時鐘設備,也就是通常在BIOS畫面設定的時鐘。系統時鐘則是指kernel中的時鐘。所有Linux相關指令與函數都是讀取系統時鐘的設定。因為存在著兩種不同的時鐘,那麼它們之間就會有差異。當Linux啟動時,系統時鐘會去讀取硬體時鐘的設定,之後系統時鐘即獨立運作。

用date指令設定係統時間後,不會去修改硬體時鐘,所以系統重新啟動後,系統時間還算會去讀取硬體時間,這就是為什麼date設定失效到原因。

因此,需要在設定係統時間後,將系統時間同步到硬體時鐘。

clock/hwclock:

顯示與設定硬體時鐘(query and set the hardware clock (RTC)),兩個指令相同。 RTC=Real Time Clock,也就是硬體時鐘。

指令參數:

-r, --show        读取并打印硬件时钟(read hardware clock and print result)
-s, --hctosys     将硬件时钟同步到系统时钟(set the system time from the hardware clock)
-w, --systohc     将系统时钟同步到硬件时钟(set the hardware clock to the current system time)
指令範例:

1. 檢視硬體時鐘

2014年03月27日 星期四 11时03分50秒  -0.328520 seconds
[root@localhost ~]# hwclock -r
2014年03月27日 星期四 11时03分53秒  -0.797264 seconds
[root@localhost ~]# hwclock --show
2014年03月27日 星期四 11时04分01秒  -0.672267 seconds
2. clock與hwclock相同

[root@localhost ~]# type -a hwclock
hwclock is /sbin/hwclock
hwclock is /usr/sbin/hwclock
[root@localhost ~]# ll /sbin/hwclock /usr/sbin/hwclock 
-rwxr-xr-x. 1 root root 46940 11月 22 23:27 /sbin/hwclock
lrwxrwxrwx. 1 root root    18 3月  26 19:27 /usr/sbin/hwclock -> ../../sbin/hwclock
[root@localhost ~]# type -a clock
clock is /sbin/clock
[root@localhost ~]# ll /sbin/clock 
lrwxrwxrwx. 1 root root 7 3月  26 19:27 /sbin/clock -> hwclock
3. 同步系統時間到硬體時鐘

[root@localhost ~]# hwclock
2014年03月27日 星期四 18时50分51秒  -0.312960 seconds
[root@localhost ~]# date
2014年 03月 27日 星期四 10:50:55 CST
[root@localhost ~]# hwclock -w
[root@localhost ~]# hwclock
2014年03月27日 星期四 10时51分15秒  -0.875387 seconds
同步網路時間到系統時間

[root@localhost ~]# ntpdate 210.72.145.44
27 Mar 11:11:24 ntpdate[4766]: adjust time server 210.72.145.44 offset 0.011401 sec

210.72.145.44 (中國西安授時中心的官方時間同步伺服器IP域名)

同步網路時間到系統時間後,就可以用hwclock -w將系統時間同步到硬體時間。

修改時區

可能部分系統在執行以上兩步驟後,重新啟動後仍失效,所以需要進行時區修改。

[root@localhost ~]# tzselect #按照提示进行选择时区
[root@localhost ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
修改系統時間設定檔

[root@localhost ~]# /etc/sysconfig/clock

#打开clock文件,将相关内容改成以下内容
UTC=false 
ARC=false
ZONE="Asia/Shanghai"
重新啟動系統

[root@localhost ~]# reboot
我使用的是centOS6.3,使用虛擬機重新啟動的時候顯示錯誤訊息如下  

/dev/mapper/root: Superblock last mount time (Mon Mar  5 17:40:11 2012,  
         now = Sat Mar  5 18:46:53 2011) is in the future.  
/dev/mapper/root: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.  
         (i.e., without -a or -p options)  
                                                                                                 [FAILED]  
*** An error occurred during the file system check.  
*** Dropping you to a shell; the system will reboot  
*** when you leave the shell.  
Given root password for maintenance  
(or type Control-D to continue):

 後來找到了解決的方法:  

在「(or type Control-D to continue):」處直接輸入密碼,進入修復模式,並依照fsck 12f2aae06e0465c3ec038e37a06d9a55的形式運作修復,你的就運行fsck  /dev/mapper/root,然後reboot,重啟後可能還會提示其他盤出現相同的錯誤,按照fsck 12f2aae06e0465c3ec038e37a06d9a55的形式再次運行,然後reboot,在虛擬機器上測試可以啟動了  

推薦:《centos使用教學

》###

以上是centos重啟後時間不對怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn