
※ Directory 구조와 VI Editor
1. LINUX Directory 구조
──────────────────────────────────
Directory 설명
--------------------------------------------------------------------
/ 최 상위 Directory. 아래로 모든 File들이 구성된다
/root 관리자 계정의 Home Directory
/home 일반 사용자 계정의 Home Directory가 밑으로 구성된다
/usr Windows의 Program Files Folder와 비슷한 역할
LINUX의 기본 Package들이 자리하고 있다
/bin System 설정과는 직접적인 관련이 없는 명령어 보유
Ex) cp, ls, pwd 등등
/sbin System 설정과 직접적인 관련이 있는 명령어 보유
Ex) reboot, poweroff, init 등등
/dev 관리, 활용의 목적으로 장치에 대한 정보를
File의 형태로 만들어 놓은 Directory
/var System의 Log가 쌓인다
또한 설정 변수, FTP, HTML등 Server에 관련된 File들이 위치한다
/boot Booting에 필요한 정보들이 자리하고 있다
/proc 관리 목적으로 Process들을 File형태로 저장시켜 놓은 공간
휘발성이다
/etc/skel 일반 사용자 계정 생성 시 자동으로 복사될 Data들이 자리하고 있다
/misc CD-ROM이나 Floppy Disk CD등 외부 장치가 Mount되면 자동 연결 되는 Directory
──────────────────────────────────
2. VI Editor
a. VI (Visual Editor)
- Emacs(Programer 전용 Editor)와 함께 UNIX 계열의 OS환경에서 가장 많이 사용되는 편집기
- 1976년 Bill Joy가 초기 BSD 출시에 포함될 편집기로 개발
- 한 줄씩 편집하는 줄 단위 편집기가 아닌 한 화면에서 전체를 보며 작성하는 보기 편한 편집기
- VI Editor는 경로 값으로 지정되어 있기 때문에 현재 위치에 관계없이 어디서나 실행이 가능하다
b. VI Editor의 세가지 Mode
1) Command Mode
- 문서 내에서 삭제, 복사, 이동 등을 실시하고 Key Board의 화살표 키로 문서내를 이동하여 원하는
작업에 대한 단축 Key 를 이용하여 작업 실시
──────────────────────────────────
명령 설명
--------------------------------------------------------------------
i Cursor 바로 앞부터 입력
a Cursor 바로 뒤부터 입력
o Cursor 다음 줄부터 입력
dd 한 줄 삭제
yy 한 줄 복사
p 붙여 넣기
숫자 + yy 숫자 줄만큼 복사
P(대문자) 숫자 + yy의 붙여넣기
r 한 글자 바꾸기
x 한 글자 지우기
숫자 + G 원하는 줄로 이동
──────────────────────────────────
2) Insert Mode
- 실질적으로 Key Board를 이용하여 원하는 내용의 글을 적는 상태
3) Last Line Mode
- 저장, 불러오기, 검색 등에 사용되는 상태
──────────────────────────────────
명령 설명
--------------------------------------------------------------------
:q 종료
/[찾을 문자] Cursor 아래 방향으로 문자열 검색
n을 누르면 다음 행 검색
?[찾을 문자] Cursor 위 방향으로 문자열 검색
n을 누르면 다음 행 검색
:set nu 행 번호 매김
:set nonu 핸 번호 해제
──────────────────────────────────
※ 계정 (Account)
1. 계정 추가 후 생기는 4가지 새로운 정보
a. /etc/passwd
─────────────────────────────
test : x : 500 : 500 : : /home/test/ : /bin/bash
─────────────────────────────
1 2 3 4 5 6 7
─────────────────────────────
1) 계정 명
2) Password - 보안 상의 문제로 /etc/shadow File로 옮겨 감
3) UID - 사용자 계정 번호
관리상 편의를 목적으로 System에서 ID에 매긴 숫자
4) GID - Group 번호
사용자 계정의 Primary Group
5) 계정 정보 - 이름, 부서, 전화번호 등의 일반적인 계정 사용자의 정보
6) 사용자 계정의 Home Directory
7) Log In시 부여받게 될 Shell
b. /etc/shadow
─────────────────────────────
test : !! : 14897 : 0 : 99999 : 7 : : :
─────────────────────────────
1 2 3 4 5 6 7 8
─────────────────────────────
1) 계정 명
2) MD5 암호화된 Password
3) 1970년 1월 1일을 기준으로 최근 암호를 변경한 날
4) 암호 변경 후 재변경이 가능하기까지 걸리는 기간
5) 비밀번호 만료 전까지 암호 변경을 권고하는 Message를 보내는 기간
6) 비밀번호 만료 후 계정이 사용 불가능 하게 될 때까지의 기간
7) 1970년 1월 1일을 기준으로 사용자 계정이 사용 불가가 되는 날
8) 예약 공간
c. /etc/group
────────────
test : x : 500 :
────────────
1 2 3 4
────────────
1) 계정 명
2) Password - 보안 상의 문제로 /etc/gshadow File로 옮겨 감
3) GID
4) test Group을 Secondary Group으로 사용하고 있는 계정들
d. useradd
- 사용자 계정 추가
──────────────────────────────────
Option값 설명
--------------------------------------------------------------------
-u UID값 지정
-g GID값 지정 (Primary Group 지정)
-s Shell 지정
-d 사용자의 Home Directory 지정
-G Secondary Group 지정
──────────────────────────────────
Ex)
# useradd AAA AAA 계정 생성
# useradd -u 600 -g 502 BBB UID값 600, GID값 502인 Group으로 BBB 계정 생성
502 Group이 없다면 계정 생성 불가
e. passwd
- passwd [Option값] [계정 명] : 계정 암호 설정
- 명령어만 입력하면 Log In한 사용자의 암호 변경
──────────────────────────────────
Option값 설명
--------------------------------------------------------------------
-l 암호 잠금
-u 암호 해제
-d 암호 삭제
──────────────────────────────────
f. finger
- finger [계정 명]
- 계정의 일반 정보 확인
g. chfn
- chfn [계정 명]
- 계정의 일반 정보 편집
h. usermod
- usermod [Option 값] [계정 명]
- 계정의 정보 변겅
- /etc/passwd에 기록되므로 Log In시 적용됨
- useradd 명령어 Option과 거의 동일
──────────────────────────────────
Option값 설명
--------------------------------------------------------------------
-u UID값 변경
-g GID값 변경 (Primary Group 변경)
-s Shell 변경
-d 사용자의 Home Directory 변경
-G Secondary Group 변경
-l 계정 이름 변경
──────────────────────────────────
i. userdel
- userdel [Option값] [계정 명]
- 계정 삭제
──────────────────────────────────
Option값 설명
--------------------------------------------------------------------
-r 사용자의 Home Directory까지 모두 삭제
──────────────────────────────────
j. groupadd
- groupadd [Option값] [Group 명]
- Group 추가 명령
──────────────────────────────────
Option값 설명
--------------------------------------------------------------------
-g GID값 지정
──────────────────────────────────
k. groupdel
- groupdel [Group 명]