類別:系統及安全性
| 發布於 2025-06-24 20:15
Linux 時間校正
查詢日期與時間
1. 顯示當前時間與日期
使用 date 指令:
2. 顯示月曆
使用 cal 指令:
3. 啟動簡易型計算機
使用 bc 指令:
- 加法:
1 + 2
- 減法:
5 - 3
- 乘法:
4 * 6
- 除法:
7 / 3
- 餘數:
10 % 3
- 次方:
2 ^ 3
- 開根號:
sqrt(9)
- 小數位設定:
scale=2(如 scale=2; 10/3)
- 定義變數:
a=10,可再輸入 a+5
- 離開:輸入
quit
4. 查看指令說明文件
使用 man 指令,例如:
man 模式常用快捷鍵:
- 空白鍵 / PageDown:下一頁
- PageUp:上一頁
/字串 或 ?字串:搜尋字串
q:退出說明頁
5. 使用簡易文字編輯器 nano
進入編輯模式:
常用快捷鍵:
Ctrl + G:顯示說明
Ctrl + X:離開
Ctrl + O:儲存檔案
Ctrl + R:插入其他檔案內容
Ctrl + W:搜尋文字
Ctrl + C:顯示游標位置
Ctrl + -:跳至指定行
Ctrl + V / Y:下一頁 / 上一頁
Alt + M:啟用滑鼠定位
6. 關機與重啟指令(需 root 權限)
7. 查詢作業系統資訊
時間校正(Chrony)
手動調整系統時間
使用 date 與
timedatectl 查詢時間
範例輸出:
使用 date 設定時間
使用 timedatectl
設定時間
使用網路自動校時
安裝並啟用 Chrony
查看校時狀態
常見狀態符號:
^*:目前同步中且效果良好
^+:可用,但非首選來源
^?:無法聯繫來源
設定校時伺服器
編輯 /etc/chrony.conf:
重啟服務並確認:
修改時區
查詢可用時區
搜尋特定時區:
設定時區
Date 格式化輸出
系統時間與硬體時間(hwclock)
解決排程與系統時間不同步問題
可能原因:時區設定錯誤或變更後未重啟相關服務。
Linux 時間校正
查詢日期與時間
1. 顯示當前時間與日期
使用
date指令:date2. 顯示月曆
使用
cal指令:cal # 顯示當前年月份月曆 cal 2010 # 顯示 2010 年年曆 cal 6 2010 # 顯示 2010 年 6 月月曆3. 啟動簡易型計算機
使用
bc指令:1 + 25 - 34 * 67 / 310 % 32 ^ 3sqrt(9)scale=2(如scale=2; 10/3)a=10,可再輸入a+5quit4. 查看指令說明文件
使用
man指令,例如:man dateman 模式常用快捷鍵:
/字串或?字串:搜尋字串q:退出說明頁5. 使用簡易文字編輯器
nano進入編輯模式:
常用快捷鍵:
Ctrl + G:顯示說明Ctrl + X:離開Ctrl + O:儲存檔案Ctrl + R:插入其他檔案內容Ctrl + W:搜尋文字Ctrl + C:顯示游標位置Ctrl + -:跳至指定行Ctrl + V / Y:下一頁 / 上一頁Alt + M:啟用滑鼠定位6. 關機與重啟指令(需 root 權限)
shutdown -h now # 立即關機 shutdown -r now # 立即重新開機 shutdown -c # 取消已設定但尚未執行的關機 shutdown -r 15:30 # 在 15:30 時重新開機 shutdown -h +10 # 十分鐘後關機 reboot # 立即重新開機7. 查詢作業系統資訊
uname -a時間校正(Chrony)
手動調整系統時間
使用
date與timedatectl查詢時間date timedatectl範例輸出:
使用
date設定時間date 010112002020 # 設定為 2020-01-01 12:00:00使用
timedatectl設定時間timedatectl set-time "2022-01-10 11:00:00"使用網路自動校時
安裝並啟用 Chrony
dnf install -y chrony # RHEL / Rocky / AlmaLinux systemctl enable --now chronyd查看校時狀態
常見狀態符號:
^*:目前同步中且效果良好^+:可用,但非首選來源^?:無法聯繫來源設定校時伺服器
編輯
/etc/chrony.conf:註解原本的 pool 行:
# pool 2.cloudlinux.pool.ntp.org iburst新增台灣時間伺服器:
重啟服務並確認:
修改時區
查詢可用時區
搜尋特定時區:
設定時區
Date 格式化輸出
date "+%Y" # 輸出:2025 date "+%Y%m" # 輸出:202506 date "+%Y%m%d" # 輸出:20250623 date "+%Y%m%d_%H%M%S" # 輸出:20250623_121045 # 將日期儲存成變數 mydate=$(date "+%Y%m%d_%H%M%S") echo $mydate系統時間與硬體時間(hwclock)
sudo hwclock # 顯示硬體時間 sudo hwclock --systohc # 將系統時間同步至硬體時間 sudo hwclock --hctosys # 將硬體時間同步至系統時間 sudo hwclock -w # 寫入硬體時鐘解決排程與系統時間不同步問題
可能原因:時區設定錯誤或變更後未重啟相關服務。
# 變更時區後重新啟動 cron sudo systemctl restart cron # 若仍有問題,重啟 rsyslog 並確認排程紀錄 sudo systemctl restart rsyslog sudo tail /var/log/syslog | grep CRON