[Linux] 파일
2023. 3. 7. 23:59
파일
- 파일은 프로그램 구성의 기본 다누이가 되며, 보조기억장치에 저장된다.
- 이런 파일의 저장, 액세스, 공유, 보호등의 관리 기술을 할 수 있는 것이 파일시스템이다.
- 파일 디스크립터 : 파일에 대한 정보를 갖는 제어 블록 (File Control Block)
- 마운트 : 실제 공간인 디스크를 운영체제에 연결하는 것
- 윈도우의 경우, 디스크가 추가되면, D드라이브, E드라이브 이런식으로 늘어나는데, 리눅스는 이렇게 자동으로 늘어나지 않음
- 새로운 HDD를 추가하면, 이에 연결될 폴더를 직접 지정해주는데, 이 과정을 mount라고 함
파일의 종류
파일의 종류 설명
일반 파일 (regular file) | 일반 파일<br />텍스트 파일이나 동영상 파일 등이 일반 파일에 포함 |
디렉터리(directory) | 디렉토리도 파일의 한 종류<br />윈도우의 폴더와 같은 개념 |
심볼릭 링크 파일(symbolic link file) | 어떤 다른 파일을 가리키는 파일<br />윈도우의 바로가기와 같은 개념 |
블록 디바이스 파일(block device file) | 블록 디바이스를 제어하기 위한 파일 |
문자 디바이스 파일(character device file) | 문자 디바이스를 제어하기 위한 파일 |
파이프 파일 (pipe file) | 파이프를 나타내는 파일<br />프로세스간 통신에 사용 |
소켓(socket) | 소켓을 나타내는 파일<br />프로세스간 통신에 사용됨 |
- device driver : 운영체제 내에서 device(H/W)를 제어하기 위한 S/W
- kernel 모드에서는 device driver가 device를 제어한다.
- user 모드 (App)에서는 device file을 통해 device를 제어한다.
- device file은 user 모드 단에서 device driver를 통해 device를 컨트롤 할 수 있게 만들어주는 통로 역할이다.
디렉터리 종류
디렉터리 설명
/ | 루트 디렉터리, 모든 디렉터리의 최상위 부모 |
/bin | 모든 사용자가 사용할 수 있는 여러가지 실행 파일 위치 |
/sbin | 시스템 관리자 권한으로 신핼해야 하는 실행 파일 위치 |
/etc | 여러 가지 설정 파일 |
/lib | 공유 라이브러리 디렉터리 |
/home | 사용자들의 홈 디렉터리 |
/mnt | 일시적으로 파일 시스템에 마운트하는 경우 사용하는 디렉터리 |
/proc, /sys | 시스템 정보를 설정/조회할 수 있는 디렉터리<br />OS가 만들어낸 가상의 디렉터리 (유저모드에서 운영체제의 각종 정보를 접근하기 위함) |
/tmp | 임시 디렉터리 |
/usr | 사용자가 추가한 실행 파일, 라이브러리 등의 소프트웨어 저장 |
/dev | 디바이스 드라이버가 사용하는 디바이스 파일 디렉터리 |
아이노드
- 아이노드 : 파일을 빠르게 찾기위한 데이터
- index-node의 준말임
- 파일에 대한 정보(메타데이터)를 포함하고 있다
- 아이노드가 포함하고 있는 정보들
- 파일 모드(permission)
- 링크 수
- 소유자명
- 그룹명
- 파일 크기
- 파일 주소
- 마지막 접근 정보
- 마지막 수정 정보
- 아이노드 수정 정보
- 소프트 링크 (= 심볼릭 링크)
- 원본 i-node에 접근하기 위한 소프트 링크 파일을 생성함
- 이 파일은 원본 i-node와 다른 i-node 번호를 갖는다.
- 하드 링크
- 원본 파일의 i-node에 대한 직접적인 포인터
'skill > linux' 카테고리의 다른 글
[Linux] 프로세스와 시그널 (0) | 2023.03.08 |
---|---|
[Linux] 기본 명령어 (0) | 2023.03.05 |
[Linux] 리눅스란? (0) | 2023.03.03 |