애플리케이션을 실행하려고 합니다.체계내부 서비스화면컨테이너.
서비스를 시작하려고 하면 다음 오류 메시지와 함께 실패합니다.
screen[11648]: Directory '/run/screen' must have mode 777.
단순한 실수처럼 보이지만 간단한 해결책이 있습니다. 이에 따라 권한을 변경하면 /run/screen
서비스가 문제없이 시작됩니다.
하지만 이제 스크린 세션을 연결하려고 하면(또는 screen
일반 사용자나 루트로 어떤 방식으로든 실행하려고 하면) 오류 메시지가 나타납니다.
Directory '/run/screen' must have mode 775.
권한을 변경하면 분명히 첫 번째 오류로 돌아가게 되었고 거기에서 하루 종일 화면에서 고양이와 쥐 놀이를 할 수 있었습니다.
Screen version 4.05.00 (GNU) 10-Dec-16
운영 체제는데비안 9(섬기는 사람).
이것은 버그인가요, 아니면 제가 뭔가 잘못하고 있는 건가요? 어쨌든, 어떻게 작동하게 만들 수 있나요?
답변1
데비안 9에서 systemd로 마인크래프트 서버를 설정하려고 할 때도 같은 문제가 발생했습니다. 내가 아는 한 수정 사항은 없지만 여기에 부분적인 해결 방법이 있습니다. 장치 구성 파일에 다음 줄을 추가했습니다.
PermissionsStartOnly=true
ExecStartPre=/bin/chmod 777 /run/screen
따라서 서비스를 시작하는 데 필요한 권한을 기준으로 권한이 조정됩니다. 화면을 직접 사용해야 할 때마다 권한을 다시 775로 설정할 수 있습니다.
답변2
NoNewPrivileges=true
로 변경합니다 NoNewPrivileges=false
(섹션에 없으면 줄을 추가합니다 [Service]
). 이렇게 하면 화면이 평소와 같이 setgid 모드에서 실행될 수 있으므로 777 권한을 요청하지 않습니다.