2 minute read

useradd

시스템에 계정을 생성하는 명령어 입니다.

지정된 옵션이 없으면 /etc/default/useradd 파일의 설정을 디폴트로 참고합니다.

useradd 명령어로 기본 설정도 수정할 수 있습니다. (-D, default, 하단의 default 설명 참고)

useradd [options] LOGIN
useradd -D
useradd -D [options]

참고 : man useradd

홈 디렉토리 관련 옵션

유저 생성시 디렉토리 생성 여부를 선택할 수 있습니다. (-m 옵션 사용) 기본 동작은 /etc/login.defs 파일의 CREATE_HOME 필드 값에 따라 동작하지만 (enable/no), 커맨드 옵션 설정이 우선시됩니다.

홈 디렉토리 생성시 미리 정의된 구조를 복제해서 생성할 수 있습니다. (-mk 옵션 사용)

사전에 존재하는 디렉토리를 홈으로 지정할 수 있습니다 (-d로 경로 지정)

홈 디렉토리를 /home/ 하위 경로 디렉토리로 싶지 않다면 경로를 변경할 수 있습니다. (-b로 지정)

주요 옵션 내용
   
-m, –create-home home_dir 를 새로 생성하는 옵션.
-k 옵션과 함께 사용해 디렉토리 구성을 참조할 skeletone_dir 경로를 명시해야함.
-m 옵션이 없고 CREATE_HOME이 no 이면 홈디렉토리가 생성되지 않습니다.
-k, –skel SKEL-DIR -m와 함께만 사용되는 옵션. skeletone_dir 경로 지정.
기본값은 /etc/default/useraddSKEL 필드 값이나 /etc/skel
-d, –home-dir HOME-DIR 원래 존재하는 디렉토리를 홈으로 지정하는 옵션. HOME_DIR 경로에 디렉토리가 없으면 에러가 발생하기 때문에 폴더를 생성하는 -m 옵션을 사용해야 합니다.
기본값은 BASE_DIR에 LOGIN name을 합쳐 login directory name으로 사용합니다.
-b, –base-dir BASE-DIR 홈 디렉토리를 생성할 상위 디렉토리를 지정하는
옵션. 홈 디렉토리를 새로 생성하지 않는 -d 와는 함께 사용되지 않습니다. -m도 없다면 꼭 필요합니다.
기본값은 /etc/default/useradd의 HOME 필드입니다.

UID 관련 옵션

유저 생성시 부여할 UID를 직접 지정할 수 있습니다. (-u)

중복되게 생성할 수도 있습니다. (-o)

주요 옵션 내용
-u, –uid uid 지정
-o 옵션과 함께 쓰면 unique하지 않아도됨.
-o, –non-unique UID를 중복 허용

GID 관련 옵션

유저의 primary group을 지정할 수 있습니다. (-g로 지정)

또는 유저와 같은 이름의 group을 생성해서 primary group로 지정할 수 있습니다. (-U 옵션 추가)

그룹을 디폴트 값으로 지정할 수 있습니다. (-N)

계정의 보조 그룹들을 지정할 수 있습니다. (-G)

주요 옵션 내용
-g, –gid GROUP 로그인시 적용될 그룹을 지정합니다. 기본값은 /etc/login.defsUSERGROUPS_ENAB와 커맨드 옵션 -U 여부에 따라 다르게 동작합니다.
yes이거나 -U, --user-group와 함께 사용 - 유저 이름과 같은 그룹이 생성되고 적용됩니다.
no 거나 -N, --no-user-group과 함께 사용 - /etc/default/useraddGROUP 필드 값을 적용합니다.
-U, –user-group 그룹값을 유저 이름과 동일하게 설정합니다.
-N, –no-user-group 그룹값을 /etc/default/useraddGROUP 필드를 참조해 지정합니다.
-G, –groups GROUP1[,GROUP2…] 보조 그룹들을 설정합니다. 각 그룹은 공백없이 ,로 구분됩니다.

기타 지정 옵션

주요 옵션 내용
-p, –password password 패스워드 지정
-c, –comment comment 코맨트 지정
-e, –expiredate EXPIRE-DATE 만기날짜 지정, 포맷은 YYYY-MM-DD.
empty string은 no expire를 의미.
-f EXPIRE-DATE 만기된 후 계정이 영원히(permanetly) 비활성화 하기까지의 일 수 지정.
0은 만기되자마자 비활성화.
-1 은 기능 비활성화.

default 관련 옵션

useradd -D 를 사용하면 /etc/default/useradd에 설정된 설정 디폴트 값을 표시합니다.

뒤에 옵션과 값을 추가하면 디폴트 값을 업데이트하고 /etc/default/useradd 파일을 수정합니다.

주요 옵션 내용
-b, –base-dir 기본 디렉토리 경로. 필드는 HOME
-g, –gid 기본 그룹. 필드는 GROUP.
-s, –shell 기본 쉘 지정 필드는 SHELL.
-e, –expireddate 계정 비밀번호가 만료될 날짜를 지정합니다. 필드는 EXPIRE.
-f, –inactive expired 되면 몇일 뒤에 계정을 사용할 수 없게할지 정합니다. 필드는 INACTIVE.

useradd는 기능이 많은 명령어입니다.

본 글에 기재되지 않은 내용도 많으니 한번쯤은 매뉴얼을 직접 확인하시는걸 추천드립니다.

Reference

die.net, useradd 매뉴얼 Red hat, user management

Tags:

Categories:

Updated:

Leave a comment