转自: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 設定時區

centos7 时间设置及ntp的更多相关文章

  1. CentOS7时间设置及ntp同步配置(转)

    出处:http://www.centoscn.com/CentOS/config/2015/1105/6385.html http://www.centoscn.com/CentOS/config/2 ...

  2. centos7 时间设置

    安装完成centos7后,虽然时区选择的是上海,但是最终的时间还是不对,因为没有开启自动同步NTP功能,所以需要自动手动设置. 首先输入timedatectl命令,查看当前机器的时间: Local t ...

  3. CentOS7时间设置问题

    本地安装一个VMWare player虚拟机客户端,并安装了Linux CentOS7 Basic Web Server系统,时区在安装时已经选择了Asia/Shanghai,但是安装完成后,时间和当 ...

  4. CentOS7 时间设置与网络同步

    1.查看时区 [root@localhost /]# date -R Thu, Jul :: + +0800表示东八区,这边就不用再设置 时区中的CST表示中国标准时间. 时区相关共享文件在/usr/ ...

  5. CentOS7日期时间设置方法以及时间基本概念介绍

    在CentOS 6版本,时间设置有date.hwclock命令,从CentOS 7开始,使用了一个新的命令timedatectl. 一.基本概念 1.1 GMT.UTC.CST.DST 时间 (1) ...

  6. 设置新时间校正服务器NTP SERVER

    时间校正服务器IP : 10.*.*.* 适用系统:windows server 2008/windows 7 net stop w32time net start w32time w32tm /qu ...

  7. CentOS7 日期时间设置

    1.设置系统时间为中国时区并启用NTP同步 yum install ntp //安装ntp服务 systemctl enable ntpd //开机启动服务 systemctl start ntpd ...

  8. 使用PowerCLI给ESXi批量设置时间和配置NTP

    在现代的各种业务系统中,时间同步很重要.现在VMware的虚拟化解决方案应用非常广泛,给ESXi宿主机一个统一准确的时间,也给客户机系统一个准确的时间. 生产环境中主机数量少的话倒是可以手动设置,但是 ...

  9. CentOS7/Ubuntu18系统时间同步ntp(转载)

    转自  https://blog.csdn.net/u010226454/article/details/80896959 ---centos7.2上搭建ntp服务器,并实现时间同步 对于容器编排系统 ...

随机推荐

  1. Qt事件系统基本概念

    (转自:http://www.cnblogs.com/andy1987/p/3322059.html) 1. QT事件系统 Qt应用程序的消息处理是基于事件驱动的,程序的每个动作都是由某个事件所触发的 ...

  2. Node.js/Python爬取网上漫画

    某个周日晚上偶然发现了<火星异种>这部漫画,便在网上在线看了起来.在看的过程中图片加载很慢,而且有时候还不小心点到广告,大大延缓了我看的进度.后来想到能不能把先把漫画全部抓取到本地再去看. ...

  3. java中商业数据计算时用到的类BigDecimal和DecimalFormat

    1.引言 借用<Effactive Java>这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确 ...

  4. ajax函数里不能用this调用

    ajax函数里不能用this调用,想用的话,在ajax外面弄个变量var mythis = $(this),然后在里面用就行了 因为,在ajax方法里写$(this)指向的是最近调用它的jquery对 ...

  5. 给Java新手的一些建议——Java知识点归纳(Java基础部分)

    写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,主要是和一些java基础知识点相关的,所以也希望能分享给刚刚入门的Java程序员和打算入Java开发这个行当的准新手们,希望可以给 ...

  6. linux下安装boost

    linux平台下要编译安装除gcc和gcc-c++之外,还需要两个开发库:bzip2-devel 和python-devel,因此在安装前应该先保证这两个库已经安装:#yum install gcc ...

  7. HttpContext.Current.Cache和HttpRuntime.Cache的区别,以及System.Runtime.Caching

    先看MSDN上的解释:      HttpContext.Current.Cache:为当前 HTTP 请求获取Cache对象.      HttpRuntime.Cache:获取当前应用程序的Cac ...

  8. 【精品分享一】JAVA 精品图书高清PDF下载

    更多图书尽在第一云教育book.1eduyun.com JAVA核心技术卷2:高级特征(原书第8版) JAVA软件开发从新手到高手(Java从入门到精通(第3版)+Java项目开发全程实录(第3版)) ...

  9. Python reload() 函数

    reload(module) 作用: 用于重新载入之前载入的模块. module -- 模块对象.返回模块对象. 实例:  重新载入 sys 模块,并设置默认编码为 utf8 >>> ...

  10. (转)Android强制设置横屏或竖屏

    全屏 在Activity的onCreate方法中的setContentView(myview)调用之前添加下面代码 requestWindowFeature(Window.FEATURE_NO_TIT ...