linux系統中的定時任務及延時任務
目的:解決人不能時時監控,以及遺忘的問題
一、延時任務(at)at time
> 命令
>ctrl d
1.基本用法
at
-l 列出延遲任務信息(該命令執行時間之後的延遲任務,不包括執行時間之前的延遲任務)
-r 任務id 刪除此id的任務
-m 讓無輸出的命令產生郵件
-M 讓有輸出的命令不產生郵件
-c 任務id 查看此id延遲任務的執行動作
-f 文件名 用文件內記錄的命令作爲延遲任務的執行命令
注意:當at下的命令很多時,將其寫入一個文件下,默認情況下只有輸出的命令纔有郵件。
2.實驗1:
(1)設定時間在/mnt下touch一個文件
(2)監控/mnt目錄
(3)設定在當前時間的1分鐘後刪除該文件
(4)刪除此刪除任務的id
(5)該文件仍然存在
實驗2
(1)查看mail
(2)清空mail
根據上圖圈注部分的提示文件位置
(3)在該時間之後1min後刪除/mnt/*,查看mail,查看/mnt目錄,下圖可以看出刪除是一個無輸出命令
(4)在/mnt下touch一個文件後,在該時間之後1min後刪除/mnt/*(加上-m)查看mail,查看/mnt目錄,下圖將無輸出的命令產生郵件
默認情況下系統中用戶都可以使用at命令,所以我們可以使用at命令的黑白名單。
3.at命令的黑名單
目的:凍結某些用戶的at命令執行權限(默認情況下系統中存在用戶黑名單)
vim /etc/at.deny
student
4.at命令的白名單(默認系統中中不存在白名單的,當白名單出現,系統中只有root和白名單內用戶可以使用at命令且黑名單失效)
touch /etc/at.allow
vim /etc/at.allow
student
即便黑名單的用戶是student,但是當student出現在白名單內,則黑名單不生效。
二、定時任務(cron)
1.cron這個程序是由crond.service服務提供,寫入程序的時間和事件是永久保存的,先保證該服務開啓。
2.設定方式
crontab -e [-u 用戶名稱 ](可以不寫,默認用當前用戶發起)
crontab -l 列出當前用戶的任務
crontab -r 刪除當前用戶的任務
內容
分鐘 小時 天 月 周 用戶 事件
11 11 * * * * 每天的11:11分
11 11 1,15 * * * 每月1號和15號11:11分
11 11 1-15 * * * 每月的1至15號11:11分
11 11 1,15 3 * * 3月1號和15號的11:11分
11 11 1,15 3 3 * 3月1號和15號以及3月的所有周三的11:11分
11 05-11 * * * * 每天早上5到11點的11分
11 05-11 * * 1-5 * 每週一至週三早上5點到11點的11分
注意:*表示任意,用戶表示發起該時間的所有人和所有組。A用戶該文件存放位置:/var/spool/cron/A
3.crontab的黑白名單
默認情況下,系統存在crontab的黑名單,不存在白名單。
① 黑名單
/etc/cron.deny 在此名單下的用戶不能執行crontab
vim /etc/cron.deny
kiosk
②白名單
/etc/cron.allow 當此名單出現,只有root和該名單下的用戶可以執行crontab黑名單不生效
kiosk
4.將命令導入/var/spol/cron/username 或者vim var/spol/cron/username同樣可以設定定時任務
5.切換到 /etc/cron.d,可以查看該目錄下存在的文件
該文件的內容同樣是定時任務的設定,同理,我們可以在該目錄下新建一個文件來設定定時任務。
vim /etc/cron.d/filename或者將該命令導入文件中。該文件的功能就是可以設定多個用戶執行cron
<分> <時> <天> <月> <用戶> <動作>
vim方式
導入命令方式
導入多行命令方式
三、臨時文件的管理
臨時文件的配置文件 /usr/lib/tmpfiles.d/ 以下都是臨時文件的配置文件,必須以.conf結尾
(1)創建管理臨時文件的配置文件 vim /usr/lib/tmpfiles.d/test.conf
下圖腳本中體現了目標目錄,賦予權限,uid和gid,以及生存時間
(2)監視腳本中的目標目錄(遞歸查看)
(3)該配置文件生效systemd-tmpfiles--create /usr/lib/tmpfiles.d/test.conf
由於該目錄下的文件是臨時文件,且生存週期是10s,則在10s後,文件消失
(4)清空該配置文件指向的目標目錄下的文件
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/test.conf
四、分區
硬盤的分區主要分爲基本分區(primary partion)和擴充分區(extension partion)兩種,基本分區和擴充分區的數目之和不能大於四個。且基本分區可以馬上被使用但不能再分區。擴充分區必須再進行分區後才能使用,也就是說它必須還要進行二次分區。那麼由擴充分區再分下去的是什麼呢?它就是邏輯分區(logical partion),邏輯分區沒有數量上限制。每一個硬盤設備最多能有4個主分區(其中包括擴展分區),構成一個擴展分區都要佔一個主分區號碼,也就是在一個硬盤中,主分區和擴展分區一共最多是4個。
主分區:主分區的作用就是計算機用來進行啓動操作系統的,每一個操作系統的啓動引導程序都應該放在主分區上。
邏輯分區:對於邏輯分區就是必須建立在擴展分區上。
擴展分區:擴展分區能夠提供更靈活的分區方式,但是不能作爲操作系統的引導。
主引導記錄(MBR,Main Boot Record)是位於磁盤最前邊的一段引導(Loader)代碼。它負責磁盤操作系統(DOS)對磁盤進行讀寫時分區合法性的判別、分區引導信息的定位,它由磁盤操作系統(DOS)在對硬盤進行初始化時產生的。