使用背景:
因新申请下来的服务器暂时没有部署任何应用导致cpu使用率很低, 那资源组那边给出两个方案, 1.要不把服务器用起来 2服务器进行降配
降配是不可能降配的,后面正式用起来去升配就很麻烦了
使用说明:
这个脚本主要是针对多核服务器进行使用,前提你想让你服务器的cpu使用率达到80%, 50%这样的
主要命令讲解:
查询服务器的核数命令(当然我演示是用我的自己服务器是一核的,不要介意)
cat /proc/cpuinfo |grep "processor" | wc -l
当然有些文章会执行cat /proc/cpuinfo | grep "physical id" | wc -l 但我试了下查询不出来我的核数
[root@iZuf63rpbv7l8ahkbslwi6Z yycp]# cat /proc/cpuinfo |grep "processor" | wc -l 1 [root@iZuf63rpbv7l8ahkbslwi6Z yycp]#
删除进程
pkill -9 dd
shell脚本:
#!/bin/bash read -p "请输入一个数字(0:停止;8:CPU80%;10:CPU100%):" num if [ $num -eq 8 ]; then pkill -9 dd #仅适用与多核 for i in $(seq 1 $(cat /proc/cpuinfo |grep "processor" | wc -l | awk '{print $1-1}')); do dd if=/dev/zero of=/dev/null & done elif [ $num -eq 10 ]; then pkill -9 dd for i in $(seq 1 $(cat /proc/cpuinfo |grep "processor" | wc -l)); do dd if=/dev/zero of=/dev/null & done elif [ $num -eq 0 ]; then pkill -9 dd else echo "无效的输入" fi
执行脚本:
[root@iZuf63rpbv7l8ahkbslwi6Z yycp]# sh cpu.sh 请输入一个数字(0:停止;8:CPU80%;10:CPU100%):
这里说下我演示服务器为一核,我的选项只有0停止和10升到100%, 因为我选8相当于减掉一核等于0核(意味着如果要达到50%可以修改
wk '{print $1-1}' 这里的参数 -1 -2 -3都行看你有几核或做除法
)
[root@iZuf63rpbv7l8ahkbslwi6Z yycp]# sh cpu.sh 请输入一个数字(0:停止;8:CPU80%;10:CPU100%):10 [root@iZuf63rpbv7l8ahkbslwi6Z yycp]# top top - 17:46:42 up 8 days, 32 min, 1 user, load average: 0.37, 0.08, 0.03 Tasks: 235 total, 2 running, 231 sleeping, 2 stopped, 0 zombie %Cpu(s): 34.7 us, 65.3 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 1737.2 total, 465.5 free, 168.3 used, 1103.5 buff/cache MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1480.3 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 974053 root 20 0 220380 792 720 R 99.7 0.0 0:11.25 dd
执行top命令可以看到 %cpu达到了99.7,进程为dd
[root@iZuf63rpbv7l8ahkbslwi6Z yycp]# sh cpu.sh 请输入一个数字(0:停止;8:CPU80%;10:CPU100%):0 [root@iZuf63rpbv7l8ahkbslwi6Z yycp]# top top - 17:48:05 up 8 days, 33 min, 1 user, load average: 4.85, 1.68, 0.60 Tasks: 238 total, 2 running, 233 sleeping, 3 stopped, 0 zombie %Cpu(s): 0.7 us, 0.3 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 1737.2 total, 462.8 free, 170.9 used, 1103.5 buff/cache MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1477.7 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 104080 10036 7160 S 0.0 0.6 2:09.15 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.08 kthreadd 3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp
再次执行选项0可以看到top中没有dd进程了(被杀掉了)
标签:shell,iZuf63rpbv7l8ahkbslwi6Z,0.0,dd,yycp,Linux,root,cpu From: https://www.cnblogs.com/magepi/p/17973094