Tôi có một chương trình đang chạy trên một máy từ xa mà dự kiến sẽ nhận SIGINT từ cha mẹ. Chương trình đó cần nhận tín hiệu đó để hoạt động chính xác. Thật không may, nếu tôi chạy quá trình đó từ xa qua SSH và gửi SIGINT, quá trình ssh tự bẫy và ngắt thay vì chuyển tiếp tín hiệu.Làm thế nào để gửi SIGINT đến một quá trình từ xa qua SSH?
Dưới đây là một ví dụ về hành vi này sử dụng GDB:
Chạy tại địa phương:
$ gdb GNU gdb 6.3.50-20050815 (Apple version gdb-1344) (Fri Jul 3 01:19:56 UTC 2009) ... This GDB was configured as "x86_64-apple-darwin". ^C (gdb) Quit ^C (gdb) Quit ^C (gdb) Quit
Chạy từ xa:
$ ssh foo.bar.com gdb GNU gdb Red Hat Linux (6.3.0.0-1.159.el4rh) ... This GDB was configured as "i386-redhat-linux-gnu". (gdb) ^C Killed by signal 2. $
Ai có thể đề nghị một cách để làm việc xung quanh vấn đề này? Ứng dụng khách ssh cục bộ là OpenSSH_5.2p1.
Hoàn hảo. Đó là nó. Cảm ơn. – Matt