- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機構(gòu):新網(wǎng)數(shù)碼
問題
1)確認crond服務(wù)在運行
2)查看root有哪些cron任務(wù)
3)以用戶root登入,添加以下計劃任務(wù):
4)每天早上7:30啟動sshd服務(wù)
5)每天晚上23:30關(guān)閉sshd服務(wù)
6)以用戶lisi登入,添加以下計劃任務(wù)
7)每分鐘記錄一次當(dāng)前時間,保存到文件 ~/date.txt
8)查看自己的cron任務(wù)列表
9)驗證執(zhí)行效果
方案
周期性計劃任務(wù)的服務(wù)名為crond,也是一個獨立服務(wù),對應(yīng)的配置工具為crontab。需要確保系統(tǒng)的crond服務(wù)開啟,建議將其設(shè)置為開機自啟動。
計劃任務(wù)的三要素:時間、任務(wù)、用戶。
在編寫計劃任務(wù)時,可執(zhí)行命令最好寫絕對路徑,以確保系統(tǒng)PATH變量受損也能成功找到該命令。
對于時間的表示,crond計劃任務(wù)利用的是五個“”表示的,含義分別為:分鐘、小時、日期、月份、星期。
關(guān)于時間周期的幾個特殊用法:
:匹配范圍內(nèi)任意時間
,:表示多個不連續(xù)的時間點
-:表示連續(xù)的時間范圍
/n:指定時間頻率,每n …
全局配置文件為 /etc/crontab ,其中調(diào)用了位于以下目錄的系統(tǒng)計劃任務(wù):
/etc/cron.hourly/
/etc/cron.daily/
/etc/cron.weekly/*
/etc/cron.monthly/*
步驟
實現(xiàn)此案例需要按照如下步驟進行。
步驟一:確認crond服務(wù)在運行
命令操作如下所示:
[root@localhost ~]# /etc/init.d/crond status
crond (pid 1611) 正在運行...
[root@localhost ~]# chkconfig --list crond
crond 0:關(guān)閉 1:關(guān)閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關(guān)閉
[root@localhost ~]#
步驟二:查看root有哪些cron任務(wù)
命令操作如下所示:
[root@localhost ~]# crontab -l -u root //-l:查看;-u:指定用戶
no crontab for root //沒有計劃任務(wù)
[root@localhost ~]#
步驟三:以用戶root登入,添加以下計劃任務(wù)
每天早上7:30啟動sshd服務(wù)
每天晚上23:30關(guān)閉sshd服務(wù)
執(zhí)行crontab -e來設(shè)置計劃任務(wù)時,會調(diào)用vim編輯器來進行修改。對應(yīng)的命令操作如下所示:
[root@localhost ~]# ls /etc/init.d/sshd //查看是否有安裝該服務(wù)
/etc/init.d/sshd
[root@localhost ~]# crontab -e -u root //-e:編輯計劃任務(wù);-u:指定用戶
30 7 * * * /etc/init.d/sshd start //每天早上7:30啟動sshd服務(wù)
30 23 * * * /etc/init.d/sshd stop //每天晚上23:30關(guān)閉sshd服務(wù)
步驟四:以用戶lisi登入,添加以下計劃任務(wù)
每分鐘記錄一次當(dāng)前時間,保存到文件 ~/date.txt。
分析: 首先每分鐘表示: * * * * * 或 */1 * * * *
那怎么保存當(dāng)前時間呢?我們可以利用輸出重定向來做:
data >> /home/lisi/date.txt
命令操作如下所示:
[root@localhost ~]# id lisi //確保lisi用戶存在
uid=503(lisi) gid=504(lisi) 組=504(lisi)
[root@localhost ~]# su – lisi //切換用戶身份
[lisi@localhost ~]$ which date
/bin/date
[lisi@localhost ~]$ crontab –e //沒有指定用戶就是當(dāng)前用戶
* * * * * /bin/date >> /home/lisi/date.txt
查看自己的cron任務(wù)列表
命令操作如下所示:
[lisi@localhost ~]$ crontab -l
* * * * * /bin/date >> /home/lisi/date.txt
[lisi@localhost ~]$
步驟五:驗證執(zhí)行效果
分析: 查看/home/lisi/data.txt文件有沒有按時間寫入即可,但每分鐘都看一次會比較麻煩,這里介紹一個命令:watch
watch -n 1 cat /home/lisi/date.txt
-n:代表時間頻率1秒鐘。
整體可以解釋為:每一秒鐘執(zhí)行一次“cat /home/lisi/date.txt”。
此命令會占用整個終端,可以按ctrl+c結(jié)束。
命令操作如下所示:
[lisi@localhost ~]$ watch -n 1 cat /home/lisi/date.txt
Every 1.0s: cat /home/lisi/date.txt Mon Mar 2 10:12:56 2015
Mon Mar 2 10:06:01 CST 2015
Mon Mar 2 10:07:01 CST 2015
Mon Mar 2 10:08:01 CST 2015
Mon Mar 2 10:09:01 CST 2015 //時間為英文表示
Mon Mar 2 10:10:01 CST 2015
Mon Mar 2 10:11:01 CST 2015
可以按ctrl+c結(jié)束
提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!
這條文檔是否有幫助解決問題?
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP