centos7 时间设置及ntp
转自:https://blog.gtwang.org/linux/howto-set-date-time-from-linux-command-prompt/
這裡介紹各種在 Linux 中以手動來調整系統時間的方法,包含date
、hwclock
與 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 設定時區
最新文章
- 一、HTTPServer,RequestHandler,ServerHandler,Handler
- JavaMail入门第三篇 发送邮件
- return view详解
- 数据对象ajax学习篇9
- 微信小程序的一些限制
- ASP.NET MVC:多模板支持
- 用OO方式写键盘字母小游戏
- jquery获取文件名称
- windows server 2012 r2打造工作站链接 和 RTSS画面防止撕裂方法(包括笔记本独显撕裂,视频撕裂等)
- 深入理解Java虚拟机阅读心得(一)
- 【强大的Java集成开发工具】MyEclipse 2015 Stable 2.0 for Mac
- 网站截图工具EyeWitness
- 【CSS系列】获取实时数据做进度
- Linux服务器配置---ssh配置
- QT中VideoProbe的简介和实现
- bzoj 1017 : [JSOI2008]魔兽地图DotR
- spring mvc 下载安装
- Tornado 高并发源码分析之三--- Application 对象
- RESTful 组件
- C#进阶之路(四):拉姆达
热门文章
- Win7 x64安装Paramiko
- LeetCode OJ:Evaluate Reverse Polish Notation(逆波兰表示法的计算器)
- 【机器学习基石笔记】九、LinearRegression
- 理解 Promise 过程
- bzero()函数
- Re-install Flyme or Native Google Android on Meizu MX4 Ubuntu (by quqi99)
- 升级Tensorflow到1.2版本
- 微信小程序转支付宝小程序
- 解决 Laravel/Lumen 出现 ";Please provide a valid cache path"; 问题
- python笔记-4(装饰器、生成器、迭代器)