매뉴얼 페이지가 더 이상 렌더링되지 않음 - 많은 호출기/vimpager 관련 "권한 거부" 오류

매뉴얼 페이지가 더 이상 렌더링되지 않음 - 많은 호출기/vimpager 관련 "권한 거부" 오류

알 수 없는 이유로 지난 이틀 동안 "man" 명령이 Linux 서버(Ubuntu 18.04)에서 작동을 멈췄습니다. 실행하려고 하면 man <anything>vi의 빈 인스턴스가 표시됩니다(아마도 백그라운드에서 vimpager를 사용하기 때문일 것입니다)... vim 인스턴스를 종료하자마자 콘솔에 다음 오류가 표시됩니다.

lwobker@lwobker-vms:~$ man ls
cat: /tmp/vimpager_4620/cols: Permission denied
cat: /tmp/vimpager_4620/lines: Permission denied
head: cannot open '/tmp/vimpager_4620/stdin' for reading: Permission denied
sed: can't read /tmp/vimpager_4620/stdin: Permission denied
mv: cannot move '/tmp/vimpager_4620/stdin.work' to '/tmp/vimpager_4620/stdin': Permission denied
cat: /tmp/vimpager_4620/stdin: Permission denied
/usr/bin/pager: 242: /usr/bin/pager: cannot open /tmp/vimpager_4620/stdin: Permission denied
/usr/bin/pager: 239: [: Illegal number: 

이는 "일반" 사용자로 실행하는지, "일반" 사용자로 실행하는지, sudo man <anything>또는 이런 방식으로 실행하는지 에 관계없이 발생합니다.sudo bash

분명히 어딘가에 권한 문제가 있지만 알아낼 수 있다면 망할 것입니다. 오류 메시지에 언급된 모든 /tmp 디렉토리가 존재하고 읽기 권한이 설정되어 있으므로 이러한 모든 명령이 왜 불평하는지 잘 모르겠습니다.

lwobker@lwobker-vms:/tmp$ ll vimpager_4234/
total 60
drwx------  2 lwobker lwobker  4096 Nov  8 10:47 ./
drwxrwxrwt 24 root    root    40960 Nov  8 10:56 ../
-rw-r--r--  1 lwobker lwobker    11 Nov  8 10:47 1.vim
-rw-r--r--  1 lwobker lwobker  9664 Nov  8 10:47 stdin
-rw-r--r--  1 lwobker lwobker     0 Nov  8 10:47 stdin.work

답변1

어떻게 든 밝혀졌습니다아파모어실행 파일의 구성 파일이 /usr/bin/man손상되었거나 구성 파일의 다른 버전으로 덮어쓰여졌습니다. 따라서 경고는 permission denied파일 시스템 권한 확인이 아닌 의류에서 발생합니다.

시스템 로그를 확인하면 다음과 같은 수많은 메시지가 표시됩니다.

audit: type=1400 audit(1541703091.843:4554): apparmor="DENIED" operation="ptrace" profile="/usr/bin/man" pid=8777 comm="ps" requested_mask="trace" denied_mask="trace" peer="/usr/bin/man"

해결책은 내가 몰랐던 멋진 도구였습니다.AA-로그프로프, 기본적으로 의류 오류에 대한 시스템 로그를 구문 분석하고 권한을 수정하기 위해 의류 프로필을 조정할지 (대화식으로) 묻습니다.

관련 정보