UNIX 사용자가 속한 그룹을 어떻게 나열합니까?


79

pts m groupnameI 그룹에서 사용자를 나열 할 수 있습니다. 반대의 방법, 즉 사용자가 속한 모든 그룹을 나열하려면 어떻게해야합니까?

(구성원 인 사용자를 알고 있지만 그룹 이름을 모르는 그룹의 이름을 찾으려면이 이름이 필요합니다 ...)

설명 :
이 질문은 시스템 관리자가 아니며 루트 권한이 없기 때문에 복잡합니다. 대신, 나는 시스템의 작은 부분을 관리하는 "변조 자"그룹의 일원입니다. 구체적으로 말하자면, 대학의 중앙 IT 시스템에서 학생회 물리학과입니다.

지점 내에는 업무를 담당하는 사람들을위한 다양한 액세스 그룹이 있습니다. 이 경우, 무언가를 담당하는 두 사람 중 한 명 (무엇이 중요하지 않은지)이 교체되었으며, 다른 사용자에게 어떤 교체 권한을 부여해야하는지 조사하려고했습니다.

이제 폴더를 검사하여 액세스 권한이있는 사용자를 확인하고 목록에서 그룹을 선택하여 즉각적인 문제 (새 사용자가 폴더에 액세스 할 수 없음)를 해결할 수있었습니다. 그러나이 사용자가 알아야 할 더 많은 권한이있을 수 있으므로 문제는 아직 심각하지는 않지만 여전히 관련이 있습니다.

답변:


105

다음 groups명령을 사용할 수도 있습니다 .

[root @ ftp ~] # 개의 그룹 루트
root : 루트 빈 데몬 sys adm 디스크 휠

다른 모든 것이 실패하면 좋은 것도 있습니다 grep.

[root @ ftp ~] # grep 루트 / etc / group
루트 : x : 0 : 루트
빈 : x : 1 : 루트, 빈, 데몬
데몬 : x : 2 : 루트, 빈, 데몬
sys : x : 3 : 루트, 빈, adm
adm : x : 4 : 루트, adm, 데몬
디스크 : x : 6 : 루트
휠 : x : 10 : 루트, 관리자

1
grep ^root: /etc/group더 좋을 수도 있습니다.
Dennis Williamson

아니 그것은 루트 그룹 중 하나를 나열하지 않기 때문에 루트가 조금 더
어색한 멤버

3
/ etc / group을 검사하는 것은 좋지만 시스템에서 중앙 디렉토리 (NIS, LDAP, ActiveDirectory,?)를 사용하는 경우 전체 그룹 목록을 찾을 수 없습니다. 해당 파일에는 로컬 그룹 정의 만 있습니다.
Slartibartfast

이 사용자는이라는 그룹의 구성원임을 알고 있지만 명령 groups kcz은 나에게만 제공 됩니다. 없어진 물건 있어요? usrfkm
Tomas Aschan

확실하지 않으면 /etc/group@Tomas를 pastebin하십시오 .
John T

28
$ id [username]

" $: Command not found".
Tomas Aschan

8
$명령 프롬프트를 나타냅니다. 로 입력을 시작하십시오 id.
coneslayer

아직도 나에게 많은 것을주지 않는다 :uid=[five digits](kcz) gid=30(usr)
Tomas Aschan

그것은 uid = gid = groups =를 보여주고 있습니다. 그래서 내가 얻는 세 번째 것은 사용자가 속한 그룹의 목록입니다.
MKJ

6

그것을 나중에 발견했다 – 그러나 나는했다! =)

그냥

$>pts m [group name]

그룹의 모든 구성원을 나열하고

$>pts m [user name]

사용자가 속한 모든 그룹을 나열합니다. 너무 간단했다 : P


3
pts는 표준 명령이 아닙니다.
user2284570

1
@ user2284570 : 아마도 아닙니다. 그러나이 질문에 관한 것이 질문에 명확하게 언급되어 있습니다 (실제로 가장 중요한 것은 구문 강조 표시) pts.
Tomas Aschan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.