dropbear
SSH 서버로 실행되는 Linux 시스템이 있습니다 . 클라이언트에서 해당 컴퓨터로 많은 SSH 세션을 열었고 해당 세션이 활성화된 동안 서버 컴퓨터의 DCN 포트에서 이더넷 케이블을 분리하여 더 이상 SSH를 통해 서버에 액세스할 수 없었습니다. 그러나 이전에 서버에 생성된 SSH 프로세스는 ps
컴퓨터를 재부팅할 때까지 시스템 주위에 계속 머물며 명령 등에 표시되었습니다(메모리 누수 발생). 위와 동일한 상황에서 다시 시작하지 않고 자동으로 정리하고 이러한 프로세스를 제거하는 방법이 있습니까?
답변1
이것은 다른 사람들에게 유용할 수 있습니다. 나는 dropbear의 시작 스크립트에 -K SECONDS 플래그를 추가하여 이 문제를 해결했습니다. 이런 방식으로 3번의 시도(약 1분) 후에 dropbear는 끊긴 연결을 포기하고 서버 측의 연결 프로세스를 종료합니다. 자세한 내용은 여기를 참조하세요.드롭베어 매뉴얼 페이지
답변2
두 가지 옵션:
- 너할 수 있는이 프로세스를 종료하십시오. PID가 있으면 이
kill
프로그램(루트로 실행해야 할 수도 있음)을 사용하여 종료하세요. - 방금 케이블을 뽑았으므로 이러한 프로세스는 더 이상 연결의 원격 측에서 데이터를 수신하지 않습니다. 잠시 후 그들은 이것을 알아차리고 스스로 죽을 것입니다. 소요 시간은 구성 가능한 일부 매개변수에 따라 다르지만 기본적으로 약 2시간 정도 소요됩니다.