linux系统限制内存使用率,linux中限制CPU和内存占用率方法
在linux中CPU與內存占用率限制的方法有幾種我這里整理常用的兩種,希望文章對各位同學會有所幫助哦。
查看cpu占用
在命令行中輸入 “top”
即可啟動 top
top 的全屏對話模式可分為3部分:系統信息欄、命令輸入欄、進程列表欄。
使用top查看系統負荷
top命令可以動態監視系統負荷,包括CPU、內存的使用率和占用資源較多的進程詳情等。
動態查看系統負荷(占用一個終端)
top
顯示后退出
top -n 1
以文本方式輸出,以備其它程序使用
top -b
好了,我們現在來看限制CPU和內存占用率方法
腳本內容:
代碼如下
復制代碼
#!/bin/sh
UPID=`top -bn 1 | grep "^ *[1-9]" | awk '{ if($9 > 20 || $10
> 25 && id -u $2 > 500) print $1}'`
for PID in $UPID
do
renice +10 $PID
echo "renice +10 $PID"
done
我對上面的腳本進行了修改,可以讓其針對整個服務器的進程進行限制.
修改后的腳本:
代碼如下
復制代碼
#!/bin/sh
UPID=`top -bn 1 | grep "^ *[1-9]" | awk '{ if($9 > 50 || $10
> 25 ) print $1}'`
for PID in $UPID
do
renice +10 $PID
echo "renice +10 $PID"
done
可以將這個腳本放到cron中運行,讓其每分鐘檢查一次:
代碼如下
復制代碼
chmod +x limit.sh
vi /etc/crontab
*/1 * * * * /bin/sh /root/soft_shell/limit.sh
ps:
n : 更新的次數,完成后將會退出 top
b : 批次檔模式,搭配 “n” 參數一起使用,可以用來將 top 的結果輸出到檔案內
那么top -bn 1 就是獲取一次,top的輸出結果。
grep "^*[1-9]" : 是為了直接獲取PID號,排除掉表頭等信息。
awk '{ if($9 > 20 || $10 > 25 && id -u $2 > 500)
print $1}'?:
取得cpu使用率大于20%或者內存使用率大于25%,且用戶uid大于500的進程pid。
總結
以上是生活随笔為你收集整理的linux系统限制内存使用率,linux中限制CPU和内存占用率方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 帝国cms搜索php分页,帝国cms V
- 下一篇: (二十七)【2021 WWW】Learn