정리하는 공간
리눅스 ) 파일 시스템 본문
파일 시스템
파일 시스템이란?
-파일이나 자료를 쉽게 확인하고 사용하기 위해 파일을 어디에 위치시켜야 할지 관리하는 시스템
-어떤 구조를 구성하여 파일이나 디렉터리르 ㄹ관리하느냐에 따라 다양한 형식의 파일 시스템이 존재
리눅스 고유의 디스크 기반 파일 시스템 종류
1. ext1
파일 시스템의 최대 크기는 2GB
2. ext2
파일 시스템의 최대 크기는 32TB
3. ext3
저널링 기능을 도입해 복구 기능 강화 (저널링=파일 훼손 시 복구)
4. ext4
1EB 이상의 볼륨과 16TB 이상의 파일을 지원
대표적인 저널링 파일 시스템
1. reiserFS
웹 서비스 전용
2. xfs
sgi 라는 회사에서 만들었고, 대용량 파일 시스템
3. JFS
IBM 에서 만든 파일 시스템으로 저용량 파일 시스템
특수 용도의 가상 파일 시스템(리눅스)
1. swap
스왑 영역을 관리하기 위한 스왑 파일 시스템
2. tmpfs
메모리에 임시파일을 저장하기 위한 파일 시스템으로 시스템 재시작 시 기존 내용이 사라진다.
ex) /tmp 디렉터리
3. proc
프로세스가 동작 중일 때 임시로 프로세스 정보를 보관하는 곳 (/proc 디렉터리)
/proc/filesystems 에서 현 시스템이 지원하는 파일 시스템을 확인할 수 있다.
nodev 는 해당 파일 시스템이 디스크와 연결되어 있지 않아 가상 파일 시스템임을 뜻한다.
리눅스 파일 시스템의 구조
1. 리눅스의 모든 파일 시스템의 기본 개념
1) 파일은 inode로 관리 된다.
2) 디렉터리는 단순히 파일의 목록을 가진 파일일 뿐
3) 특수 파일을 통해 장치에 접근할 수 있다.
2. ext4 파일 시스템의 구조
1) 효율적으로 디스크를 사용하기 위해 저장 장치를 논리적인 블록의 집합으로 구분
ex) a4 용지를 정확히 9등분을 해야한다고 가정하자. 이때 첫번 째 칸의 크기가 삐뚤 빼뚤하면 마지막 칸의 크기는 다르게 되어 a4용지를 효율적으로 사용할 수 없다. 이처럼 디스크도 논리적으로 사용하기 위해 블록으로 구성되어 있다.
2) 일반적으로 블록은 4KB이고, 시스템의 설정에 따라 변경 가능하다.
3) 블록 그룹 유형
-블록그룹 0 : 파일 시스템의 첫 번째 블록 그룹으로 그룹 0 패딩, 슈퍼블록, 그룹 디스크립터가 있다.
-블록그룹 a : 파일 시스템에서 첫 번째 블록 그룹이 아닌 블록 그룹으로 그룹 0패딩이 없고, 슈퍼블록과 그룹
디스크립터에 대한 복사본을 가지고 있다.
-블록그룹 b : 파일 시스템에서 첫 번째 블록 그룹이 아닌 블록 그룹으로 그룹 0 패딩, 슈퍼블록, 그룹 디스크립터가
없고, 바로 데이터 블록 비트맵으로 시작한다.
4) 그룹 0패딩, 슈퍼블록, 그룹 디스크립터와 GDT 예약 블록
5) 데이터 블록 비트맵과 inode 비트맵, inode 테이블과 데이터 블록
3. 한 파일 시스템으로 구성하기
1) 디렉터리 계층 구조에서 보이는 모든 디렉터리와 파일을 하나의 파일 시스템으로 구성
4. 여러 파일 시스템으로 구성하기
1) 디렉터리 계층 구조를 여러 파일 시스템으로 구분하여 구성
2) 이 경우 일부 파일 시스템에 문제가 생기더라도 다른 파일 시스템의 파일은 안전하다.
(실무에선 /swap /proc /home /tmp /usr 과 같이 안전성의 이유로 파일 시스템을 나누는 경우가 많다)
마운트
1. 마운트
파일 시스템을 디렉터리 계층 구조의 특정 디렉터리와 연결하는 것
2. 마운트 포인트
디렉터리 계층 구조에서 파일 시스템이 연결되는 디렉터리를 마운트 포인트라 부른다.
/etc/fstab 파일에서 부팅 시 파일 시스템이 자동으로 마운트 될 수 있도록 설정한다.
장치명 : /dev/mapper/cl-root
마운트 포인트 : /
파일시스템 종류 : xfs
옵션 : defaults
덤프 관련 설정 : 0 (0 : 덤프 불가, 1 덤프 가능)
파일 점검 옵션 : 0 (0 : 부팅시 fsck 안함, 1 : 루트 파일 시스템, 2: 루트 파일 시스템 이외)
1) 덤프관련 설정은 백업 개념이고, 사용하면 속도가 느려져 대부분 사용하지 않는다.
2) 파일점검 옵션에서 fsck 안함의 의미는 부팅할 때 마운트 걸 파일시스템의 오류를 체크하지 않는다는 뜻이다. 차례로 루트파일 시스템이 존재한다면 점검하고, 루트 파일 시스템 이외에 정보만 체크한다는 뜻이다.
<파일 시스템 속성 설정 옵션>
'리눅스 기초' 카테고리의 다른 글
리눅스) 디스크 쿼터 설정 (0) | 2022.05.12 |
---|---|
리눅스) 파일 시스템 관리 (mount), 디스크 관리 (0) | 2022.05.12 |
리눅스) 프로세스 관리-2(pgrep, kill, top, jobs, 포그라운드, 백그라운드) (0) | 2022.05.12 |
리눅스 ) 프로세스 관리-1 (ps -ef, ps-aux) (0) | 2022.05.12 |
리눅스) 파일의 접근 권한 (0) | 2022.05.12 |