news 2026/5/25 13:52:00

Linux命令:stress

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux命令:stress

stress 命令

基本介绍

stress是 Linux 系统中用于系统压力测试的工具,通过模拟 CPU、内存、I/O 和磁盘等资源的高负载来测试系统的稳定性和性能。它是系统管理员和开发者进行系统性能评估、稳定性测试和资源规划的重要工具。

资料合集:https://pan.quark.cn/s/6fe3007c3e95https://pan.quark.cn/s/561de99256a5https://pan.quark.cn/s/985f55b13d94https://pan.quark.cn/s/d0fb20abd19a

语法

stress [OPTIONS]

常用选项

CPU 压力测试选项

  • -c, --cpu N:生成 N 个 CPU 密集型进程
  • --cpu-method METHOD:指定 CPU 压力测试方法(如 sqrt、log、sin 等)

内存压力测试选项

  • -m, --vm N:生成 N 个内存分配进程
  • --vm-bytes SIZE:每个内存进程分配的内存大小(默认 256MB)
  • --vm-stride SIZE:内存访问步长(默认 4096)
  • --vm-hang N:分配内存后暂停 N 秒再释放(0 表示不释放)
  • --vm-keep:保持分配的内存不释放

I/O 压力测试选项

  • -d, --hdd N:生成 N 个磁盘 I/O 进程
  • --hdd-bytes SIZE:每个 I/O 进程写入的文件大小(默认 1GB)

时间控制选项

  • -t, --timeout SECS:运行指定秒数后退出
  • -s, --sleep SECS:在启动每个工作进程前等待指定秒数

其他选项

  • -q, --quiet:静默模式,减少输出
  • -v, --verbose:详细模式,增加输出
  • -?, --help:显示帮助信息
  • -V, --version:显示版本信息

使用示例

1. 单 CPU 压力测试

stress-c1

2. 多 CPU 压力测试

stress-c4stress-c8-t60

3. 内存压力测试

stress-m2stress-m4--vm-bytes 512M stress-m2--vm-bytes 1G --vm-hang0

4. 磁盘 I/O 压力测试

stress-d1stress-d2--hdd-bytes 2G

5. 混合压力测试

stress-c4-m2-d1-t120

输出示例:

stress: info: [1234] dispatching hogs: 4 cpu, 2 vm, 0 io, 0 hdd stress: info: [1234] successful run completed in 120s

6. 详细模式输出

stress-c2-m1-v-t30

输出示例:

stress: info: [1234] using backoff sleep of 2000us stress: info: [1234] dispatching hogs: 2 cpu, 1 vm, 0 io, 0 hdd stress: info: [1235] (cpu) using method 'sqrt' stress: info: [1236] (cpu) using method 'sqrt' stress: info: [1237] (vm) using malloc() stress: info: [1237] (vm) hogging 268435456 bytes stress: info: [1234] successful run completed in 30s

7. 保持内存分配不释放

stress-m1--vm-bytes 1G --vm-keep-t60

8. 指定内存访问步长

stress-m2--vm-bytes 512M --vm-stride1024

输出格式说明

基本输出格式

stress: info: [PID] dispatching hogs: X cpu, Y vm, Z io, W hdd stress: info: [PID] successful run completed in Ns

状态码

状态码说明
0成功完成
1参数错误
2系统资源不足
3内部错误

实用技巧

测试 CPU 性能

# 测试所有 CPU 核心stress-c$(nproc)-t60# 结合 perf 分析 CPU 性能perfstatstress-c4-t30

测试内存稳定性

# 分配大量内存并保持stress-m4--vm-bytes 2G --vm-keep-t120# 测试内存分配和释放stress-m2--vm-bytes 1G --vm-hang1-t60

测试磁盘 I/O

# 测试磁盘写入性能stress-d2--hdd-bytes 5G-t120# 结合 iostat 分析 I/O 性能iostat-x1&stress-d1--hdd-bytes 2G-t60

综合压力测试

# 模拟高负载场景stress-c8-m4-d2-t300# 逐步增加压力foriin1248;doecho"Testing with$iCPU cores..."stress-c$i-t30done

监控系统状态

# 后台运行 stress,前台监控stress-c4-t120&top

相关命令

  • stress-ng:增强版 stress 工具
  • cpuburn:CPU 压力测试工具
  • memtester:内存测试工具
  • dd:磁盘 I/O 测试
  • fio:灵活的 I/O 测试工具
  • perf:性能分析工具
  • vmstat:系统资源监控
  • iostat:磁盘 I/O 监控
  • top:实时系统监控

注意事项

  1. 资源消耗stress会消耗大量系统资源,可能影响其他服务
  2. 测试时长:建议设置合理的测试时间,避免长时间运行
  3. 内存测试:确保系统有足够的内存,避免触发 OOM killer
  4. 磁盘测试:确保磁盘有足够的可用空间
  5. 权限要求:通常不需要 root 权限,但某些系统可能有限制
  6. 安装方法
    • Debian/Ubuntu:apt-get install stress
    • CentOS/RHEL:yum install stress

总结

stress是 Linux 系统中简单而强大的压力测试工具。它可以模拟 CPU、内存和磁盘 I/O 的高负载,帮助系统管理员测试系统的稳定性和性能极限。通过合理使用stress,可以评估系统在高负载情况下的表现,为系统优化和资源规划提供依据。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/25 13:50:01

Win11Debloat终极指南:3步告别臃肿Windows,还你清爽系统体验

Win11Debloat终极指南:3步告别臃肿Windows,还你清爽系统体验 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to…

作者头像 李华
网站建设 2026/5/25 13:49:01

ChanlunX通达信缠论插件:5分钟完成专业缠论分析的终极免费工具

ChanlunX通达信缠论插件:5分钟完成专业缠论分析的终极免费工具 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 你是否曾为复杂的缠论分析而烦恼?想要掌握专业缠论分析技术却不知从…

作者头像 李华
网站建设 2026/5/25 13:47:31

JSPStudy靶机部署全指南:JDK1.7+Tomcat7环境精准复现Java Web漏洞

1. 这不是“搭个靶场”那么简单:为什么JSPStudy靶机值得你花三小时亲手配置很多人看到“TomExam渗透测试靶场”第一反应是:不就是下载个ISO,开个VM,点几下鼠标?我试过不下二十次——前十九次都卡在JSPStudy的环境启动环…

作者头像 李华
网站建设 2026/5/25 13:47:23

pg_shard故障恢复全攻略:master_copy_shard_placement函数拯救数据

pg_shard故障恢复全攻略:master_copy_shard_placement函数拯救数据 【免费下载链接】pg_shard ATTENTION: pg_shard is superseded by Citus, its more powerful replacement 项目地址: https://gitcode.com/gh_mirrors/pg/pg_shard 当您的PostgreSQL分片集群…

作者头像 李华
网站建设 2026/5/25 13:46:34

TC264中断优先级与DMA通道配置详解:如何让CPU更‘闲’一点?

TC264中断优先级与DMA通道配置实战:释放CPU性能的进阶策略 在嵌入式系统开发中,中断管理往往是决定系统实时性和效率的关键因素。对于TC264这类高性能微控制器而言,合理配置中断优先级和DMA通道不仅能提升响应速度,更能显著降低CP…

作者头像 李华