简介

lookbusy,可以虚拟产生系统CPU、内存、磁盘等负载,给人造成一种系统繁忙的错觉,在一些需要系统负载达标的场景中非常有用

CPU Usage

Memory Usage

Disk Usage

安装

仓库:https://github.com/flow2000/lookbusy

通过git下载:

1
git clone https://github.com/flow2000/lookbusy

或者下载压缩包:

1
2
wget https://github.com/flow2000/lookbusy/archive/refs/heads/master.zip
unzip master.zip

或者通过代理下载:

1
2
wget https://ghproxy.com/https://github.com/flow2000/lookbusy/archive/refs/heads/master.zip
unzip master.zip

最后编译安装:

1
2
3
4
5
6
7
8
9
cd lookbusy

chmod a+x configure

./configure

make

make install

CPU使用选项

  • -c、 每个cpu的期望利用率,以百分比为单位(默认 50 )。若选择curveCPU使用模式,则应给出MIN-MAX形式的范围。
  • -n、保持忙碌的CPU数量(默认值:自动检测出的全部核心数)
  • -r、 第一种模式:fixed,试图保持指定百分比的CPU利用率,第二种模式:curve,产生的利用率水平随给定间隔内上下浮动。
  • -p、 曲线内峰值利用率的偏移量,默认单位是秒,可以添加 m、h、d 作为其他单位
  • -P、 曲线内峰值利用率的偏移量,可以添加 m、h、d 作为其他单位

例子:

1
2
3
4
5
lookbusy -c 50 # 占用所有 CPU 核心各 50%

lookbusy -c 50 -n 2 # 占用两个 CPU 核心各 50%

lookbusy -c 50-80 -r curve # 占用所有 CPU 核心在 50%-80% 左右浮动

内存使用选项

  • -m、 以字节为单位,后面是KB、MB或GB(其他单位)
  • -M、 单位为毫秒(默认值为1000)

例子:

1
lookbusy -m 128MB -M 1000 # 每 1000 毫秒,循环释放并分配 128MB 内存

磁盘使用选项

  • -d、用于磁盘流失的文件大小(以字节为单位,后跟KB、MB、GB或TB(其他单位))
  • -b、用于I/O的块大小(以字节为单位,后跟KB、MB或GB)
  • -D、迭代之间的休眠时间,以毫秒为单位(默认值为100)
  • -f、 要用作缓冲区的文件/目录的路径(默认/tmp)

例子:

1
lookbusy -d 1GB -b 1MB -D 10 # 每 10 毫秒,循环进行 1MB 磁盘写入,临时文件不超过 1GB

后台运行

如果你需要在后台运行lookbusy,你可以使用nohup

1
nohup lookbusy -c 50 > /dev/null 2>&1 & #占用所有 CPU 核心各 50%,且后台运行,不记录日志

关闭 lookbusy

1
ps -ef | grep lookbusy | grep -v grep

杀死进程:

1
kill -9 <pid>

图例:

后台运行