계정
### 계정명령 ###
add 추가 ( addtion)
mod 변경 ( modify)
del 삭제 ( delete )
** 명령 > 파일 > 실행 **
useradd 추가
usermod 변경
userdel 삭제
groupadd 추가
groupmod 변경
groupdel 삭제
=====================================
계정생성 기본파일 ( login.defs 에서 참조하는 내용)
MAIL_DIR /var/spool/mail 메일함위치
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
-===============================
계정 문서파일
/etc/passwd 사용자계정정보 ***
/etc/shadow PW정보
/etc/group 그룹정보
root:x:0:0:root:/root:/bin/bash
sevas:x:1000:1000:sevas:/home/sevas:/bin/bash
[ ID ] : [ X ] : [UID] : [GID] : [별명] : [홈디렉토리 경로] : [쉘 ]
$USER : X : $UID : $GID : comment : $HOME : $SHELL
root 관리자 UID : 0
일반사용자 UID : 1000
UID_MIN 1000
UID_MAX 60000
GID_MIN 1000
GID_MAX 60000
CREATE_HOME yes
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
ENCRYPT_METHOD SHA512
$1 md5
$6 sha2 (sha-512)
/etc/group => group 정보문서
sevas:x:1000:
[ 그룹명] : x : GID :
=======================================================
계정생성시 파일 추가
/home/사용자명 홈디렉토리
/var/spool/mail/사용자명 메일파일
내용추가
/etc/passwd
/etc/shadow
/etc/group
useradd 계정생성
/etc/default/useradd => useradd 기본 설정문서 (홈디렉토리경로,쉘)
[root@localhost ~]# cat /etc/default/useradd
# useradd defaults file (useradd 옵션 미설정 기본설정)
GROUP=100 =>기본 GID (UID =GID)
HOME=/home =>기본 $HOME base dir
INACTIVE=-1 =>PW 유효기간 (-1 비활성)
EXPIRE= =>PW 만료기간 (비활성)
SHELL=/bin/bash =>기본 $SHELL
SKEL=/etc/skel =>기본 skel 경로
CREATE_MAIL_SPOOL=yes =>메일 파일 생성여부
실습)
mkdir -p /sevas1 /export/sdb/home
ls -ld /sevas1 /export/sdb/home
touch /sevas1/sevas_test
mkdir /backup
cp -a /etc/default/useradd /backup
#문서편집변경
vi /etc/default/useradd
# useradd defaults file
GROUP=100
#HOME=/home
HOME=/export/sdb/home
INACTIVE=-1
EXPIRE=
#SHELL=/bin/bash
SHELL=/bin/sh
#SKEL=/etc/skel
SKEL=/sevas1
CREATE_MAIL_SPOOL=yes
useradd -D = cat /etc/default/useradd
#명령어변경
useradd -D
-b $HOME basedir
-s $SHELL 변경
useradd -D -b /home -s /bin/bash
useradd -D 확인후
원복
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
**계정관련 디렉토리**
/etc/skel => 홈디렉토리 기본 구성파일 저장소 (.bash_profile,kshrc등등)
/home => 기본 홈디렉토리 생성 base저장소 (/home/사용자명)
/var/spool/mail => 메일파일 저장소 (메일함)
========================================================
계정 생성
( 모든 실습뒤 확인은 /etc/passwd /etc/shadow /etc/group 을 확인)
useradd 옵션
sevas : x : 1000 : 1000 : linux_account : /home/sevas : /bin/bash
-u -g -c -d -s
-G -b
-u UID 지정
useradd -u 1100 test1
(그룹 미지정시 uid와 같은 gid 생성)
-g GID 지정 (1차그룹 : 주그룹)
useradd -g test1 test2
id test2
***-G 그룹가입 (2차그룹 : 보조그룹 )
useradd -G test1 test3
id test3
-c 별칭 ( GUI display )
useradd -c bravo test4
**로그인시에는 반드시 pw 설정을 해야한다**
=========================================
-d 계정 접속위치 지정 **** (create home =yes 에 의해 적용)
mkdir -p /export/home
ls -ld /export/home
useradd -d /export/home/test5 test5 (추천)
useradd -d /export/home test55 ( 가급적 사용X )
** -d 사용시 가급적 계정명과 동일한 경로까지 기재 **
=========================================================
-s 쉘지정
useradd -s /bin/csh test6
-m -k (-mk) (1회성) 스켈 지정 ( 기본값 /etc/skel )
mkdir /sk
touch /sk/1
useradd -mk /sk -s /bin/csh test8
ls -al /sk /home/test8
** 잠깐 기초지식 **
쉘확인
cat /etc/shells
/bin/sh => 커널쉘 (본쉘)
/bin/bash => 리눅스기본쉘 (기능쉘) [ sh+ksh ]
/usr/bin/sh => 응용프로그램
/usr/bin/bash => 응용프로그램
/bin/tcsh => 확장된 프로그램 전용쉘
/bin/csh => 프로그램밍전용쉘
user -> shell -> kernel -> OS
shell => kernel에게 명령어를 전달해주는 해석기
kernel => HW/SW 를 연결해주는 중계프로그램 ( 자원메모리관리 )
OS => operating system 조작시스템 ( 인터페이스 제공 )