Xác định trong trường hợp màn hình đang chạy một quá trình


7

Một quá trình nghe trên cổng 8113 (Solr) không phản hồi. Tôi đã tìm thấy PID của nó thông qua netstatnhưng máy chủ có khoảng hai chục quy trình Solr đang chạy trong các screenphiên khác nhau .

3607.foobar-client2  (12/27/14 20:54:02)     (Detached)
3797.solr.bo.app    (12/25/14 11:51:30)     (Detached)
2962.solr       (12/25/14 11:47:23)     (Detached)
1410.solrTester         (12/25/14 11:39:41)     (Detached)
1348.solrReports (12/25/14 11:38:41)     (Detached)
....

Cách duy nhất mà tôi tìm thấy để xác định chúng liên quan đến việc dừng các quy trình. Tôi đã cố gắng xác định chúng bằng cách mở các tệp lsofnhưng điều đó không hữu ích chút nào trong trường hợp này. Có cách nào để xác định, dựa trên PID, trong screenphiên nào một quy trình đang chạy không?

Câu trả lời:


6

Tìm thấy rồi!

Để tìm screenphiên bản mà PID 351 đang chạy, hãy tìm kiếm môi trường PID 351 cho chuỗi "STY =":

$ grep -z '^STY=' /proc/351/environ
STY=1410.neverFindMe

Hoặc sử dụng ps(nếu tên phiên màn hình không chứa ký tự khoảng trắng):

$ ps wwep 351 | grep -o 'STY=\S*'
STY=1410.neverFindMe

Cảm ơn bạn Stéphane! Bạn có thể đăng bài chỉnh sửa đó như một câu trả lời khác, vì nó bổ sung thông tin rất hữu ích, tôi sẽ chấp nhận nó.
dotancohen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.