리눅스파워강좌. useradd –D 편
작성자 정보
- 웹관리자 작성
- 작성일
컨텐츠 정보
- 8,428 조회
- 0 추천
- 목록
본문
리눅스파워강좌. useradd –D 편<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
------------------- 목 차 ------------------
1 : useradd의 환경을 설정하는 “useradd -D”개론
2 : useradd의 실행환경 확인하기
3 : “useradd -D”는 /etc/default/useradd파일의 값을 변경한다.
4 : useradd로 새로생성되는 계정이 기본적으로 사용할 쉘 지정하기
5 : useradd로 새로생성되는 계정이 기본적으로 사용할 그룹 지정하기
6 : useradd로 새로 생성되는 사용자의 사용종료일 지정하기
7 : “useradd -D”로 변경된 값이 실제로 적용되는 예보기
ㅇ 제작자 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 <?xml:namespace prefix = st2 ns = "urn:schemas-microsoft-com:office:smarttags" /><?xml:namespace prefix = st1 ns = "urn:schemas:contacts" />박성수
ㅇ 본강좌의 자세한 정보 : http://www.superuser.co.kr/linuxcommandbible/ |
1 : useradd의 환경을 설정하는 “useradd -D”개론
이 명령어는 useradd 명령어의 일부분입니다. 하지만 필자가 useradd명령어와 "useradd -D"명령어를 굳이 구분하여 별도로 설명을 하는 것은 두명령어의 용도에 분명한 차이가 있기 때문이며, 구분하여 알고 있는 것이 실무적인 관점에서 더 큰 도움이 되기 때문입니다.
useradd -D 명령어는 useradd의 기본환경을 설정하는 명령어입니다.
즉, useradd로 생성되는 기본 홈디렉토리의 위치를 변경하거나, 기본그룹을 설정하거나, 기본유효일자를 지정하거나, 기본사용쉘을 지정하는 등의 설정을 할 수 있습니다.
즉, "useradd -D"는 useradd의 실행으로 설정되는 기본값들을 설정하는 명령어라고 할 수 있습니다.
파일의 관점에서 구체적으로 설명하자면, useradd가 실행될 때 홈디렉토리의 위치, 기본사용쉘, 기본그룹지정등의 설정을 하게 되는데 이 설정값이 /etc/default/useradd 라는 파일에 저장이 되어 있습니다. 즉, 결론적으로 "useradd -D"는 이 파일의 값을 변경하여 useradd의 기본설정값이 바뀌도록 합니다.
사용형식
useradd -D [-g 기본그룹] [-b 기본홈디렉토리] [-f default_inactive]
[-e 기본계정종료일] [-s 기본사용쉘]
2 : useradd의 실행환경 확인하기
먼저 아무런 옵션없이 "useradd -D"라고만 하면 현재 설정된 값들을 보여줍니다. 즉, useradd가 실행되었을 때에 “useradd -D”의 결과로 확인되는 결과에 준하여 생성됩니다. 아래 결과를 보십시요.
[root@host3 root]# useradd -D |
이 결과는 /etc/default/useradd의 내용과 동일한 내용입니다. 즉, "useradd -D"는 /etc/default/useradd"의 설정값을 바꾸는 역할을 합니다.
이 결과의 의미를 몇가지 말씀드린다면useradd로 새로운 계정이 생성되면 생성되는 사용자의 홈디렉토리는 /home내에 생성되며, 기본사용쉘은 /bin/bash이며 /etc/skel에 위치한 초기화파일들이 새로 생성되는 사용자의 홈디렉토리에 복사된다는 것등을 의미하고 있습니다.
3 : “useradd -D”는 /etc/default/useradd파일의 값을 변경한다.
"useradd -D"는 /etc/default/useradd 파일의 값을 변경하므로 먼저 /etc/default/useradd파일의 내용부터 살펴 보겠습니다. 앞서도 말씀드렸지만 "useradd -D"는 이 파일의 내용을 변경하여 useradd의 기본설정값이 바뀌도록 합니다.
먼저 /etc/default/useradd파일의 기본 내용입니다.
[root@host3 default]# cat /etc/default/useradd |
위에서 홈디렉토리의 기본위치가 /home으로 되어 있습니다. 이를 /usr로 변경하려면 다음과 같이 하면 됩니다.
[root@host3 default]# useradd -D -b /usr |
변경한 다음 아래와 같이 변경된 내용을 확인한 것입니다.
[root@host3 default]# cat /etc/default/useradd |
이렇게 변경이 된 후에는 useradd로 새로 생성되는 사용자(ID)들의 홈디렉토리는 /home/ID가 아니라 /usr/ID가 됩니다. 즉, sspark5라는 계정사용자가 useradd에 의해 생성이 되면(useradd sspark5), sspark5의 홈디렉토리는 /usr/sspark5가 됩니다.
4 : useradd로 새로생성되는 계정이 기본적으로 사용할 쉘 지정하기
useradd명령어로 새로운 사용자가 생성되면 기본적으로 사용하는 쉘은 /bin/bash입니다. 이는 리눅스 설치초기환경으로서 기본사항입니다. 하지만 useradd로 생성되는 모든 사용자들이 기본으로 사용할 쉘을 다른 쉘로 지정하고자 하신다면 다음과 같이 하면 됩니다. .
즉, useradd로 생성되는 새로운 사용자가 기본적으로 사용할 쉘을 지정하시려면 아래의 예처럼 “useradd -D”에 -s옵션을 사용하여 지정하시기 바랍니다.
[root@host3 default]# useradd -D -s /bin/csh |
즉, 위의 예는 useradd로 생성되는 새로운 사용자의 기본쉘을 /bin/csh로 지정한 것입니다. 다음은 실행하고 난 후에 변경된 내용을 확인한 것입니다.
[root@host3 default]# cat /etc/default/useradd |
기본 사용쉘이 /bin/bash에서 /bin/csh로 변경된 것을 확인하기 바랍니다. 이후부터는 useradd로 새롭게 생성되는 모든 계정들의 기본사용쉘은 /bin/csh가 됩니다.
5 : useradd로 새로생성되는 계정이 기본적으로 사용할 그룹 지정하기
리눅스에서 새로 생성되는 사용자들은 기본적으로 GID가 100인 users라는 그룹에 자동소속됩니다. 하지만, “useradd -D”에 -g옵션을 사용하여 GID를 지정하면 useradd로 생성되는 새로운 계정들의 소속될 초기그룹(initial group)을 변경하게 됩니다.
[root@host3 default]# useradd -D -g 500 |
다음은 변경된 내용을 확인한 것입니다. 주의하실 것은 위에서 지정한 500이라는 GID는 반드시 존재하는 GID여야합니다.
위의 변경된 결과를 확인하기 위하여 아래와 같이 /etc/default/useradd파일을 확인하셔도 되지만 “useradd -D”로 확인하셔도 변경된 결과를 동일하게 확인할 수 있습니다.
[root@host3 default]# cat /etc/default/useradd |
위의 결과에서 기본그룹의 GROUP값이 100에서 500으로 변경된 것을 볼 수 있습니다.
6 : useradd로 새로 생성되는 사용자의 사용종료일 지정하기
다음은 계정사용 종료일을 지정하는 예 입니다. 아래와 같이 "useradd -D"명령어에 -e옵션을 사용하여 "YYYY-MM-DD"형식으로 날짜를 입력하면 useradd로 새로 생성되는 사용자의 계정 사용종료일을 지정할 수 있습니다.
[root@host3 default]# useradd -D -e 2007-12-30 |
즉, 위의 명령 이후 부터는 useradd로 새로 생성되는 사용자들은 모두 2007년 12월 30일까지만 계정을 사용할 수 있습니다. 다음은 위의 결과를 확인한 것입니다.
[root@host3 default]# cat /etc/default/useradd |
위의 결과를 보면 EXPIRE값이 "2007-12-30"으로 변경되어 있음을 알 수 있습니다. 이후로 생성되는 모든 계정들은 계정 사용종료일이 2007년 12월 30일까지로 설정됩니다. 참고로 “useradd -D”의 결과로도 동일한 값을 확인할 수 있습니다.
7 : “useradd -D”로 변경된 값이 실제로 적용되는 예보기
이번에는 지금까지 설정했던(useradd -D) 값들이 적용되는 것을 확인하기 위하여 useradd의 예를 보도록 하겠습니다. 즉, 이번 예는 지금까지의 설정(usreadd -D로 설정하였던 값)을 그대로 사용하는 것이므로 앞의 예와 함께 보셔야합니다. 다음과 같이 sspark5라는 계정을 useradd로 만들어 보겠습니다.
[root@host3 default]# useradd sspark5 |
sspark5의 /etc/passwd내에 설정된 값입니다. 여기서 확인할 수 있는 바와 같이 UID와 GID, 홈디렉토리의 위치가 "/usr/sspark5"로 설정되었으며, 기본사용쉘이 "/bin/csh"라는 것을 알 수 있습니다.
[root@host3 default]# grep sspark5 /etc/passwd |
다음은 /etc/shadow 의 내용입니다.
[root@host3 default]# grep sspark5 /etc/shadow |
sspark5의 /etc/group파일에 설정된 내용입니다.
[root@host3 default]# grep sspark5 /etc/group |
다음은 sspark5의 홈디렉토리인 /usr/sspark5를 확인한 것입니다.
[root@host3 default]# ls -al /usr/sspark5 |
이상과 같이 "useradd -D"는 계정생성명령어인 useradd의 기본설정값을 변경하는 명령어입니다. useradd 명령어와는 별도로 꼭 기억해 두기 바랍니다.
서두에서도 말씀드렸다시피 “useradd -D”는 useradd 명령어의 일부분입니다. 하지만 이 두가지는 반드시 구분하여 공부하시기 바랍니다.
ㅇ 제작자 : 리눅스포털(www.superuser.co.kr) 수퍼유저코리아 박성수
ㅇ 본강좌의 자세한 정보 : http://www.superuser.co.kr/linuxcommandbible/ |
관련자료
-
이전
-
다음