求问 怎么让 Linux hung 住几分钟?

2020-07-30 11:19:44 +08:00
 Mark3K

如题,并且不会导致系统重启

5152 次点击
所在节点    Linux
45 条回复
XiaoxiaoPu
2020-07-30 14:26:36 +08:00
X-Y 问题?
Mark3K
2020-07-30 14:27:13 +08:00
@nuk 是云主机,应该不行
barathrum
2020-07-30 14:57:56 +08:00
swap 开大,使劲消耗内存,不发生 oom,但有大量交换时就会很卡。
barathrum
2020-07-30 14:58:42 +08:00
理论上 swap 用的越多越卡
goofool
2020-07-30 15:11:21 +08:00
:(){ :|:& };:
goofool
2020-07-30 15:12:59 +08:00
input2output
2020-07-30 15:17:31 +08:00
sudo memtester 1048576 2

用 memtester 测试超过实际拥有的内存量
ungrown
2020-07-30 16:21:36 +08:00
我怎么愈发觉得虚拟机暂停是个好方法???
gleymonkey
2020-07-30 16:33:14 +08:00
find 一个 大文件加就行
rrfeng
2020-07-30 16:37:48 +08:00
先不给他供电不就停了(大雾
rrfeng
2020-07-30 16:38:59 +08:00
正经:
你这是典型的 X - Y problem
请描述你的原始问题。你觉得让系统 hung 一会儿就能解决你的原始问题就来问怎么 hung 它是不明智的。
yinanc
2020-07-30 17:02:39 +08:00
调试 Linux 源代码
tuxz
2020-07-30 17:29:50 +08:00
yangbonis
2020-07-30 17:38:35 +08:00
对于你的进程来说,gdb stop 不行吗? 内核与你的进程有啥关系,或者你怀疑系统调用失败导致你进程出问题?
zzw1998
2020-07-30 19:52:28 +08:00
26 楼正解,无限循环 fork 就行了
Mark3K
2020-07-30 19:55:57 +08:00
@rrfeng 服务里面有个定时器,固定间隔时间做一件事, 表现为在系统高负载的情况下,比如所有监控数据都采集不到,整个系统 hung 住,几分钟后恢复,恢复后,服务中的定时器有一定的概率(很小)会变成很小的时间间隔(比如正常是 1 分钟,异常情况几十毫秒), 定时器的逻辑可以参考这里( https://github.com/golang/go/issues/19810#issuecomment-291170511
Mark3K
2020-07-30 19:58:01 +08:00
@zzw1998 无限 fork 会不会直接导致重启,没试过这个命令
Reficul
2020-07-30 20:53:23 +08:00
cgroup 里有一个 freeze 组,放进去就停下了
Mark3K
2020-07-30 21:00:11 +08:00
@Reficul 暂停进程试过发送 SIGSTOP,但是没有复现问题
holyzhou
2020-07-31 09:38:02 +08:00
可以试试使用 stress 命令 给整个系统一点压力 cpu 、内存、IO 的 ,并且工具本身就有超时选项 ,可以在指定时间内终止掉。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/694281

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX