리눅스 관리에 익숙하지 않기 때문에 다음 명령에 대해 약간 혼란스러워합니다.
useradd
usermod
groupadd
groupmod
Linux / Unix Administrator ‘s handbook에서 사용자 관리 책을 읽었으나 약간 흐릿합니다.
기본적으로 useradd
충분히 간단 해 보입니다.
useradd -c "David Hilbert" -d /home/math/hilbert -g faculty -G famous -m -s /bin/sh hilbert
username과 함께 “David Hilbert”를 추가 hilbert
하고 기본 디렉토리, 셸 및 그룹을 설정할 수 있습니다. 저는 이것이 -g
그의 기본 / 기본 그룹이고 -G
다른 그룹 이라고 생각합니다 .
다음은 내 다음 질문입니다.
- 이 명령은 여전히 작업 그룹겠습니까 경우
faculty
와는famous
존재하지 않았다? 그냥 만들까요? - 그렇지 않은 경우 새 그룹을 만드는 데 어떤 명령을 사용합니까?
- 사용자를 제거
hilbert
했는데 해당 그룹에 다른 사용자가없는 경우에도 계속 존재합니까? 제거해야합니까? useradd
위 의 명령을 실행 한 후famous
그룹 에서 David를 제거 하고hilbert
아직 존재하지 않는 기본 그룹을 다시 할당 하려면 어떻게해야 합니까?
답변
이 usermod
명령을 사용하면 사용자의 기본 그룹, 보충 그룹 또는 기타 여러 속성을 변경할 수 있습니다. -g
스위치는 기본 그룹을 제어합니다.
다른 질문들 …
-
스테이지
groupname
중에 존재하지 않는 그룹을 지정하면 다음과useradd
같은 오류가 발생합니다. useradd : unknown group groupname -
이
groupadd
명령은 새 그룹을 만듭니다. -
그룹에 포함 된 모든 사용자를 제거해도 그룹은 그대로 유지됩니다. 빈 그룹을 반드시 제거 할 필요는 없습니다.
-
hilbert
를 통해 그룹을 만듭니다groupadd hilbert
. 그런 다음을 사용하여 David의 기본 그룹을 이동하십시오usermod -g hilbert hilbert
. (첫 번째hilbert
는 그룹 이름이고 두 번째hilbert
는 사용자 이름입니다. 이는 다른 이름을 가진 그룹으로 사용자를 이동하는 경우에 중요합니다)
그래도 여기서 약간 복잡하게 만들 수 있습니다. 많은 Linux 배포판에서 단순 useradd hilbert
은 hilbert
기본 사용자 와 동일한 이름 의 사용자 및 그룹을 작성합니다 . -G
스위치를 사용하여 함께 지정된 보충 그룹을 추가 합니다.
답변
man usermod
다양한 옵션으로 어떤 일이 발생하는지 설명하는 것을 읽으십시오 .
usermod -g hilder hilder
‘hilder’그룹이 존재하는 한 로그인 그룹을 ‘faculty’에서 ‘hilder’로 바꿉니다. 존재하지 않는 경우 먼저 groupadd로 작성해야합니다.
이 -G
옵션 을 사용할 때이 옵션을 사용하여 -a
사용자 ‘hilder’가 속한 보조 그룹의 현재 목록에 새 그룹을 추가해야합니다. -a
옵션이 없으면 현재 보충 그룹을 새 그룹 세트로 교체합니다. 따라서 이것을 신중하게 사용하십시오.
답변
Linux에서 사용자의 기본 그룹을 변경하려면 다음을 수행하십시오.
usermod -g new_group user_name
- 모든 user_name 의 활성 세션을 종료 하십시오
변경 사항을 테스트 id
하고 실행 값을 확인하려면gid=
명령이 오류없이 실행되지만 gid가 변경되지 않은 경우 2 단계의 굵게 표시된 부분이 누락 된 것입니다.
답변
답변 # 1은 훌륭하지만 새 그룹을 추가하기 위해 다음을 발행하도록 선택할 수도 있습니다.
# nano /etc/group
/etc/group
직접 편집의 단점은 사용하지 않는 GID (그룹 ID 번호)를 제시해야한다는 것입니다.
다음은 사용자의 기본 그룹을 변경할 수있게합니다.
# nano /etc/passwd
사용자의 행을 찾아서 GID (그룹 번호, 조회 /etc/group
)를 변경하고 구문은 다음과 같습니다.
<name>:*:<UID>:<GID>:<comment>:<directory>:<shell>
나는이 방법을 생각할 수있는 단점 (당신이 GID를 알고 있으면이) 없다, 내가 자주 나는 각기 다른 다양한 UNIX 시스템을 사용하는 주로하기 때문에, 로컬 사용자를 위해 사용하는 것입니다 usermod
, adduser
및 useradd
명령 옵션.
좀 더 수동이지만 작업을 수행합니다. 알고있는 경우 vi
iso nano
를 사용 하여 파일을 편집 할 수 있습니다 vi
.
답변
사용자의 기본 그룹을 영구적으로 변경하려면 다음을 실행하십시오.
- usermod -g groupname username 명령
또는 newgrp
소규모 환경 및 임시 상황에 사용할 수 있습니다 .
새 사용자 bob 및 새 그룹을 작성하십시오 dodo
.
useradd bob
RedHat / Centos에는 UID = (ID_number) bob; 기본적으로 GID = (ID_number) bob을 기본 그룹으로
groupadd dodo
사용자 bob을 dodo
그룹에 추가하십시오 .
usermod -aG dodo bob -make sure to use "a"
다음으로 newgrp
소유권을 변경 하는 데 사용하십시오 .
newgrp dodo
귀하의 계정이 비밀번호를 갖고 향후 기본 그룹의 구성원이되도록주의하십시오. 그리고 newgrp은 새로운 쉘을 엽니 다. 사용자가 해당 셸에 머무르면 기본 그룹은 변경되지 않습니다. 기본 그룹을 원래 그룹으로 다시 전환하려면 exit 명령을 실행하여 새 셸을 그대로 둘 수 있습니다.