zsh 쉘을 열 때마다 다음 3줄이 출력됩니다.
compaudit:148: unknown group
compaudit:148: unknown group
compaudit:148: unknown group
명령 을 실행하면 compaudit
다음 줄이 출력됩니다.
compaudit:148: unknown group
이 문제는 손상된 /etc/group 파일과 관련이 있는 것 같습니다(관리 계정에서 sudo 권한을 잃게 되었지만 복구 모드를 사용하여 문제를 해결했습니다. 그러나 손상된 파일로 인해 많은 그룹 관련 문제가 발생했습니다). 수정하지 마세요). 예전에는 하드 드라이브에 시스템을 백업했는데 최근에 오류가 발생하여 교체하지 않았습니다.
이 문제를 해결할 수 있는 방법이 있나요? /etc/group 파일이 손상되었기 때문이라면 복원할 수 있는 방법이 있나요? 우분투 16.04를 사용하고 있습니다
답변1
다음은 오류 메시지 출력 예입니다.
$ echo *(g:nosuchgroup:)
zsh: unknown group
자신이 속한 그룹( nosuchgroup
이 경우에는 존재하지 않는 그룹)이 소유한 파일을 나열하려고 시도합니다.
이 compaudit
함수는 구성 요소의 권한과 소유권을 확인할 때 이와 같은 작업을 수행합니다 $fpath
.
예를 들어, Debian 파생 제품(예: Ubuntu)의 경우 어느 시점에서 전 세계적으로 확장되었습니다 ${^_i_ulwdirs}(Nf:g+ws:^g:staff:,f:o+w:,^u0)
.
Debian 기반 시스템에는 일반적으로 staff
그룹이 있지만 시스템이 /etc/group
손상되어 그룹이 없는 경우 이 오류 메시지가 표시됩니다.
staff
Linux Mint 18.3 시스템(Ubuntu 16.04 기반)에서 그룹 이름을 다른 이름으로 바꾸면 똑같은 오류 메시지가 나타납니다.
getent group staff
아무것도 반환되지 않으면 staff
그룹이 누락된 것으로 확인되며다시 덮다제대로 작동하지 않습니다.