관련 URL 1 http://www.dreamy.pe.kr/zbxe/CodeClip/163218 
관련 URL 2  
관련 URL 3  
관련 URL 4  
소스코드  

1. 기능

Linux에서 새로운 User를 등록할 때 사용하는 명령어이다.


2. 사용법

# adduser [옵션] 계정명


3. 옵션

-c comment

/etc/passwd 파일의 comment 필드에 넣을 정보를 입력할 수 있다. 이 정보는 계정에 대한 개인 정보이다.

-d home_dir

유저의 로그인 디렉토리인 홈디렉토리를 변경한다. default로는 /home 디렉토리 아래에 일반계정의 홈디렉토리가 생성되는데 이 디렉토리를 다른 곳으로 지정하고자 할 때 사용되는 옵션이다.

-e expire_date

계정이 만료될 시기를 지정하면서 계정을 생성한다. 계정 만료 시기는 YYYY-MM-DD 형식으로 지정한다.

-g initial_group

기본적으로 계정을 생성하면 그와 똑 같은 그룹 명으로 그룹이 생성되고, 그 그룹에 속하게 된다. 예를 들어 linuxone이라는 계정을 생성하면 linuxone이라는 그룹도 같이 생성되고, linuxone 유저는 linuxone 그룹에 속하게 되는 것이다. 그런데, 이 정보를 변경하여, 로그인 그룹을 바꾸고자 하는 경우 이 옵션을 사용한다. xg 옵션에는 그룹명이 아닌 GID 값을 인자 값으로 사용한다.

--conf FILE/etc/adduser.conf 대신 FILE을 설정파일로 사용한다.--disabled-login패스워드 없이 계정이 생성된다. 패스워드가 설정되기 전까지는 계정이 활성화 되지 않는다.--disabled-password--disable-login과 비슷하지만, SSH(:12) RSA(:12) 키등을 이용한 로그인은 가능하다.--force-badname기본적으로 이름을 만들때 유저와 그룹이름은 설정파일의 NAME_REGEX의 정규표현(:12)규칙을 체크한다. 이 옵션을 사용하면, 설정파일의 이름규칙 체크를 하지 않게 된다. 단지 최소한의 이름체크만 한다.--gid ID그룹을 생성할때, GID를 ID로 지정한다.--home DIR유저의 홈 디렉토리를 DIR로 설정한다. 이 옵션을 사용하지 않을 경우 설정파일에 정의된 경로를 홈디렉토리로 한다.--shell SHELL유저가 사용할 shell(:12)을 SHELL로 설정한다. 이 옵션을 사용하지 않을 경우 설정파일에 정의된 shell(:12)를 유저 쉘로 사용한다.--ingroup GROUP새로운 유저를 추가하면, 유저는 동일한 이름의 그룹에 포함된다. 이 옵션을 사용하면 GROUP그룹에 포함되도록 강제할 수 있다.--no-create-home홈디렉토리를 생성하지 않는다.--system시스템 유저 혹은 시스템 그룹을 생성한다.--uid ID사용자 UID를 설정에 지정된 범위가 아닌 ID로 강제 지정한다.--firstuid ID사용자 UID의 시작 범위를 지정--lastuid ID사용자 UID의 마지막 범위를 지정. 유저를 추가하게 되면 firstuid 와 lastuid 범위 사이에서 UID가 결정된다.--version버전정보를 출력한다.

4. Help 사용법
root@gitvm:~# adduser --helpadduser [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID][--firstuid ID] [--lastuid ID] [--gecos GECOS] [--ingroup GROUP | --gid ID][--disabled-password] [--disabled-login] [--encrypt-home] USERAdd a normal user
adduser --system [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID][--gecos GECOS] [--group | --ingroup GROUP | --gid ID] [--disabled-password][--disabled-login] USERAdd a system user
adduser --group [--gid ID] GROUPaddgroup [--gid ID] GROUPAdd a user group
addgroup --system [--gid ID] GROUPAdd a system group
adduser USER GROUPAdd an existing user to an existing group
general options:--quiet | -q don't give process information to stdout--force-badname allow usernames which do not match theNAME_REGEX[_SYSTEM] configuration variable--help | -h usage message--version | -v version number and copyright--conf | -c FILE use FILE as configuration file




계정 생성

useradd test


          test 라는 계정을 생성
passwd test
          test 계정의 비밀번호 변경
useradd [Option] test
          -c comment : 사용자 이름 또는 정보
          -d home_directory : 사용자 계정 홈 디렉토리
          -e expire_date : 사용자 계정 유효 기간
          -f inactive_time : 비활성 기간
          -g initial_group : 기본 그룹
          -G grout : 다음 그룹
          -s shell : 기본 로그인 셀
          -u uid : 사용자 계정 uid 

계정 변경

usermod [Option] test
          -c comment : 사용자 이름 또는 정보
          -d home_directory : 사용자 계정 홈 디렉토리
          -e expire_date : 사용자 계정 유효 기간
          -f inactive_time : 비활성 기간
          -g initial_group : 기본 그룹
          -G grout : 다음 그룹
          -s shell : 기본 로그인 셀
          -u uid : 사용자 계정 uid

$ adduser --force-badname [계정]

 

$ sudo smbpasswd -a [계정]
New SMB password: [비밀번호]
Retype new SMB password: [비밀번호]


*사용자 계정 삭제


$userdel -r -f [계정]

-f : 강제 삭제 

-r : 계정 생성시의 모든 정보 삭제


*계정 목록 보기


cat /etc/passwd

또는

cut -f1 -d: /etc/passwd