systemctl status <servicename>.service
새로 설치된 서비스를 수동으로 중지한 후 실행할 때 이 경고가 표시됩니다.
"경고: 권한이 부족하여 일부 로그 파일이 열리지 않습니다."
로그 파일은 무엇을 의미합니까? 그것은 무엇을 가리키는가?
답변1
tl;dr: 사용 sudo systemctl status ...
.
를 사용하면 systemctl
프록시를 사용하여 systemd
루트 프로세스와 통신하게 됩니다. systemd
당신에게 답장을 보낼 수도 있지만, 당신이 허락하지 않는 한 전체 내용을 말해주지는 않습니다.
그 중 일부는 systemctl status
해당 단원에 대한 최신 일지 항목을 표시합니다.
내 설정에서 파일에는 /var/log/journal/{machine-id}/*.journal
다음과 같은 권한이 있습니다.
-rw-r-----+ 1 root systemd-journal 117440512 Jun 28 08:02 [email protected]~
-rw-r-----+ 1 root systemd-journal 92274688 May 31 08:21 system@70d66b763a2e48928c16fc2c8a23fbfa-0000000000000001-0005e0363468a504.journal
-rw-r-----+ 1 root systemd-journal 50331648 Jun 2 12:05 system@70d66b763a2e48928c16fc2c8a23fbfa-000000000001a077-0005e048c99c4a31.journal
이는 root
구성원이 systemd-journal
로그 파일을 직접 읽을 수 있음을 의미합니다. +
추가 권한(ACL)도 설정되었음을 나타냅니다 .
$ getfacl [email protected]
...
group:adm:r-x #effective:r--
...
이는 그룹의 모든 사람에게도 adm
읽기 액세스 권한이 있음을 의미합니다.
systemd
이는 저널에 대한 정보를 알려달라고 요청할 때 고려됩니다. 귀하가 systemd-journal
그룹에 속하지 않거나 adm
로그 가 귀하의 버스에 속하는지 또는 특정 항목에 대한 권한을 부여하는 특정 규칙이 있는지 systemd
확인하기 위해 로그를 검사합니다 . 그것은 단지 당신이 알도록 허용된 것만을 알려줄 뿐입니다.--user
polkit
sudo systemctl status
가장 간단한 대답은 효과적으로 be를 사용한 root
다음 systemctl
해당 정보를 요청하는 것입니다.
답변2
위의 의견에서 @Quolonel 질문이 제안했듯이 가장 좋은(그리고 확실히 가장 쉬운) 방법은 아마도 사용자가 그룹에 속해 있는지 확인하는 것입니다 adm
. 내 Ubuntu 시스템에서는 다음과 같이 달성할 수 있습니다.
sudo usermod -G adm <myuser>
사용자 세션에서 로그아웃했다가 다시 로그인하면 별도의 절차 없이 정보에 액세스할 수 있습니다 sudo
.