在我的 Ubuntu VM 上:
Linux xxxxxxx 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24
21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
我通过 SSH 连接到它,并运行以下命令:
sar 1 10000 | awk '{print $9}' | grep -v aaaa
(奇怪的是)这个命令没有产生任何输出(为什么?)但接下来的事情更奇怪。如果我在命令运行时按下 Control-C,它就会向我的服务器发送 Control-Alt-Delete,然后服务器会重新启动(为什么?)。
root@xxxxxxx:~# sar 1 10000 | awk '{print $9}' | grep -v aaaa
^Croot@xxxxxxx:~#
Broadcast message from root@xxxxxx
(unknown) at 12:01 ...
The system is going down for reboot NOW!
Control-Alt-Delete pressed
感谢您的帮助。
谨致问候 Jaor
答案1
虽然所描述的情况听起来不太现实,但它实际上是事实,并且是由 中的一个错误引起的systat
,sadc
特别是sar
进程产生sadc
进程。
TL;DR -在完成其工作sar
之前中断会触发重启。sadc
sadc
解决方案是更新sysstat
到较新的版本(修复是 2014 年的)。从提交来看,似乎应该在systat
12.1.7 中修复此问题(不确定 - 这仍然是 5 年前的修复,据了解 ubuntu 14 相当旧)。
https://github.com/sysstat/sysstat/commit/c3de69658006af0e0e3b7746e8646b8b4cdd2860
更多详情可在这找到
http://northernmost.org/blog/sar-rebooting-ubuntu/index.html
awk
更新:至于没有结果 - 这是不相关的事情,是由于默认情况下缓冲输入而导致的- 要立即获得结果,需要将其调用为awk -W interactive