• centos7 时间设置及ntp


    转自:https://blog.gtwang.org/linux/howto-set-date-time-from-linux-command-prompt/

    這裡介紹各種在 Linux 中以手動來調整系統時間的方法,包含datehwclock 與 timedatectl 指令的用法。

    時間的設定對於 Linux 系統而言是很重要的,例如在處理檔案同步時,如果系統時間誤差太大,就會造成問題,一般 Linux 系統的時間都會直接設定以 ntp 網路校時的方式自動調整,不過如果網路出問題無法使用 ntp 服務的話,最直接又簡便的方式就是手動設定時間。

     

    Linux 系統時間

    Linux 的 date 指令可以查詢目前系統上的日期與時間:

    date
    四 11月 17 08:49:21 CST 2016

    使用者可以自訂 date 的輸出格式,例如輸出年/月/日這樣的格式:

    date +%Y/%m/%d
    2016/11/17

    只輸出時間:

    date +%T
    09:12:46

    date 指令除了用來查詢系統時間,輸出各種的時間戳記之外,也可以用來更改系統日期或時間(要更改系統時間需要使用 sudo 或 su取的 root 權限):

    sudo date -s "Fri, 11 Nov 2016 10:21:32 CST"

    這樣就將時間設定為 2016/11/11 早上 10:21:32,而 date 的 -s 參數可以接受非常彈性的日期字串,我們也可以用以下幾種比較簡單的格式來設定日期與時間:

    sudo date -s "2016/11/11 10:21:32"
    sudo date -s "2016-11-11 10:21:32"
    sudo date -s "20161111 10:21:32"

    另外也可以使用 next 或 last 的方式來設定:

    sudo date -s "next Mon" # 下週一
    sudo date -s "last Mon 17:30:21" # 上週一 17:30:21
     

    硬體時鐘(RTC)

    若要查詢硬體時鐘(RTC)的時間,可以使用 hwclock

    sudo hwclock
    2016年11月17日 (週四) 09時00分46秒  .829232 seconds

    若要將系統時間寫入硬體時鐘,可以使用 -w 參數:

    sudo hwclock -w

    systemd 系統的時間管理

    systemd 是 Linux 作業系統之下的一套中央化系統及設定管理程式(init 軟體),目前絕大多數的 Linux 發行版都已採用 systemd 來代替原來的 System V。

    在 systemd 系統下可以使用 timedatectl 來檢視系統時間資訊:

    timedatectl
          Local time: 四 2016-11-17 10:12:14 CST
      Universal time: 四 2016-11-17 02:12:14 UTC
            RTC time: 日 2016-11-13 16:02:20
           Time zone: Asia/Taipei (CST, +0800)
     Network time on: yes
    NTP synchronized: no
     RTC in local TZ: no
    root@ubuntu-pc:/etc# hwclock -w
    root@ubuntu-pc:/etc# timedatectl
          Local time: 四 2016-11-17 10:12:27 CST
      Universal time: 四 2016-11-17 02:12:27 UTC
            RTC time: 四 2016-11-17 02:12:26
           Time zone: Asia/Taipei (CST, +0800)
     Network time on: yes
    NTP synchronized: no
     RTC in local TZ: no

    timedatectl 也可以用來設定系統時間,設定方式為:

    sudo timedatectl set-time "2016-11-12"

    設定日期與時間的方式:

    sudo timedatectl set-time "2016-11-12 18:10:40"

    也可以只更改時間:

    sudo timedatectl set-time "18:10:40"

    關閉 ntp 自動校時

    如果系統有設定以 ntp 自動校時,在手動更改日期與時間時,就出現這樣的錯誤訊息:

    Failed to set time: Automatic time synchronization is enabled

    此時若要手動校時就要先將 ntp 關閉:

    sudo timedatectl set-ntp no

    若要恢復 ntp 自動校時,則執行:

    sudo timedatectl set-ntp yes

    設定時區

    timedatectl 亦可用來設定時區(time zone):

    timedatectl set-timezone "Asia/Taipei"

    不過通常一般若要設定時區,使用這種選單選取的方式會比較方便:

    sudo dpkg-reconfigure tzdata
    linux-dpkg-reconfigure-tzdata-20161117-1

    Linux 設定時區

  • 相关阅读:
    一个很low的登录界面
    python 中的反射
    【Java】SpringMVC中URL传递参数-ant风格
    【springMVC】用maven构建第一个springMVC程序
    【Mybatis】mybatis登录实例
    【Mybatis】Mybatis简单使用
    【Java】Quartz的简单使用
    【Java】腾讯云发送短信验证码-Struts2
    【Java】web项目中发送邮件验证码-Struts2
    Bootstrap-fileinput文件上传组件
  • 原文地址:https://www.cnblogs.com/guxiaobei/p/8458008.html
Copyright © 2020-2023  润新知