配置NTP網絡時間自動校對系統時間和建立備份文件

1 案例1:配置用戶和組帳號

1.1 問題

本例要求建立下列用戶、組以及組的成員關係:javascript

  1. 新建用戶 alex,其用戶ID爲3456,密碼是flectrag
  2. 建立一個名爲 adminuser 的組
  3. 建立一個名爲 natasha 的用戶,其屬於 adminuser 組,這個組是該用戶的從屬組
  4. 建立一個名爲 harry 的用戶,其屬於 adminuser 組,這個組是該用戶的從屬組
  5. 建立一個名爲 sarah 的用戶,其在系統中沒有可交互的 Shell,而且不是 adminuser 組的成員
  6. natasha 、harry、sarah 的密碼都要設置爲 flectrag

1.2 步驟

實現此案例須要按照以下步驟進行。html

步驟一:建立組帳號java

 
     
  1. [root@server0 ~]# groupadd adminuser

步驟二:按照要求的屬性建立用戶帳號vim

 
     
  1. [root@server0 ~]# useradd -u 3456 alex
  2. [root@server0 ~]# useradd -G adminuser natasha
  3. [root@server0 ~]# useradd -G adminuser harry
  4. [root@server0 ~]# useradd -/sbin/nologin sarah

步驟三:爲用戶設置登陸密碼服務器

 
     
  1. [root@server0 ~]# echo flectrag | passwd --stdin alex
  2. 更改用戶 alex 的密碼 。
  3. passwd:全部的身份驗證令牌已經成功更新。
  4. [root@server0 ~]# echo flectrag | passwd --stdin natasha
  5. 更改用戶 natasha 的密碼 。
  6. passwd:全部的身份驗證令牌已經成功更新。
  7. [root@server0 ~]# echo flectrag | passwd --stdin harry
  8. 更改用戶 harry 的密碼 。
  9. passwd:全部的身份驗證令牌已經成功更新。
  10. [root@server0 ~]# echo flectrag | passwd --stdin sarah
  11. 更改用戶 sarah 的密碼 。
  12. passwd:全部的身份驗證令牌已經成功更新。

2 案例2:建立一個備份包

2.1 問題

本例要求使用 tar 工具完成如下備份任務:網絡

  1. 建立一個名爲 /root/backup.tar.bz2 的歸檔文件
  2. 其中包含 /usr/local 目錄中的內容
  3. tar 歸檔必須使用 bzip2 進行壓縮

2.2 方案

製做歸檔壓縮包:工具

  • tar -zPcf 備份文件.tar.gz 文檔....
  • tar -jPcf 備份文件.tar.bz2 文檔....
  • tar -JPcf 備份文件.tar.xz 文檔....

查看歸檔壓縮包:post

  • tar -tf 備份文件

釋放歸檔壓縮包:測試

  • tar -xf 備份文件 [-C 目標目錄]

2.3 步驟

實現此案例須要按照以下步驟進行。spa

步驟一:建立備份文件

使用tar命令製做歸檔備份,結合-j選項調用bzip2壓縮工具,保留絕對路徑:

 
     
  1. [root@server0 ~]# tar jcPf /root/backup.tar.bz2 /usr/local/

步驟二:確認結果

 
     
  1. [root@server0 ~]# ls -lh /root/backup.tar.bz2         //確認文件
  2. -rw-r--r--. 1 root root 1.9K 12月 23 23:22 /root/backup.tar.bz2
  3. [root@server0 ~]# tar tPf /root/backup.tar.bz2         //確認內容
  4. /usr/local/
  5. /usr/local/bin/
  6. /usr/local/bin/lab
  7. /usr/local/etc/
  8. /usr/local/games/

3 案例3:配置NTP網絡時間客戶端

3.1 問題

本例要求配置虛擬機 server0,可以自動校對系統時間。相關信息以下:

  1. NTP服務器位於 classroom.example.com
  2. 此客戶機的系統時間應當與NTP服務器的時間保持同步

3.2 方案

NTP服務端能夠爲客戶端提供標準的日期時間。

在RHEL7主機中能夠配置軟件包chrony來使用NTP時間同步。

3.3 步驟

實現此案例須要按照以下步驟進行。

步驟一:確認已安裝NTP客戶端軟件包chrony

一般系統會默認安裝此軟件包:

 
     
  1. [root@server0 ~]# rpm -q chrony
  2. chrony-1.29.1-1.el7.x86_64

若是檢查發現此軟件包沒有安裝,請經過yum命令安裝:

 
     
  1. [root@server0 ~]# yum -y install chrony
  2. .. ..

若是發現此軟件包已經安裝,但配置文件/etc/chrony.conf損壞或信息丟失,可刪除此文件後從新安裝chrony軟件包:

 
     
  1. [root@server0 ~]# rm -rf /etc/chrony.conf
  2. [root@server0 ~]# yum -y reinstall chrony
  3. 已加載插件:langpacks
  4. 正在解決依賴關係
  5. --> 正在檢查事務
  6. ---> 軟件包 chrony.x86_64.0.1.29.1-1.el7 將被 從新安裝
  7. --> 解決依賴關係完成
  8. .. ..

步驟二:調整NTP客戶端配置

1)修改/etc/chrony.conf文件內的server配置

移除不可用的NTP服務器記錄,正確添加可用的記錄:

 
     
  1. [root@server0 ~]# vim /etc/chrony.conf
  2. .. ..
  3. #server 0.rhel.pool.ntp.org iburst         //註釋掉默認的server配置,
  4. #server 1.rhel.pool.ntp.org iburst
  5. #server 2.rhel.pool.ntp.org iburst
  6. #server 3.rhel.pool.ntp.org iburst
  7. server classroom.example.com iburst         //添加新的配置
  8. .. ..

2)開啓NTP時間同步

 
     
  1. [root@server0 ~]# timedatectl                 //查看現有狀態
  2. .. ..
  3. NTP enabled: no                        //NTP可能還沒有啓用
  4. NTP synchronized: no                         //還沒有完成過一次NTP同步
  5. .. ..
  6. [root@server0 ~]# timedatectl set-ntp yes         //啓用NTP同步
  7. [root@server0 ~]# timedatectl             //查看啓用後的狀態
  8. .. ..
  9. NTP enabled: yes                        //NTP已經啓用
  10. NTP synchronized: no                         //還沒有完成過一次NTP同步
  11. .. ..

步驟三:測試NTP時間同步

1)先設置一個錯誤的系統日期時間

 
     
  1. [root@server0 ~]# date -s '2001-09-11 11:30:00'             //調整日期時間
  2. 2001年 09月 11日 星期二 11:30:00 CST
  3. [root@server0 ~]# date                                     //確認調整結果
  4. 2001年 09月 11日 星期二 11:30:01 CST

2)啓動系統服務chronyd,並設爲開機自啓

 
     
  1. [root@server0 ~]# systemctl restart chronyd
  2. [root@server0 ~]# systemctl enable chronyd

3)從新查看當前的系統時間

重啓chronyd服務後稍等片刻,當前系統的日期時間應該恢復正常(與NTP服務器保持一致):

 
     
  1. [root@server0 ~]# date
  2. 2016年 12月 23日 星期五 23:44:53 CST

再次執行timedatectl查看,會發現NTP synchronized的值已經變成yes:

 
     
  1. [root@server0 ~]# timedatectl
  2. .. ..
  3. NTP enabled: yes                        //NTP已經啓用
  4. NTP synchronized: no                         //已經完成過一次NTP同步
  5. .. ..

4 案例4:配置一個cron任務

4.1 問題

本例要求爲用戶 natasha 配置一個定時任務,具體要求以下:

  1. 天天在本地時間 14:23 執行
  2. 須要完成的任務操做爲 /bin/echo hiya

4.2 方案

配置格式可參考 /etc/crontab 文件:

 
     
  1. 分 時 日 月 周 任務命令行(絕對路徑)

在表示各段的時間點時,除了明確的數值之外,還能夠參考如下形式:

  • *:匹配範圍內任意時間
  • ,:分隔多個不連續的時間點
  • -:指定連續時間範圍
  • /n:指定時間頻率,每n ...

4.3 步驟

實現此案例須要按照以下步驟進行。

步驟一:配置crontab任務記錄

1)確保系統服務crond可用

 
     
  1. [root@server0 ~]# systemctl restart crond
  2. [root@server0 ~]# systemctl enable crond

2)爲用戶natasha添加計劃任務

 
     
  1. [root@server0 ~]# crontab -e -u natasha
  2. 23 14 /bin/echo hiya

步驟二:檢查任務是否執行

1)將系統日期時間臨時調整到任務時間點前10秒左右

 
     
  1. [root@server0 ~]# date -s '14:22:50'             //設置
  2. Sat Nov 26 14:22:50 CST 2016
  3. [root@server0 ~]# date                             //確認日期時間
  4. Sat Nov 26 14:22:55 CST 2016

2)等待10秒後查看/var/log/cron日誌,應該會有執行記錄

 
     
  1. [root@server0 ~]# tail /var/log/cron
  2. .. ..
  3. Nov 26 14:23:02 localhost CROND[3818]: (natashaCMD (/bin/echo hiya)

3)恢復系統日期時間

 
     
  1. [root@server0 ~]# hwclock -s                     //重設爲系統時鐘
  2. [root@server0 ~]# date                             //確認日期時間
  3. Sat Nov 26 05:05:23 CST 2016
相關文章
相關標籤/搜索