目錄
一、進程原理
二、進程工作過程
三、進程類型
四、管理進程
五、前后臺調(diào)度
六、定時任務
七、管理定時任務
?文章來源地址http://www.zghlxwxcb.cn/news/detail-438953.html
?
?
?
?
?
?
?
一、進程原理
進程:指正在運行的程序稱之為進程
程序:指的是沒有運行的代碼
線程:真正的執(zhí)行者,是復制了一部分進程的代碼,可以完成部分任務的,真正的執(zhí)行者
?
二、進程工作過程
進程工作過程:1.啟動第一個進程(父進程)
2.父進程將資源分配給子進程
3.子進程啟動
進程結(jié)束過程:1.子進程結(jié)束
2.子進程將資源還給父進程
3.父進程結(jié)束,終止進程
特殊進程結(jié)束過程:1.父進程提前結(jié)束
2.子進程無法返還資源,找不到父進程
3.子進程無法終止,形成僵尸進程
一個進程最重要的是pid(唯一id號),user(進程名),%cup(cup使用率),%mem(物理內(nèi)存使用率)
?
三、進程類型
父進程:/user/lib/systemd/syste,pid為1,第一個啟動的進程
子進程:ppid可以看到父進程的pid號,如果為0就是沒有父進程
? 僵尸進程:找不到父進程返還資源分子進程,無法刪除,因為占用資源少所以無需處理,只有重啟才可以停止
進程類型:S休眠狀態(tài)
R正在運行
D不可中斷的休眠狀態(tài)
Z僵尸進程
T停止狀態(tài),后臺暫停或者處于跟蹤調(diào)試狀態(tài)
可以看到pid1356是休眠狀態(tài)
pid7864是運行狀態(tài)
?
四、管理進程
查看進程:靜態(tài)查看和動態(tài)查看
靜態(tài)查看命令:
1. ps -elf (e:顯示系統(tǒng)內(nèi)所以進程信息,l長格式顯示信息,f完整格式顯示信息)
? ? ?s:休眠狀態(tài)? ? uid:進程名? ? ?pid:唯一標識? ? ppid:父進程pid? ? ?pri:優(yōu)先級? ?ni:謙讓值? ? sz大小 cmd命令位置
? 2. ps -aux(a:終端所有進程 u:列出進程的用戶? x:顯示所有終端信息)
進程名? ? ? ? ? ? 進程號 cpu利用率? 硬盤利用率 Ss標識有子進程
? ps -aux |grep httpd:可以指定服務名查找
? ps -aux |grep 8553:指定uid查找
? 3.pstree(以樹狀結(jié)構(gòu)列出信息)
可以以樹狀看到自己想要看的進程
?
pstree -p 只顯示線程顯示時帶上uid,方便查看
? pstree -up(可以顯示進程和線程用戶)
? 動態(tài)查看線程:
1.top,可以動態(tài)查看進程信息
hi指1分鐘使用
si指5分鐘使用
st指15分鐘使用
可以進行操作,按c可以看按cup使用率排序,按1顯示cup使用的所有信息,q退出
? top也可以靜態(tài)查看:top -b -n 1(b指以文本格式輸出,n指的時次數(shù))
?
3.pgrep(查看進程)
?
pgrep -l "ro"指定查看所有含有ro的進程
? pgrep -lu "root"顯示所有屬于root的進程
?
?
殺死進程:kill(kill是一個信號,將信號發(fā)個內(nèi)核,內(nèi)核進行處理,完成殺死進程的操作)
kill -9 強制殺死指定進程
正常是active
? kill 9038(httpd的進程號9038)可以看到active是failed狀態(tài)
? kill -9 9401殺死進程之后,active是的deactivating
?
如果進程服務是failed狀態(tài)原因:1.強制終止
? 2.啟動失敗
啟動失敗排查步驟:1.檢查網(wǎng)絡(ping網(wǎng)關(guān)或本機地址127.0.0.1)
2.檢查防火墻(防火墻策略禁用)
3.服務本身出錯(配置文件錯誤)
4.檢查端口(被占用或者防火墻禁止)
5.環(huán)境問題(無法解決,更換設備)
五、前后臺調(diào)度
Linux進程分為前臺執(zhí)行和后臺執(zhí)行,相當于window系統(tǒng)的后臺,顧名思義在后臺也可以執(zhí)行,不會影響當期的操作
調(diào)入后臺:1.vim編輯中 ctrl +z 可以調(diào)入后臺
2.配置耗費時間長的命令時在命令尾加入&加入后臺
現(xiàn)在已經(jīng)進入后臺,可以使用jobs查看后臺進程
? jobs可以不加選項直接查看后臺進程
? jobs選項:
-l(顯示所有進程帶pid)
?
-p(只顯示后臺ip)
? -n(顯示最近加入的后臺進程)
-r(正在運行的后臺進程)
?
-s(停止的后臺進程)
?
六、定時任務
定時任務:指的是重復的必須的進行操作,類似手機的定時開關(guān)機,方便操作。
定時任務格式:* * * * *(分時日月周)
*/2 */2 */2 */2 */2? ls(每2分鐘 每2小時 每2天 每2個月 每2周 查看當前目錄)*/2表示每多少執(zhí)行
1,5 0 1 1 * ls(每個一月一號的0點的1分鐘和5分鐘執(zhí)行查看命令)1,5表示不連續(xù)
1-5 0 1 1 * ls(每個一月一日的0點1到5分鐘執(zhí)行查看命令)1-5表示連續(xù)
配置文件在/etc/crontab
七、管理定時任務
創(chuàng)建定時任務
crontab -e(e創(chuàng)建)
?
?
? crontab -e -u(e創(chuàng)建,u指定用戶,默認當前用戶)
?
?
修改定時任務
直接進入創(chuàng)建定時任務中修改即可
刪除定時任務
crontab -r(將計劃全部刪除)
?
查看定時任務
crontab -l (查看當前用戶的計劃任務)
文章來源:http://www.zghlxwxcb.cn/news/detail-438953.html
?
到了這里,關(guān)于linux 管理進程和計劃任務的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!