1. find 문법
find path [expression] [action]
-name FileName : 검색 대상 파일명 입력함.
- type : 검색 대상 파일의 종류를 지정함.
- user : 검색 파일의 소유주 또는 UID 지정함
- group : 검색 파일의 소유 그룹 또는 GID 지정함
- size : 검색 파일 크기 지정함 ( num(일치) +num(이상), -num(이하)(bck : b(블록) or c(byte) or k(kilobyte)
- perm mode : 접근권한으로 검색
- atime : 파일이 읽힌 최근 시간
- ctime : 권한이 바뀐 최근 시간
- mtime : 파일이 수정된 최근 시간
- prune : 현재 디텍터리에서만 검색 함
- print : 검색 후 행할 작업 옵션으로 검색 결과를 출력 함
- exe command : 검색 후에 행할 작업 옵션으로 검색결과에 특정 명령어를 실행 하도록 함
예제)
1. 파일의 확장자가 *.log 이거나 *.o 인것을 찾는다
find . -name "*.log" -o name "*.o" -print
2. 파일의 확장자가 *.log 이거나 *.o 인것을 찾아 삭제한다
find . \(-name *.log -o name "*.o" \) -exec rm{} \;
3. Tip.
1) find 명령은 명시적 논리 연산이 가능 함. -a ( And), -o (Or) , !(Not)
2) 괄호나 ; 은, 시스템 명령어가 존재하기때문에 프로그램에서 해석하기 위해 \ 을 붙인다.
2. 파일 응용 명령어
- wc : 파일 내 행, 단어 문자의 수를 출력함
- cut : 파일의 행으로부터 특정 바이트나 필드를 추출함
- paste: 파일 내 행을 병합할때 사용
- tr : 파일 내 지정 문자를 치환 또는 삭제할 때 사용
- sort : 파일을 정렬할 떄 사용
- split : 파일을 분할할때 사용
- uniq : 파일에서 인접하는 행의 내용을 비교 함
- cmp : 파일을 비교할 때 사용 ( 다르면 처음 발견한 라인번호와 옵셋 출력 함 )
- comm : 파일을 비교할 때 사용 ( 한쪽에만 있거나 양쪽 모두에 있는 행 출력 함 )
- diff : 파일이 동일한지 여부 검사 함
- grep : 파일 내 특정 패턴이나 문자열을 검색
3. 프로세스 정보 확인 명령어 ( ps )
1) 옵션
-f : 이 옵션은 프로세스 정보를 한줄씩 다음 예 처럼 출력 함
예) UserName , PID , PPID , C , STime, TTY , TIME, CMD
-l : 이 옵션은 -f 옵션보다 더욱 자세하게 정보를 출력 함
예) F , S , UID , PID, PPID, C , PRI, NI , ADDR , SZ , WCHAN , TTY , TIME, CMD
-a : 최근에 많이 실행된 제어 터미널을 가진 프로세스의 정보를 출력 함
-A, -e : 현재 시스템에서 실행 중인 모든 프로세스 정보를 출력 함
- G : 이 옵션 뒤에 입력된 GID 를 가진 프로세스에 대한 정보를 출력 함
-g : 이 옵션 뒤에 입력된 EGID 를 갖는 프로세스 출력 함
-U : UID 를 갖는 프로세스 출력 함
-u : EUID 를 갖는 프로세스 출력 함
-t : 이 옵션 뒤에 입력된 제어 터미널을 갖는 프로세스에 대한 정보를 출력 함
-o : 출력 형식을 조절 함.
2) 가장 사용 많이 되는 옵션 : ps -ef
3) 세부 설명
1. UID : 프로세스 소유자
2. PID : 프로세스 아이디
3. PPID : 부모 프로세스의 PID
4. C : CPU 사용량 (현재는 사용안됨)
5. STIME : 프로세스가 시작된 시간
6. TTY : 프로세스가 연결된 터미널 표시함
7. TIME : cpu 사용시간을 표시함
8. CMD : 실행된 프로세스 이름
4. 프로세스간 통신 ( IPC )
- InterProcess Communication
- 하나의 운영체제에 존재하는 프로세스 간의 통신 방법을 말한다.
예) 파이프 , 시그널 , 메시지큐, 공유메모리, 세마포어 등이 있음
5. 프로세스 제어 명령어
1. command& : 백그라운드 모드로 command 명령 실행
2. jobs : 백그라운드 프로세스 모니터링
3. fg %job_number : 포그라운드 모드로 전환
4. bg %job_number : 정지된 프로세스를 백그라운드 모드로 전환
5. kill %job_number : 프로세스에 시그널을 보내는 명령 ( SIGKILL : 종료 )
6. 스왑공간
- 실제 메모리가 부족할 경우 디스크 부분을 마치 메모리 처럼 사용 하는 공간으로 메모리가 부족 할 경우 사용하는 공간
- /etc/vfstab 에서 Swap 공간 할당 확인가능 함.
7. 시스템 부팅
1. 런 레벨 ( Run Level )
- 시스템 사용자가 시스템 관리의 편의성을 중대하기 위해 사용 함.
- init 프로세스는 etc/inittab 파일에 정의 된 런 레벨에 따라 /etc/rc.d/rc[x].d ( [x] 가 런레벨 ) 디텍터리에 나열된
스크립트를 실행하여 시스템의 운영 상태를 구성 함
- 서버용 Unix 시스템은 일반적으로 3 또는 5 의 런 레벨로 운영 됨 .
- who -r 또는 runlevel(리눅스) 명령으로 현재의 런 레벨 확인 가능
2. 유닉스 런 레벨
0 : PROM 모드 ( Read Only Memory)
S,s : 시스템 싱글 유저 모드 ( 로컬 파일 시스템이 마운트 되지 않은 상태 )
1 : 시스템 싱글 유저 모드 , 로컬 파일 시스템이 마운트 된 상태
2. 멀티 유저 모드 ( NFS 클라이언트 모드 )
3. 멀티 유저 모드 ( NFS 서버 모드 ) , Unxi 기본 런 레벨
5. 시스템 power off 모드
6. 시스템 리부팅
8. 시스템 종료
- UNIX 시스템 종료시 주의 사항
1. 접속중인 사용자에게 시스템 종료를 공지하여 작업을 마무리 함
2. 운영 중인 서비스 프로세스를 안전하게 종료 해야 함
3. 하드디스크를 갱신하여 파일 시스템의 무결성을 유지 해야 함
( Unix 시스템은 HDD 입 출력에 대한 효율성을 높이기 위해 버퍼를 사용함. 시스템 종료시 버퍼에 있는 데이터를 반영
해야 무결성 유지가 됨 )
1.ShutDown 명령 옵션 ( System V 계열 )
-y : 확인 질문에 자동으로 yes 로 답한다.
-g : 대기시간을 초 단위로 명시함 디폴트값은 60초.
-i : 새롭게 런 레벨 지정 함. 디폴트값은 싱글 유저 모드인 S 임.
message : 모든 사용자에게 보내질 메시지
예문) shutdown -y -g 20 -i 6 "server reboot"
9. 사용자 관리 ( usseradd )
1. 패스워드 파일 : /etc/passwd 와 etc/shadow
2. 그룹 파일 : /etc/group 에 그룹 정보 추가 함
1) 옵션
-l : 새로운 사용자 계정으로 변경 함
-m : -d 옵션으로 홈 디텍터리를 새로 지정 하고, 이 홈 디텍터리로 이동함
-u : uid 지정
-g : 그룹 지정 디폴트값은 other
-G : 콤마로 분리 된 보조 그룹을 지정 함
-c : 사용자 관련 기타 정보를 기술 함
-s : 사용자의 로그인 셸을 절대 경로로 지정 함
-d : 사용자의 홈 디텍터리를 절대 경로로 재지정 함
-e : 사용자 계정의 종료날짜를 지정 함 ( 디폴트는 종료되지 않음 )
-f : n일 동안 사용자 계쩡을 사용하지 않으면 사용자 계정이 잠김
10. 사용자 계정 변경 ( usermod )
1. 이 명령은 옵션이 위와 같음
11. 사용자 계정 삭제 ( userdel )
1. 계정 삭제시 이용함 -r 옵션을 부여할 시, 홈 디텍터리까지 삭제 함
12. 그룹 추가 ( groupadd)
1. 옵션
-g : 새로운 그룹에 할당할 그룹의 GID 를 명시적 지정 함
예) groupadd test /* 테스트 그룹 새로 추가 */
groupadd -g 100 test /* GID 100 인 테스트 그룹 새로 추가 */
13. 그룹 삭제 ( groupdel )
groupdel test
14. 파일 시스템 연결 ( Mount )
- 옵션 : -a : /etc/fstab 파일에 정의된 모든 파일 시스템을 마운트 한다.
mount -a /* /etc/fstab 파일을 기반으로 명시적 실행 */
mount /dev/cdrom /mnt/cdrom /* /dev/cdrom 디바이스 파일을 mnt/cdrom 에 마운트 */
15. 파일 시스템 연결 해제 ( Unmount)
- 프로세스가 파일 시스템에 있는 파일을 사용 중이거나 사용자가 파일 시스템에 있는 디텍터리에 있다면 unmount 명령은
device is busy 메시지와 함께 실패 함.
- /etc/mtab 파일은 시스템에 마운트된 파일시스템의 정보를 관리한다. mount 명령을 실행하면 파일 시스템이 마운트 정
보를 /etc/mtab 파일에 기록하고, unmount 정보를 삭제함
-옵션
-a : 마운트된 모든 파일 시스템을 언 마운트 함
-f : 해당 파일시스템을 사용하는 프로세스를 강제종료 시키고 파일 시스템 언마운트 함
16. 하드디스크 사용량 (du)
- 옵션
-a : 디텍터리 뿐만 아니라 하위의 파일에 대한 정보도 보여줌
-s : 현재 디텍터리의 총 용량만 출력
-k : 사용량을 킬로바이트 단위로 환산 하여 출력 함
17. 파일 시스템 용량 정보 ( df )
- 옵션
-k : 통계 데이터를 1024byte 블록 단위로 출력 함
-i : 파일 시스템의 사용가능한 또는 사용중인 i-node 정보를 출력 함
예) df /boot or df
18 압축 및 압축 해제
- compress 명령 ( 확장자 : .z )
- 옵션
-v : 압축 비율 , 압축 파일 이름, 압축 해제된 파일의 이름을 함께 출력함
-d : 압축을 품
-c : 압축 또는 압축 해제 된 결과 출력
- gzip ( 확장자 : .gz )
- 옵션
-v : 압축 비율 , 압축 파일 이름, 압축 해제된 파일의 이름을 함께 출력함
-d : 압축을 품
-c : 압축 또는 압축 해제 된 결과 출력
-r : 하위 디텍터리에 있는 파일까지도 압축 또는 압축 해제 함
- 아카이브 ( 확장자 : .tar )
- 옵션
-c : 파일과 디텍터리를 묶음
-t : 묶은 파일의 목록 출력 함
-x 묶은 파일과 디텍터리를 푼다
-f : 아카이브 파일명을 지정 한다
-v : 현재 처리 중인 파일의 경로룰 출력 한다
예문) tar cvf test.tar *.c /* 확장자가 .c 파일에 대해 아카이브 파일 생성 */
tar xvf test.tar /* test.tar 의 압축을 품 */
19. 정기적 스케쥴 관리 ( Cron )
1. /etc/default/cron 파일에는 CRONLOG 변수가 설정되어 있음,
YES 일 경우 /var/cron/log 파일에 로그가 남음
2. 6개 필드의 의미
필드 1 : 분 0 ~59 까지
필드 2 : 시 0 ~ 23 까지
필드 3 : 일 1-31 까지
필드 4 : 월 1-12 까지
필드 5 : 요일 0 - 6 까지
필드 6 : 작업 : 절대경로로 기술하고, 필요한 옵션 및 인수를 함께 나열 함
3. 옵션
-e : crontab 파일 편집
-l : crontab 파일 출력 함
-r : crontab 파일을 삭제 함
'자격증 공부 > 정보보안 산업기사 필기' 카테고리의 다른 글
2 장 네트워크 보안 정리 (0) | 2013.08.21 |
---|---|
1과목 . 단답형 정리 (0) | 2013.08.20 |
정보보안 산업기사 D-2 총정리 (0) | 2013.07.04 |
2강 클라이언트 보안 (0) | 2013.06.06 |
1 강 운영체제 (0) | 2013.06.06 |