IT

useradd

by 모아레 posted Oct 09, 2009
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄

http://www.linux.co.kr/home/lecture/index.php?cateNo=&secNo=&theNo=&leccode=217

 

useradd -D

http://www.linux.co.kr/home2/board/bbs/board.php?bo_table=lecture&wr_id=1359&sca=1&sca2=32

 

새로운 사용자를 생성할때 사용하는 명령어이다.
계정사용자를 생성할 수도 있고, 메일사용자를 생성할 수도 있다.
용도에 맞는 원하는 계정을 생성할때 사용하는 명령어이다.

또한 이 명령어는 "useradd -D"명령어와 반드시 함께 알아두기 바란다. (강추)

계정을 생성하는 관리자용 명령어이므로 일반사용자들은 사용하지 않는 명령어이다.

또한 리눅스에서 useradd와 adduser명령어가 어떻게 다르냐고 질문하시는 분들이 있다.
다음의 사실을 명확하게 확인하기 바란다.

[root@host3 root]# ls -l /usr/sbin/adduser
lrwxrwxrwx    1 root     root            7  8월 28 02:29 /usr/sbin/adduser -> useradd
[root@host3 root]#

즉, adduser명령어는 useradd명령어로 링크되어 있는 것에 불과하다.
따라서 실제로 adduser명령어와 useradd명령어는 완전히 동일하다고 보면 된다.
앞으로 이런 문제로 고민하는 일이 없기를 바라면서...

서버관리자가 해야하는 계정생성 관련업무에는 다음과 같은 것들이 있다.

  - /etc/passwd 파일에 사용자의 계정(ID 및 패스워드)생성
 - /etc/shadow 파일에 계정 패스워드 등록
 - /etc/group파일에 사용자의 그룹생성
 - /home에 사용자의 홈디렉토리 생성
 - FTP사용을 위한 FTP사용 환경설정
 - 메일사용을 위한 메일환경설정
 - 사용자의 로그인정보 및 환경설정
 - 사용자의 디렉토리 및 파일 소유권 변경 및 확인
 - DB 사용을 위한 환경설정 및 응용프로그램사용을 위한 환경설정
 - 기타 응용 소프트웨어 사용을 위한 설정등

이외에도 여러가지 작업들이 있지만, 서버관리자는 새로운 계정사용자가 생성이 되면 기본적으로 위와
 같은 작업을 해야한다.

이런 업무중에 계정생성에 관련된 작업을 useradd를 이용하여 작업한다.


사용형식

       useradd [-c comment] [-d home_dir]
               [-e expire_date] [-f inactive_time]
               [-g initial_group] [-G group[,...]]
               [-m [-k skeleton_dir] | -M] [-p passwd]
               [-s shell] [-u uid [ -o]] [-n] [-r] login

 

사용예 #1

useradd로 간단히 계정을 생성하는 예를 보았으므로 이번에는 좀 더 다양한 옵션사용의 예를 보도록 하자.

sspark1이라는 계정사용자를 다음과 같이 새로 생성하였다.

[root@host3 root]# useradd -d /home/sspark1 -u 600 -s /bin/csh sspark1
[root@host3 root]#

즉, 홈디렉토리위치를 /home/sspark1로 지정하였고, UID를 600으로 지정하였으며, 기본사용쉘을 C Shell로 지정하였다.
다음은 결과를 확인하 것이다.

[root@host3 root]# grep sspark1 /etc/passwd
sspark1:x:600:600::/home/sspark1:/bin/csh
[root@host3 root]#

[root@host3 root]# grep sspark1 /etc/group
sspark1:x:600:
[root@host3 root]#
[root@host3 root]# ls -al /home/sspark1
합계 32
drwx------    3 sspark1  sspark1      4096  9월 19 11:46 .
drwxr-xr-x    8 root     root         4096  9월 19 11:46 ..
-rw-r--r--    1 sspark1  sspark1        24  9월 19 11:46 .bash_logout
-rw-r--r--    1 sspark1  sspark1       191  9월 19 11:46 .bash_profile
-rw-r--r--    1 sspark1  sspark1       124  9월 19 11:46 .bashrc
-rw-r--r--    1 sspark1  sspark1       854  9월 19 11:46 .emacs
-rw-r--r--    1 sspark1  sspark1       120  9월 19 11:46 .gtkrc
drwxr-xr-x    3 sspark1  sspark1      4096  9월 19 11:46 .kde
[root@host3 root]#

이렇게 옵션을 직접 지정하면 기본설정값에 우선하여 생성이 됨을 알아두기 바란다.


사용예 #2

다음의 예는 좀 더 다양한 옵션을 사용하여 계정을 생성한 예이다.

[root@host3 root]# useradd -c 박성수 -e 2004-12-12 -d /home/sspark2 -u 601 -s /bin/ksh -p 12345 sspark2
[root@host3 root]#

위에서 사용한 옵션을 간단히 설명하면 다음과 같다.

 . -c 박성수        : 계정사용자의 간단한 설명
 . -e 2004-12-12    : 계정사용 종료일자
 . -d /home/sspark2 : 홈디렉토리 위치
 . -u 601           : UID 601로 지정
 . -s /bin/ksh      : 사용할 기본쉘을 Korn Shell로 지정
 . -p 12345    : 패스워드를 12345로 지정
 . sspark2     : 생성할 계정명

위와 같이 지정한 다음 생성된 내용을 간단히 확인한 것이다.

[root@host3 root]# grep sspark2 /etc/passwd
sspark2:x:601:601:박성수:/home/sspark2:/bin/ksh
[root@host3 root]#
[root@host3 root]# grep sspark2 /etc/shadow
sspark2:12345:12314:0:99999:7::12764:
[root@host3 root]#
[root@host3 root]# grep sspark2 /etc/group
sspark2:x:601:
[root@host3 root]#


이상과 같이 다양한 옵션을 사용하여 useradd를 사용할 수 있음을 알 수 있을 것이다.

위에서도 말씀드렸지만 useradd명령과 함께 "useradd -D"명령도 추가적으로 알아두기 바란다.