1. 程式人生 > >八週第一次課 2017.12.4 linux任務計劃cron、chkconfig工具、systemd管理服務、unit介紹、target介紹

八週第一次課 2017.12.4 linux任務計劃cron、chkconfig工具、systemd管理服務、unit介紹、target介紹

10.23 linux任務計劃cron

linux任務計劃:在某個時間自動執行命令或者指令碼。


任務計劃的配置檔案


前面兩行是定義變數,第三行是指傳送郵件給誰,然後最後一行有五個點分別對應著五個位,也就是上面的五行,下面來介紹一下分別表示什麼意思:

1.表示分鐘(0-59)

2.表示小時(0-23)

3.表示日期(1-31)

4.表示月份(1-12可以寫數字或者英文的簡寫)

5.表示星期(0-6,0或者7表示週日,也可以寫成英文的簡寫)

最後一行開頭部分是使用者(在root使用者下不寫預設就是root)

後面部分,也就是com開頭的位置是你要執行的命令。

定義任務計劃(用法和vim一樣)

案例:每天3點執行123.sh指令碼


把正確的結果和錯誤的結果都輸出到123.log裡


把正確的結果和錯誤的結果都追加到123.log裡


雙月的1-10號的星期二和星期五的三點 可以寫成如下格式


設定好之後我們還需要使用命令啟動cron才能啟用計劃

檢視是否啟用使用命令

或者使用檢視它的狀態。(綠色就代表已經啟用了)

有時候計劃了執行指令碼,但是沒有執行很可能是沒有使用絕對路徑,解決辦法要麼在計劃裡把該條命令的路徑新增到PATH裡,要麼就使用絕對路徑。

還有就是建議計劃的任務都要寫上正確和錯誤的結果追加到某個檔案裡,這樣才能保證任務有據可查。

檢視任務計劃列表

任務計劃cron的檔案在目錄下,如果是root的cron就是

刪除

指定使用者

10.24 chkconfig工具

chkconfig服務管理工具(主要在6及以前的系統中使用,如怎麼控制服務啟動,如何控制服務開機啟動、如何控制服務在指定級別啟動等等)

檢視當前系統中使用chkconfig的服務(只會列出sysv服務管理模式的程序,7很多的都是systemd模式的)

使用如上命令在7只能檢視到兩個服務,如下圖


這兩個程序檔案在如下路徑(之後我們可以其他服務的啟動指令碼放到這個目錄裡用chkconfig工具管理也是可以的)


表示該服務在0-6級別分別是什麼狀態,開機啟動還是關閉(off是關閉on是開啟)



0級別是關機狀態、1級別是單使用者、2是多使用者模式(沒有nfs服務)、3是是使用者模式(不帶圖形)、4保留的級別、5多使用者模擬(帶圖形)、6重啟

指定network的3級別關閉

指定network的3級別和5級別關閉

把123加入到服務列表裡來(需要把123放到/etc/init.d目錄下來,並且確定123是個指令碼,同是需要有如下兩行格式才能識別)


從服務列表刪除

10.25 systemd管理服務


systemd是centos7的管理服務的機制。

列出systemd模式的服務

讓服務開機啟動(顯示出來的是軟連線,然後ls這個軟連線就可以得到服務的檔案地址)

不讓服務開機啟動

檢視服務狀態


10.26 unit介紹

上一節課裡獲得的服務檔案所在目錄,也就是,目錄裡的所有檔案都叫做unit。

unit主要分為一下幾種型別。


unit相關的命令


10.27 target介紹


檢視所有target。

檢視指定target下面有哪些unit。

檢視系統預設的target。

設定預設的target。


檢視指定sevice屬於那個target。(看install位置)