linux终端下ctrl c中断失效

3,968 views
Skip to first unread message

danny dun

unread,
Mar 13, 2011, 6:29:36 AM3/13/11
to sh...@googlegroups.com
公司最近测试一个新程序,不过测试后发现服务器不能使用ctrl c来中断了,研发也不知道怎么回事,说程序中没有禁用过ctrl c,请问下各位有什么高见没?

Shell Xu

unread,
Mar 13, 2011, 7:53:27 AM3/13/11
to sh...@googlegroups.com
原因多的很,例如处于io中,于是就进入了unbreakable状态。
strace看一下?

在 2011年3月13日 下午6:29,danny dun <danny...@gmail.com>写道:
公司最近测试一个新程序,不过测试后发现服务器不能使用ctrl c来中断了,研发也不知道怎么回事,说程序中没有禁用过ctrl c,请问下各位有什么高见没?



--
无能者无所求,饱食而遨游,泛若不系之舟
blog: http://shell909090.com/blog/
twitter: http://twitter.com/shell909090

danny dun

unread,
Mar 13, 2011, 8:11:27 AM3/13/11
to sh...@googlegroups.com
不好意思阿,strace还不太会用啊,怎么跟踪ctrl c啊?

小马xiaoma

unread,
Mar 13, 2011, 8:18:18 AM3/13/11
to sh...@googlegroups.com
用kill试试

在 2011年3月13日 下午6:29,danny dun <danny...@gmail.com> 写道:

danny dun

unread,
Mar 13, 2011, 8:23:41 AM3/13/11
to sh...@googlegroups.com
中断程序倒是可以,现在是ctrl z调到后台,然后再kill就可以了,但是这样很麻烦!

Bill Liao

unread,
Mar 13, 2011, 8:53:43 AM3/13/11
to sh...@googlegroups.com
意思是用kill发中断SIGINT吧?


2011/3/13 小马xiaoma <cnxi...@gmail.com>:

Xilin Sun

unread,
Mar 13, 2011, 7:44:15 AM3/13/11
to sh...@googlegroups.com

是putty操作的吗?直接用shell操作会不会这样?是所有程序都无法中断还是特定的程序?

Marco

unread,
Mar 13, 2011, 8:23:15 PM3/13/11
to sh...@googlegroups.com
stty改下 intr的设置, 绑定到其它键上试试看

2011/3/13 danny dun <danny...@gmail.com>



--
LinuX
Violin
Canon EOS

danny dun

unread,
Mar 13, 2011, 9:45:22 PM3/13/11
to sh...@googlegroups.com
不管使用什么终端工具都是不能使用,我用过scurecrt,也在ubuntu下用终端登录,都不能使用ctrl c,所有程序都无法中断。正常情况下,有个习惯,一长串命令输错了的时候,直接ctrl c然后重新输,但是现在ctrl c没反应了

danny dun

unread,
Mar 13, 2011, 10:30:02 PM3/13/11
to sh...@googlegroups.com
我测试过将其绑定到x键上,用命令stty intr ^x,然后退出,重新登录,没有反应,需要重启吗?

danny dun

unread,
Mar 13, 2011, 11:18:32 PM3/13/11
to sh...@googlegroups.com
现在找到了解决方法,就是切换到csh,再切换回来bash,就可以使用ctrl c了,想请问下究竟什么操作会造成这种情况呢?检查脚本程序并没有关于这个的操作,很是郁闷!

Marco

unread,
Mar 13, 2011, 11:41:01 PM3/13/11
to sh...@googlegroups.com
晕, 你退出了不就没了……

stty修改不需要退出的, 即时生效

2011/3/14 danny dun <danny...@gmail.com>

danny dun

unread,
Mar 13, 2011, 11:45:39 PM3/13/11
to sh...@googlegroups.com
不好意思,我没表达完整,是在即时测试了那个stty intr ^x无效后,再退出,重新登录的

danny dun

unread,
Mar 13, 2011, 11:50:15 PM3/13/11
to sh...@googlegroups.com
补充:csh;bash后,ctrl d无法退出登录,另外在退出并重新登录后依然无法使用ctrl c。。。(以上操作均是在scurecrt上进行)

Wang Francis

unread,
Sep 1, 2018, 3:13:38 AM9/1/18
to Shanghai Linux User Group


On Sunday, March 13, 2011 at 6:29:36 PM UTC+8, danny dun wrote:
公司最近测试一个新程序,不过测试后发现服务器不能使用ctrl c来中断了,研发也不知道怎么回事,说程序中没有禁用过ctrl c,请问下各位有什么高见没?

最近我遇到了同样的问题,应该是异常的IO导致的。我发现执行 df du 等命令也会卡住,之后我 ps 查了下,有好多个 find 的进程,kill -9 也无法杀死,能力有限我一天也没搞定,最后只好重启机器了。

依云

unread,
Sep 1, 2018, 4:24:11 AM9/1/18
to sh...@googlegroups.com
On Sun, Aug 26, 2018 at 01:46:13AM -0700, Wang Francis wrote:
>
> 最近我遇到了同样的问题,应该是异常的IO导致的。我发现执行 df du 等命令也会卡住,之后我 ps 查了下,有好多个 find 的进程,kill
> -9 也无法杀死,能力有限我一天也没搞定,最后只好重启机器了。

D 状态了吧。建议检查 iowait、iostat -dmx,以及内核日志。有可能是磁盘那边
有什么问题,也可能是 kernel oops 之类的。还可以 cat /proc/pid/stack 看看
调用栈。

别用 ps 了。htop 一下,系统出啥状况了一目了然。

--
Best regards,
lilydjwg

Linux Vim Python 我的博客:
https://blog.lilydjwg.me/
--
A: Because it obfuscates the reading.
Q: Why is top posting so bad?
Reply all
Reply to author
Forward
0 new messages