사용자추가및삭제 ( useradd, userdel )
★ 사용자 추가
사용자를 추가하기 위해서는 강력한 권한을 가진 유저만이 가능하다.
리눅스에서는 이런 강력한 권한을 가진 유저로서 "root"라는 수퍼 유저가 존재한다.
그리고 리눅스에 존재하는 유저들에 대한 정보는 "/etc/passwd"라는 파일에 저장된다.
그럼 일단 /etc/passwd란 파일을 열어보자~!!
파일에 대해 알아보자~!! ( ":"단위로 알아보면~ )
▶사용자 이름 : 비밀번호 : 사용자 ID : 사용자가 소속된 그룹 ID : 설명 : home directory : 기본 shell
◈ 사용자 ID => 커널이 관리하는 사용자 번호이다.
( "0" => 루트 ; "1~14" => 시스템 ; "15~99" => 프로그램 ; "100~" => 일반 사용자 (대개의 일반사용자는 "500"부터이다.)
◈ 사용자가 소속된 그룹 ID => Linux의 모든 사용자들은 최소 1개 이상의 그룹에 소속된다.
◈ shell => bash : free server / ksh : 상용(콘셀)
그럼 이제 본격적으로 사용자를 만들어 보자.
일반 유저를 만드는 명령어는 "useradd"라는 명령어다. ("adduser"도 가능하나, useradd가 더 널리 쓰인다. )
localhost ~ ]# useradd [옵션] (새로운 사용자 이름)
위와 같은 방법으로 새로운 유저를 만들 수 있다.
그러나 좀더 변경사항을 고려해서 옵션에 대해 이야기해보자
useradd -c 설명 => Comment (사용자 설명 추가)
useradd -d 디렉터리 => 계정에 대한 directory 위치를 지정 (미리 만들어놓은 directory만 가능)
useradd -e 유효기간 => 지정된 날짜에 사용자의 계정을 삭제 ( chage -E와 동일 기능 )
useradd -f 비활성 일수 => password가 만기된 후 계정이 영구히 말소될 때 까지의 기간
useradd -u UID => 사용자 UID에 대한 값
useradd -s shell => 사용자 로그인 shell을 지정
useradd -n => 사용자 계정 추가 기본 모드를 지정하지 않을 때
useradd -g 그룹명 => 지정한 그룹명에 속함
useradd -G 그룹... => 사용자가 기본 그룹 이외의 다른 그룹에 추가하고자 할 때,
useradd -M => 사용자 디렉토리 없이 계정을 생성
useradd -D => useradd 명령의 기본 설정값 변경.
(-D 뒤에 옵션 명령 추가, 옵션없이 "useradd -D"만 입력시 기본설정값을 보여준다.)
( => /etc/login.defs 란 파일에 useradd가 수행될 수 있게 해주는 기본 설정 파일이다.)
useradd -D -b 기본홈 => 기본 home directory 위치 변경
useradd -D -e 기본만료일 => 계정이 말소되는 만료일
useradd -D -f 기본 비 작동일 => 패스워드가 만료되고 계정이 말소되기 전까지의 기간
useradd -D -g 기본 그룹 => 사용자의 그룹 변경
useradd -D -s 기본 쉘 => 사용자의 로그인 쉘 변경
useradd -D -m -k skel => /etc/skel 대신 다른 경로의 skeleton을 이용하고자 할 때,
( 사용자의 고유영역권에 저장해줌 <useradd시> )
※ TIP
1. passwd를 control해서 사용자를 유보(유예) 시킴
localhost ~ ]# vi /etc/passwd
=> test : x : ....... => "x"대신 "*"을 입력하면 어떤 패스워드로도 접속 불가능하다.
"x"대신 공백없이 "x"만 삭제할 경우 어떤 패스워드로도 접속이 가능해진다.
2. 좀더 간단하게 접속을 못하게 하려면 (shell을 이용)
localhost ~ ]# vi /etc/passwd
=> .......:/bin/bash => "/bin/bash"대신 "/bin/false"를 입력하면 shell을 사용하지 않음 ( 로그인 불가)
"/bin/bash"대신 "/bin/nologin"을 입력시 로그인이 안되고 리셋시킨다.
3. E-mail (mail user)
=> 사용자 개개인의 공간은 필요 없으므로 "useradd -M"옵션을 이용하여 계정을 만들자.
ex) localhost ~ ]# useradd test => 기본값으로 test유저를 만들어보자~!
localhost ~ ]# mkdir /home/users
localhost ~ ]# mkdir /home/users/test1 => test1이 사용할 홈 디렉터리를 미리 만들어 놓음
localhost ~ ]# useradd -d /home/users/test1 test1
=> test1의 홈디렉터리를 /home/users/test1을 가진 유저 생성
localhost ~ ]# cat /etc/passwd => 생성된 계정의 홈디렉터리가 변경되었는지 확인
localhost ~ ]# useradd -D -b /home/users => 기본 홈 디렉터리를 /home/users로 위치를 변경
localhost ~ ]# useradd -D => 변경이 잘 되었는지 확인
localhost ~ ]# useradd test3
localhost ~ ]# tail -n 5 /etc/passwd => test3사용자의 홈디렉터리가 지정한 위치에 있는 폴더를 사용하는지 확인
( => /etc/passwd란 파일도 한 페이지를 넘어가기 때문에 tail을 사용해 아래서부터 지정한 줄 만큼만 보여준다.)
♣ 이 이외에도 옵션들이 많으니 옵션을 변경해가며 사용자를 생성하고 확인해보자~!!
★ 사용자 제거
=> 사용자를 생성하면 4개의 파일에 사용자의 정보가 담아진다.
( /etc/passwd, /etc/group , /etc/shadow , /etc/gshadow )
사용자 제거는 위의 4개의 파일에서 사용자를 제거하게된다.
사용자 제거시 사용하는 명령어는 "userdel"이란 명령어이다. ( 특별히 옵션은 사용하지 않는다.. )
ex) localhost ~ ]# userdel test1 => test1 유저를 삭제하자~!
localhost ~ ]# tail -n 8 /etc/passwd => 제대로 삭제가 되었는지 확인
'리눅스 > 기본정보(OS)' 카테고리의 다른 글
(date , clock ) 시간 맞추기. (1746) | 2011.02.18 |
---|---|
사용자 정보변경(usermod , group) (0) | 2011.02.17 |
VI 에디터 (936) | 2011.02.17 |
텍스트보는 명령어 (0) | 2011.02.17 |
기본적인 명령어 (1639) | 2011.02.17 |