먼저 다음을 사용하여 그룹을 나열했습니다.
groups
다음을 사용하여 그룹을 추가합니다.
groupadd -g 300 oinstall
groupadd –g 500 dba
그럼 내가 할 때
groups
root bin daemon sys adm disk wheel sfcb
내가 추가한 그룹을 찾을 수 없습니다. 그룹 ID로 그룹을 나열하는 방법은 무엇입니까? 그리고 다시 추가하려고 하면 이미 존재하는 그룹이라고 나옵니다.
답변1
이 groups
명령은 시스템에서 사용 가능한 모든 그룹이 아니라 사용자가 현재 속한 그룹을 나열합니다. 이 명령을 사용하여 이름 또는 gid로 그룹을 찾을 수 있습니다 getent
.
getent group oinstall
getent group 500
모든 그룹을 표시하려면 다음 명령어에서 검색어를 삭제하세요.
getent group
답변2
다음을 사용하여 그룹을 나열할 수 있습니다. getent
존재하지 않는 경우 확인하세요./etc/group
명령을 실행하면 GID는 출력의 세 번째 값입니다. 예를 들면 다음과 같습니다.
$ getent group
man:x:15:
audio:x:63:
nobody:x:99:
users:x:100:
<--snipped-->
utmp:x:22:
따라서 그룹 이름과 해당 GID만 나열하려면 awk
다음과 같이 필수 열을 인쇄하세요.
$ getent group | awk -F ":" '{ print $1,$3 }'
man 15
audio 63
nobody 99
users 100
<--snipped-->
utmp 22
당신은 또한 볼 수 있습니다http://man7.org/linux/man-pages/man1/getent.1.html
getent
부재시.
$ grep $group /etc/group
GID는 출력의 세 번째 값입니다. 예를 들어
$ grep users /etc/group
users:x:100:
위에서 그룹 사용자의 GID는 100입니다. 그룹 이름과 GID만 얻으려면 다음과 같이 awk 및 grep을 사용할 수 있습니다.
$ cat /etc/group | awk -F ":" '{ print $1,$3 }'
man 15
audio 63
nobody 99
users 100
<--snipped-->
utmp 22
외부 인증(예: LDAP)을 사용하도록 설정된 시스템의 경우 모든 그룹이 /etc/group 파일에 표시되지 않습니다. 당신은 또한 볼 수 있습니다http://www.cyberciti.biz/faq/understanding-etcgroup-file/