Linux 系統管理

1,什麼是進程?

進程是正在執行的一個程序或者命令,每一個進程都是一個運行實體,都有自己的地址空間,並佔用一定的系統資源。

2,進程管理作用?

判斷服務器健康狀態

產看系統中所有的進程

殺死進程

查看進程命令

ps

命令行 說明
ps -aux 查看系統中所有進程,BSD操作系統格式
ps a 顯示現行終端機下的所有程序,包括其他用戶的程序
ps u 展示進程用戶信息
ps x 顯示所有程序,不以終端機來區分
ps -le 查看系統所有進程 linux標準命令格式
ps -A 顯示所有程序

命令行結果說明

名詞 說明
USER 該進程是由哪個用戶產生的
PID 進程ID號
%CPU 該進程佔用CPU百分比
%MEM 該進程佔用物理內存百分比
VSZ 該進程佔用虛擬內存大小 KB
RSS 該進程佔用實際物理內存大小 KB
TTY 該進程是在哪個終端運行的,其中tty1-tty7 代表本地終端,tty1-tty6 本地字符界面終端,tty7 圖形終端,pts/0-256 虛擬終端即最多支持256個遠程登錄
STAT 當前進程狀態,S:睡眠中止 s:包含子進程 R:運行 T:停止 Z:僵死
TIME 進程執行起到現在總的CPU佔用時間
START 進程啓動時間
COMMAND 產生此進程的命令名

top

命令行 說明
top 【-d 秒數】 指定top命令每個幾秒更新一次,默認是3秒
😛 shift+P 按照CPU排序
:M shift+M 按照內存排序
:N shift+N 按照PID排序
q: 退出top
?或者h: 顯示幫助

top 命令結果

第一行信息爲任務信息隊列

load avaerage:0.00 0.00 0.00 分別表示 系統在之前1分鐘,5分鐘,15分鐘的平均負載,如果是單核則 一般認爲小於1時,負載較小,大於1時負載較大

第二行爲 CPU 信息

%Cpu(s):

0.1us:用戶模式佔用的CPU百分比

0.1sy:系統模式佔用的CPU百分比

0.1ni:改變過優先級的用戶進程佔用的CPU百分比

1.1id:空閒CPU的CPU百分比

0.1wa:等待輸入/輸出的進程的佔用CPU百分比

0.1hi:硬中斷請求服務佔用的CPU百分比

0.1si:軟中斷請求服務佔用的CPU百分比

0.1st:虛擬時間百分比,即當有虛擬機時候,虛擬CPU等待
實際CPU的時間百分比

第三行爲 物理內存 信息

第四行爲 交換分區(swap)信息

pstree

查看進程樹,即用於查看進程樹之間的關係,即哪個進程是父進程,哪個是子進程,可以清楚的看出來是誰創建了誰

命令行 說明
pstree -A 各進程之間的連接以ASCII 碼字符來連接
pstree -U 各進程之間的連接以utf8字符來連接
pstree -p 同時列出各個進程pid
pstree -u 同時列出每個進程所屬用戶

終止進程

kill

命令行 說明
kill pid 終止進程
kill -9 pid 強制終止
kill -l pid 重啓進程
killall 進程名 終止一類進程 後面跟進程名
pkill -t 終端號 剔除用戶
w 查看終端用戶

工作管理

jobs -l

顯示後臺工作的ID

+號代表最近一個放入後臺的工作,也是工作恢復時候,默認恢復的工作

-號 代表倒數第二個放入後臺的工作

Ctr+Z 代表 將工作放入後臺 暫停狀態

& 代表 將工作放入後臺運行

命令行 說明
fg % 工作號 將後臺任務恢復到前臺
bg % 工作號 將前臺任務恢復到後臺

後臺恢復的執行命令,是不能和前臺有交互的,否則不能恢復到後臺執行


系統資源查看

free查看內存使用狀態

命令行 說明
free [-b/-k/-m/-g] 以字節/KB/MB/GB爲單位展示
cat /proc/cpuinfo 查看CPU信
dmesg | grep cpu 查看CPU信
uptime 顯示系統啓動時間和平均負載,也就是top命令第一行,w命令也可以看到
uname [-a|-r|-s] 查看系統與內核信息,-a查看所有 -r 內核版本 -s 內核名稱
file /bin/ls 查看系統的位數
lsb_release -a 查看系統髮型版本
lsof [-c 字符串|-u 用戶名|-p 進程ID] 列出進程打開或者使用的文件 -c :列出文件開頭的進程文件 -u:列出某個用戶進程文件 -p:列出某個進程ID的文件

緩存和緩衝區別?

緩存(cache)是用來加速數據從硬盤中讀取的,緩衝(buffer)是用來加速數據寫入硬盤的

系統定時任務

crond 服務管理與訪問控制

crond 一般是默認啓動的

service crond restart

chkconfig crond on

crontab 用戶的crontab設置

命令行 說明
crontab -e 編輯crontab定時任務
crontab -l 查詢contab定時任務
crontab -r 刪除當前用戶的所有的crontab任務
* * * * * php /mnt/d/CODE/MY/EighthWorld/artisan schedule:run >> /home/fantasy/error.log 2>&1

第一個*:一個小時的第幾分鐘 0-59
第二個*:一天中的第幾小時 0-23
第三個*:一個月中的第幾天   1-31
第四個*:一年中的第幾月   1-12
第五個*:一週的星期幾  0-7(0和7都代表週日)
符號 說明
* 代表任何時間,比如一個 * 代表一個小時中的每分鐘都執行一次的意思
代表不連續的時間,比如 0 8,12,16 * * * 代表每天對的8點0分,12點0分,16點0分執行
- 代表連續的時間範圍,比如 0 5 * * 1-6,代表週一到週六每天5點0分執行
*/n 代表每隔多久執行一次,比如 */10 * * * * ,代表每隔10分鐘執行一次
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章