1. 進(jìn)程管理
1.0 關(guān)鍵概念
- 程序:文件中保存的一系列可執(zhí)行命令
- 進(jìn)程:加載內(nèi)存中的程序,由CPU運(yùn)行
- 守護(hù)進(jìn)程(daemon):常駐內(nèi)存,與終端無關(guān)的系統(tǒng)進(jìn)程
- 用戶進(jìn)程:用戶通過終端加載的進(jìn)程。
系統(tǒng)中的每一個進(jìn)程都有一個進(jìn)程號---pid;
pid=1的進(jìn)程是init進(jìn)程,是系統(tǒng)啟動的第一個進(jìn)程。
1.1 查看進(jìn)程
(a)ps靜態(tài)查看某一時間點(diǎn)進(jìn)程信息
常用參數(shù) :
-
-a顯示現(xiàn)行終端機(jī)下的所有程序 -
-x顯示所有程序,不以終端機(jī)來區(qū)分 -
-u以用戶為主的格式顯示程序狀況 -
-f用ASCII字符顯示樹狀結(jié)構(gòu)
(b)top連續(xù)觀察進(jìn)程動態(tài)
默認(rèn)3秒刷新一次,并按照CPU使用率的高到低排序
(c)pstree用ASCII字符顯示樹狀結(jié)構(gòu),清楚表達(dá)進(jìn)程間的相互關(guān)系
-p顯示進(jìn)程ID
-u顯示用戶名稱
1.2結(jié)束進(jìn)程
(a)kill
結(jié)束進(jìn)程和進(jìn)程號PID,系統(tǒng)可能忽略
kill -9 PID 強(qiáng)制終止進(jìn)程(不推薦使用)
(b)killall
終止同一進(jìn)程組內(nèi)的所有進(jìn)程
2. 任務(wù)管理
2.1 相關(guān)概念
- 任務(wù):登陸系統(tǒng)取得shell后,在單一終端接口下啟動的進(jìn)程
- 前臺:在終端接口上,可以出現(xiàn)提示符讓用戶操作的環(huán)境
- 后臺:不顯示終端接口的環(huán)境
任務(wù)管理意義是多項(xiàng)任務(wù)并行執(zhí)行
2.2相關(guān)命令
(a)& //放在命令后
直接將程序放入后臺處理
如 find /-name smcapp &
(b) jobs
查看當(dāng)前shell的后臺任務(wù)
(c)ctrl+z
將正在運(yùn)行的任務(wù)放入后臺暫停
(d)fg %[jobID] 將任務(wù)放入前臺執(zhí)行
(e)bg %[jobID]將任務(wù)放入后臺執(zhí)行
不加jobID表示對當(dāng)前任務(wù)進(jìn)行操作
2.3周期任務(wù)管理
crontab [-u user] [-e | -l| -r ]
- -u:指定用戶
- -e:編輯crontab的內(nèi)容
- -l:查詢crontab的內(nèi)容
- -r:移除所有的crontab任務(wù)內(nèi)容
使用crontab –e編輯時,程序會直接調(diào)用vi接口,程序路徑是/use/sbin/cron;
系統(tǒng)計劃任務(wù)保存在/etc/crontab中;
ar/spood/crontab/tabs下面有對應(yīng)用戶名的crontab,對應(yīng)用戶級別的任務(wù)配置;
ar/crontab對應(yīng)系統(tǒng)級別的任務(wù)配置;
2.4 管理定時任務(wù)
at安排一個任務(wù)在未來執(zhí)行,必須先啟動atd進(jìn)程
通過ps -1f | grep atd查看進(jìn)程是否啟動
- at –l:相當(dāng)于atq,列出當(dāng)前at任務(wù)
- at-d [jobID]:相當(dāng)于atrm,刪除一個at任務(wù)
- at-c [jobID]:查看任務(wù)的具體內(nèi)容
at使用方法:
- at HH:MM ----今天的HH:MM執(zhí)行
- at HH:MM YYYY-MM-DO----指定具體的執(zhí)行日期和時間
- at now +number [minutes |hours |days |weeks]----當(dāng)前時間往后多久執(zhí)行
- at HH:MM + number[minutes |hours |days |weeks]----某個時間點(diǎn)+分鐘|小時|天|星期執(zhí)行