콘솔을 통해 화면에서 프로세스가 시작되면 이러한 프로세스는 로그아웃 시 종료됩니다.
login: root
password: ***
그런 다음 몇 가지 명령을 실행하십시오.
screen -d -S sample -m bash -c '/hom/app/server start'
그 후 서비스가 실행되기 시작하고 화면에 프로세스가 표시됩니다.
screen -ls
# output
# There are screens on:
# 1805.sample (01/05/24 12:13:18) (Detached)
# 1 Sockets in /run/screen/S-root.
그런데 로그아웃하면 스크린 세션도 함께 파괴됩니다.
루트(RootLoginPermit 사용)를 통해 동일한 시스템에서 동일한 작업을 수행하면 ssh
모든 것이 로그아웃 후에도 실행됩니다.
Ubuntu 20.04 및 22.04에서 동일한 작업을 테스트했습니다.
콘솔 세션을 통해 시작할 때 Ubuntu 20.04에서도 문제 없이 작동합니다.
하지만 Ubuntu 22.04나 콘솔에서는 작동하지 않습니다.
이는 Debian(bulseye 및 bookworm의 최신 업데이트로 테스트됨) 및 Ubuntu(22.04로 테스트됨)의 문제입니다.
KillUserProcesses=no
발견된 모든 솔루션은 기본적으로 확인되고 설정됩니다. 또한 동일한 동작으로 새로운 데비안 설치를 설치했습니다.
데비안과 우분투에서는 항상 동일한 화면 버전입니다Screen version 4.08.00 (GNU) 05-Feb-20
우분투
- Ubuntu 20.04에서 새로 설치
- 분리 모드에서 화면 실행
- 로그아웃했다가 다시 로그인하세요.
- 화면 프로세스가 여전히 존재합니다.
- Ubuntu 버전을 Ubuntu 22.04로 업그레이드
- 분리 모드에서 화면 실행
- 로그아웃했다가 다시 로그인하세요.
- 화면 프로세스가 종료되었습니다.
데비안
- Debian 10에서 새로 설치
- 분리 모드에서 화면 실행
- 로그아웃했다가 다시 로그인하세요.
- 화면 프로세스가 여전히 존재합니다.
- Debian 버전을 Debian 11로 업그레이드
- 분리 모드에서 화면 실행
- 로그아웃했다가 다시 로그인하세요.
- 화면 프로세스가 종료되었습니다.
그래서 현재로서는 제가 알지 못하는 몇 가지 중요한 변경 사항이 릴리스에 있습니다.