转自: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. [eShopOnContainers 学习系列] - 03 - 在远程 Ubuntu 16.04 上配置开发环境

    直接把 md 粘出来了,博客园的富文本编辑器换成 markdown,没啥效果呀 ,先凑合吧.实在不行换地方   # 在远程 Ubuntu 16.04 上配置开发环境 ## 零.因 为什么要用这么麻烦的 ...

  2. Sturts2 三种开发模式 (转)

    1.实现与 Servlet API的交互struts2中提供了Map类型的request.session与application,可以从ActionContext对象中获得.ActionContext ...

  3. Codeforces Round #394 (Div. 2) B. Dasha and friends

    B. Dasha and friends time limit per test:2 seconds memory limit per test:256 megabytes input:standar ...

  4. 内存保护机制及绕过方案——从堆中绕过safeSEH

    1.1    SafeSEH内存保护机制 1.1.1    Windows异常处理机制 Windows中主要两种异常处理机制,Windows异常处理(VEH.SEH)和C++异常处理.Windows异 ...

  5. New Concept English three (42)

    21 33 Cave exploration, or pot-holing, as it has come to be known, is a relatively new sport. Perhap ...

  6. C++中标准输入流cin与Ctrl+Z使用时的问题

    今天使用C++编写了一段小程序,练习使用标准库的算法,代码如下: #include <iostream> #include <algorithm> #include <v ...

  7. 旧书重温:0day2【7】堆溢出实验

    相关文章我拍成了照片,放在了我的QQ空间不是做广告(一张一张的传太麻烦了)http://user.qzone.qq.com/252738331/photo/V10U5YUk2v0ol6/    密码9 ...

  8. MySQL FEDERATED 存储引擎的使用

    FEDERATED 存储引擎描述 FEDERATED存储引擎能让你访问远程的MySQL数据库而不使用replication或cluster技术(类似于Oracle的dblink),使用FEDERATE ...

  9. 为什么要使用ORM技术?和 JDBC 有何不一样?

    为什么要使用ORM技术?和 JDBC 有何不一样?        1.繁琐的代码问题:        用JDBC的API编程访问数据库,代码量较大,特别是访问字段较多的表的时候,代码显得繁琐.累赘,容 ...

  10. 20165222 实验一java开发环境的熟悉

    实验内容及步骤 实验一 Java开发环境的熟悉-1 1 建立“自己学号exp1”的目录 2 在“自己学号exp1”目录下建立src,bin等目录 3 javac,java的执行在“自己学号exp1”目 ...