0. 유닉스의 개요
- 유닉스의 구조
- 커널
- 셸
- 유틸리티
- 요약
- 유닉스는 크게 커널, 셸, 유틸리티 등 세 부분으로 구성됨
- 커널: 유닉스의 핵심 기능으로 프로세스 관리, 메모리 관리, 파일 시스템 관리, 장치 관리 등 컴퓨터의 모든 자원을 관리
- 셸: 사용자 인터페이스 제공, 사용자와 커널 사이의 중간자 역할을 담당하여 사용자가 입력한 명령을 해석한 후 커널에 넘겨주고, 결과를 받아 화면으로 출력, 본 셸(sh)/콘 셸(ksh)/ 배시 셸(bash) 등이 있음
- 유틸리티: 각종 프로그래밍 개발 도구, 네트워크 도구 등 다양한 유틸리티를 제공
- 유닉스는 크게 커널, 셸, 유틸리티 등 세 부분으로 구성됨
- 기초 명령 사용법
- 3개 중 1개)
banner 명령- date 명령
- clear 명령
- man 명령
- 요약
- banner: 문자열을 큰 문자로 출력
- date: 현재 날짜와 시간 출력
- clear: 화면을 깨끗이 지워줌
- man: 명령에 대한 자세한 설명 출력
- 3개 중 1개)
- 비밀번호 변경
- passwd 명령
- passwd
- 기능: 사용자 계정 비밀번호 변경
- 형식: passwd [인자]
- 특징
- 8자 이상, 숫자, 특수문자 포함
- passwd
1. 디렉토리 다루기
- 경로명/경로
- 유닉스 파일 시스템에서 딕렉토리 계층 구조에 있는 특정 파일이나 디렉토리의위치를 나타내는 것
- 특징
- 디렉토리와 디렉토리, 또는 디렉토리와 파일을 구별하는 구별자로 “/ “를 사용
- 루트 디렉토리: 경로 앞에 있는 “/”
- 구별자: 경로 중간에 나오는 “/”
- 종류
- 절대경로
- 상대경로
- 절대 경로와 상대 경로
- 절대 경로
- “/”로 시작
- 특정 파일 가리키는 경로는 항상 동일
- 상대 경로
- 현재 디렉토리부터 시작
- 하위: 디렉토리 이름
- 상위: “. .”을 추가
- 현재 디렉토리에 따라 달라짐
- 현재 디렉토리부터 시작
- 절대 경로
- 예시
- Unix
- 절대 경로: /home/user1/Unix
- 상대 경로: Unix
- report
- 절대 경로: /home/user1/Unix/report
- 상대 경로: Unix/report
- home
- 절대 경로: /home
- 상대경로: . .
- /
- 절대 경로: /
- 상대경로: . ./. .
- 현재 디렉토리 확인
- pwd
- 기능: 현재 위치를 확인, 현재 디렉토리의 절대 경로를 출력
- 형식: pwd
- 결과: export/home/user1
- pwd
- 디렉토리 이동
- cd
- 형식: 현재 디렉토리를 변경, 현재 작업 디렉토리를 지정한 디렉토리로 이동
- 기능: cd [디렉토리명]
- 옵션
- 절대 경로
- 상대 경로
- 옵션
- 결과
- 절대경로 지정: cd /tmp
- 상대경로 지정: ../etc
- cd
- cd를 이용하여 홈 디렉토리로 이동 4가지
- 결과
- 절대 경로: cd/export/home/user1
- 상대 경로: cd ../export/homr/user1
- 특수 기호 ~ 사용: cd ~
- 지정 안 함: cd
- 결과
- 디렉토리의 파일 목록 확인
- ls
- 기능: 디렉토리의 내용을 출력
- 형식: ls [옵션] [파일/디렉토리명]
- 옵션 (-)
- a : 숨긴 파일 포함한 모든 파일
- d : 지정한 디렉토리 자체 정보
- i : 첫 번째 행에 inode 번호
- l : 파일의 상세 정보
- u : 파일, 디렉토리 이름을 최종 접근 시간 순으로 화면에 출력
- F : 파일의 종류 표시 (*****: 실행 파일, /: 디렉토리, @: 심볼릭 링크)
- R : 하위 디렉토리 목록까지 출력
- L : 심볼릭 링크 파일의 경우, 원본 파일의 정보 풀력
- A : . 과 .. 을 제외한 모든 파일 목록
- 옵션 같이 쓰기 가능
- - al
- - dl
- - il
- ls
- 예시
- tmp 파일의 숨긴 파일을 포함해 모든 파일 목록의 상세 정보를 출력
- ls -al /tmp
- 현재 디렉토리 확인
- ls
- ls -a
- 지정한 디렉토리 확인
- 루트 디렉토리 파일 목록 확인
- ls /
- 루트 디렉토리 파일 종류 확인
- ls -F
- 루트 디렉토리 파일 목록 확인
- 파일 정보 확인
- ls .bashrc
- 디렉토리 이름 대신 파일의 이름을 지정하면 해당 파일의 정보를 알 수 있음
- 옵션 없이→ 지정한 파일 존재 여부 확인
- 결과
- ls .bashrc
- .bashrc
- ls test
- No such file or directory(파일/디렉토리 존재하지 않음)
- ls .bashrc
- ls .bashrc
- tmp 파일의 숨긴 파일을 포함해 모든 파일 목록의 상세 정보를 출력
- 주요 옵션
- l (long) 옵션
- d (dir) 옵션
- l (long) 옵션
- 파일 종류
- - : 일반 파일
- d : 디렉토리 파일
- l : 심볼릭 링크 파일
- b : 블록 단위로 읽고 쓰는 블록 장치 특수 파일
- c : 섹터 단위로 읽고 쓰는 문자 장치 특수 파일
- p : 파이프, 프로세스 간 통신에 사용되는 특수 파일
- s : 소켓. 네트워크 통신에 사용되는 특수 파일
- 파일 종류
- d (dir) 옵션
- /export 디렉토리의 마지막 수정 시간을 알고 싶은 경우는?
- ls -ld /export
- 상세정보(l) + 디렉토리(d)
- l: 상세 정보 출력, 마지막 수정시간 포함
- d: 자체 정보 확인 (파일/디렉토리 존재 확인)
- ls [파일명]
- ls -d [디렉토리명]
- /export 디렉토리의 마지막 수정 시간을 알고 싶은 경우는?
- 파일 상세 정보 보는 법
- drwxr-xr-x 3 root sys 3 Jul 20 09:27 export
필드 값 | 필드 의미 |
d | 파일 종류 |
rwxr-xr-x | 파일 접근 권한 - 파일의 소유자, 그룹, 기타 사용자 - 읽고/수정하고/실행할 수 있는 권한 보여줌 |
3 | 하드 링크 수 |
root | 파일 소유자 |
sys | 파일이 속한 그룹 |
3 | 파일 크기(바이트 단위) |
Jul 20 09:27 | 파일이 마지막으로 수정된 시간 |
export | 파일 이름 |
- 디렉토리 생성
- mkdir
- 특징
- 계층적/새로운 디렉토리 생성
- 기능
- 디렉토리 생성
- 형식
- mkdir [옵션] 디렉토리명
- 옵션
- -p
- 디렉토리 생성에 필요한 하위 디렉토리 함께 생성
- 하위 디렉토리를 계층적으로 생성할 때 중간의 디렉토리가 없으면, 생성하면서 전체 디렉토리를 생성
- -p
- 특징
- 예시
- 현재 디렉토리에서 Unix 디렉토리 생성 후 하위 디렉토리로 ch2 디렉토리 생성
- 상대 경로
- mkdir Unix/ch2
- 절대 경로
- mkdir /export/home/user1/Unix/ch2
- 생성 후 확인 명령어
- ls -l Unix/ch2
- drwxr-xr-x 2 user1 staff 2 Apr 12 21:08 ch2
- 생성됨을 확인
- ls -l Unix/ch2
- 상대 경로
- 현재 디렉토리에서 Unix 디렉토리 생성 후 하위 디렉토리로 ch2 디렉토리 생성
- 생성
- 디렉토리 여러개를 동시에 생성
- mkdir Test dir test
- 중간 디렉토리 자동 생성
- -p 옵션을 사용
- temp 디렉토리 아래 work 디렉토리 아래 prog 디렉토리 만들기
- 오류
- mkdir temp/work/prog
- NO such file or directory
- mkdir temp/work/prog
- 옵션 사용
- mkdir -p temp/work/prog
- 성공 후 모든 하위 디렉토리 파일 목록의 상세 정보 확인(상위 디렉토리명으로 확인 가능)
- ls -lR temp
- 성공 후 모든 하위 디렉토리 파일 목록의 상세 정보 확인(상위 디렉토리명으로 확인 가능)
- mkdir -p temp/work/prog
- 오류
- temp 디렉토리 아래 work 디렉토리 아래 prog 디렉토리 만들기
- -p 옵션을 사용
- 디렉토리 여러개를 동시에 생성
- 실습
- 실습용 디렉토리 만들기(Practice): 현재 위치를 확인한 후(현재 작업 디렉토리의 절대 경로 출력) ch2 디렉토리 아래에 Practice 디렉토리를 생성
- pwd
- mkdir ch2/Practice
- 현재 위치 이동하기: 실습용 디렉토리로 이동한 다음 모든 파일의 상세 목록을 확인한다
- cd Practice
- ls -al
- 실습용 디렉토리 만들기: Temp 디렉토리 생성
- mkdir Temp
- ls -F
- 디렉토리 상세 정보 보기: Temp 디렉토리 자체에 대한 상세 정보를 확인
- ls -ld /Temp
- 디렉토리 위치 변경하기: 실습 디렉토리에서 빠져나가기
- cd ..
- 실습용 디렉토리 만들기(Practice): 현재 위치를 확인한 후(현재 작업 디렉토리의 절대 경로 출력) ch2 디렉토리 아래에 Practice 디렉토리를 생성
- mkdir
- 디렉토리 삭제
- rmdir
- 기능: 디렉토리 삭제
- 형식: rmdir [옵션] 디렉토리명
- 옵션
- -p
- 지정한 디렉토리를 삭제한 뒤, 그 디렉토리가 빈 디렉토리일 경우 부모 디렉토리도 자동으로 삭제
- -p
- 특징
- 디렉토리가 반드시 비어져야 삭제 가능
- 하위 디렉토리가 있을 경우 rmdir로 해당 디렉토리 삭제 불가능
- rm 명령어(3장)
- 디렉토리와 내용물 한 번에 삭제 가능
- rm 명령어(3장)
- 하위 디렉토리가 있을 경우 rmdir로 해당 디렉토리 삭제 불가능
- 명령 다음에 공백 문자 구분되는 이름 있을 경우 각각을 다른 디렉토리로 인식
- rmdir temp/work/prog test
- 디렉토리가 반드시 비어져야 삭제 가능
- 예시
- rmdir Temp
- rmdir
728x90
'공부 > 유닉스' 카테고리의 다른 글
[Unix] 유닉스 이론과 실습: 프로세스 종류 (inetd, httpd, nfsd, sshd, named, lpd) (0) | 2023.05.25 |
---|---|
[Unix] 유닉스 이론과 실습: 파일 접근 권한 관리하기 (4) (0) | 2023.05.25 |
[Unix] 유닉스 이론과 실습: 배시 셸 활용하기 (3) (0) | 2023.05.25 |
[Unix] 유닉스 이론과 실습: 파일 다루기 (2) (0) | 2023.05.25 |
[Unix] 유닉스 이론과 실습: 솔라리스 설치- 유닉스 가상머신 (0) | 2023.04.17 |