日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Linux进程资源管理第二篇   -------- 工作及资源管理

發布時間:2025/7/14 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux进程资源管理第二篇   -------- 工作及资源管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

????工作管理


1、工作管理簡介

Linux中的工作管理指的是在單個登錄的終端中,同時管理多個工作的行為。在Linux工作管理中,其實就是將當前的工作放到后臺執行。查詢當前系統中的后臺程序使用的命令是jobs

Linux,當某些服務啟動之后,如果不放入后臺,他會一直占用當前的shell,例如MYSQL。如果想要執行其他操作的話,需要將mysql服務終止掉。如果不想將該服務終止,就需要將該服務放入后臺。

注意事項:

a> 當前的登錄終端,只能管理當前終端的工作,而不能管理其他登錄終端的工作。

也就是說,放入后天的服務是需要綁定終端的。Mysql服務發現了這個問題,當調用mysql服務的啟動腳本時,它會將MySQL設置為可以脫離當前終端操作的服務,當MySQL服務在當前終端上放入后臺時,關閉當前終端,mysql服務不會終止,但其他服務如果關閉的當前終端,服務也會跟著結束。

b> 放入后臺的命令必須可以持續運行一段時間,這樣我們才能捕捉和操作這個工作

例如:將ls、cd等命令房后后臺是沒有意義的,回車之后就會結束

c> 放入后臺執行的命令不能和當前用戶有交互或需要前臺輸入,否則放入后臺只能暫停,而不能執行

例如:將vim命令放入后臺,只能暫停,不肯能繼續執行。因為vim命令是需要和用戶進行交互的。


2、工作管理方法

1>?把命令放入后臺<以top命令為例>

在執行的命令后加"?&?”???????????#?把命令放入后臺,并在后臺執行 top??????????????????#?按下ctrl+z快捷鍵,放在后臺暫停


2>?查看后臺工作

jobs?[-l]????????????????????????????#?-l??顯示工作的PID


?

注: “+”表示最近一個放入后臺的工作,也是工作恢復時默認恢復的工作,“-”表示倒數第二個放入后臺的工作


3>?將后臺暫停的工作恢復到前臺執行

fg?%工作號????????????????#?%可以省略,但是注意工作號和PID的區別


4>?把后臺暫停的工作恢復到后臺執行

bg?%工作號????????????????#?后臺恢復執行的命令,是不能和前臺有交互的,否則不能恢復到后臺執行


3、后臺命令脫離登錄終端執行

一般情況下,一旦把命令放入后臺,只能在當前登錄終端執行。一旦退出或關閉終端,后臺程序就會停止。


后臺命令脫離登錄終端執行的方法:

1>?把需要后臺執行想命令加入到/etc/rc.local 文件

開機默認創建文件?/var/lock/subsys/local,目的是為了查看系統開機時間。

如果想要后臺運行的一個程序持續運行,可以把這個進程完全寫到該文件中,那么該進程就可以持續運行。因為它是系統直接調用的,沒有綁定到終端。

2>?使用系統定時任務crontab,讓系統在指定的時間執行某個后臺命令

使用系統定時任務,可能會導致不生效!!!

?

3>?使用nohup命令

命令格式:

nohup?[命令]?&

在?/root 目錄下創建文件 for.sh,內容如下:


nohup運行該文件

切換終端,然后可以通過 ?ps aux | grep for.sh 查看


?







????系統資源管理

※1、vmstat命令監控系統資源

vmstat?[刷新延時?刷新次數]

?procs:進程信息字段

r:等待運行的進程數,數量越大,系統越繁忙

b:不可被喚醒的進程數,數量越大,系統越繁忙

?memory:內存信息字段

-swpd:虛擬內存的使用情況,單位KB

-free:空閑的內存容量,單位KB

-buff:緩沖的內存容量,單位KB

-cache:緩存的內存容量,單位KB

緩存和緩沖的區別:

????緩存(cache)是用來加速數據從硬盤中”讀取”的,而緩沖(buffer)是用來加速數據”寫入”硬盤的。

?swap:交換分區的信息字段

-si:從磁盤中交換到內存中數據的數量,單位KB

-so:從內存中交換到磁盤中數據的數量,單位KB,

兩個數越大,證明數據需要經常在磁盤和內存之間交換,系統性能越差

?io:磁盤讀寫信息字段

-bi:從塊設備讀入數據的總量,單位是塊

-bo:寫到塊設備的數據的總量,單位是塊。

兩個數越大,代表系統的I/O越繁忙

?system:系統信息字段:

-in:每秒被中斷的進程次數

-cs:每秒鐘進行的事件切換次數。

兩個數越大,代表系統與接口設備的通信飛航繁忙

?cpu:CPU信息字段

-us:非內核進程消耗CPU運算時間的百分比

-sy:內核進程消耗CPU運算時間的百分比

-id:空間CPU的百分比

-wa:等待I/O所消耗的CPU百分比

-st:被虛擬機所盜用的CPU占比

※2、dmesg開機時內核檢測信息

dmesg?|?grep?CPU

顯示系統的內核自檢信息,對Linux來將,計算機需要自檢兩遍,一是硬件的BIOS自檢,二是內核自檢

dmesg命令是用來判斷當前服務器的硬件狀態。

?

※3、free命令查看內存使用狀態

free?[-b?|?-k?|?-m?|?-g]

選項:以 字節 | Kb | MB | GB 為單位顯示,默認為Kb

?

- buffers/cache:相當于第一行used - buffers - cached

+ buffers/cache:相當于第一行free + buffers + cached

雖然看起來buffer和cached 占用了一部分內存,但實際上是作為緩沖和緩存存在,沒有被系統的程序直接占用,是為了提高系統讀寫效率存在的

最后一行表示Swap的使用狀況,swap是提高計算機性能尤其是高耗費內存性能的重要手段,因此不可以隨意減少Swap分區的容量。當真實機內存小于4G,swap應該是內存的兩倍,如果真實機的內存大于4G,swap最少要和內存一樣。

※4、查看CPU信息

cat?/proc/cpuinfo


proc是用來保存內存信息的目錄

?

?

※5、uptime命令

uptime


顯示系統的啟動時間和平均負載,也就是top命令的第一行。w命令也可以看到這個數據。

?

uptime命令可以查看到系統當前時間,開機到現在的時間,登錄用戶數目,平均負載。和top命令第一行信息一致,但top命令本身就會造成一定的負載,如果只是簡單想查看系統啟動時間和平均負載,可以用uptime命令。

?

※6、查看系統與內核相關信息

uname [選項]

選項: -a:查看系統所有相關信息

-r:查看內核版本

-s查看內核名稱

?

?

※7、查看當前Linux系統的操作位數

file /bin/ls

file之后可以追加任何一個系統外部命令,可以查看到當前操作系統的位數。需要注意的是,這里的位數與CPU的位數不一定相同,64的的電腦上也可以安裝32位的操作系統

?

?

※8、查詢當前Linux的發行版本

lsb_release -a

?

?

※9、列出進程打開或使用的文件信息

lsof [選項]# 列出進程調用或打開的文件的信息

選項:

?????????-c 字符串:只列出字符串開頭的進程打開的文件

-u 用戶名:只列出某個用戶的進程打開的文件

-p pid:列出某個PID進程打開的文件

?

?

根據文件名查進程,文件只能是系統文件,不能是用戶自己創建的文件,只有系統文件才有系統進程

?

?




????系統定時任務

Windows中的系統定時任務:開始-- >所有程序-- >附件-- > 系統工具-- >定時計劃程序

at一次性定時任務

?

?1>?確定at安裝

chkconfig?--list?|?grep?atd????????????#??at服務是否安裝 service?atd?restart????????????????????#??at服務重新啟動

在服務名后加 d ,表明這是一個守護進程


?

?2>?at的訪問控制

l?如果系統中有 /etc/at.allow(白名單)文件,那么只有寫入/etc/at.allow 文件中的用戶可以使用at 命令(/etc/at.deny文件會被忽略)

l?如果系統中沒有 /etc/at.allow (黑名單)文件,只有 /etc/at.deny 文件,那么寫入 /etc/at.deny 文件中的用戶不能使用at命令,但對root 用戶不起作用

l?如果系統中這兩個文件都不存在,那么只有root用戶可以使用at命令。默認情況下只有黑名單

?

?3>?at命令的使用

at?[選項]?時間

選項:

-m:當at工作完成后,無論是否命令有輸出,都用email 通知執行at命令的用戶

-c 工作號:顯示該at工作的實際內容

時間:

- HH:MM例如:02:30

- HH:MM YYYY-MM-DD例如:02:30 2013-07-25

- HH:MM [am|pm] [month] [date]例如:02:30 July 25

- HH:MM [am|pm] + [minutes|hours|days|weeks]例如:now + 5minutes


其他at管理命令

atq????????????????#?查詢當前服務器上的at工作 atrm?[工作號]?????????????????#?刪除指定的at任務


at定時任務執行完畢之后,atq就不會再查詢到at任務

?


crontab定時任務

關于crontab定時任務,要介紹的細節比較多,這里作為一個單獨的文章來寫,鏈接如下:

http://muhuizz.blog.51cto.com/11321490/1868839




---------muhuizz整理

轉載于:https://blog.51cto.com/muhuizz/1897035

總結

以上是生活随笔為你收集整理的Linux进程资源管理第二篇   -------- 工作及资源管理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。