본문 바로가기
OS/Cent OS

[Cent OS] 파일 시스템 관리

by 티옌.liy 2017. 1. 24.

파일 시스템 관리


1. 개념

- 파일이나 자료를 쉽게 발견 및 접근 할 수 있도록 보관 또는 조직하는 체제

- 파일 저장 및 검색을 용이하도록 유지/관리하며 빠르게 읽고 사용할 수 있도록 만들어놓은 규칙



2. 시스템 종류

2.1 EXT3 ( Extended 3 File System )


2.2 EXT4 ( Extended 4 File System )

2.2.1 개념

- 최대 1EB 크기의 파일 시스템과 최대 16TB 파일 크기를 지원한다.

- 약 서브디렉토리 64000개와 지원파일 40억개 수용 가능


2.2.2 EXT4 파일 시스템의 구조

 Boot Sector 과 Block Group로 구분한다.


Boot Sector

 부트로더( GRUB )가 저장된다.


Block Group

 슈퍼블록

 그룹 디스크립터 테이블

 블록 비트맵

 아이노드 비트맵

 아이노드 테이블

 데이터 블록



2.3 XFS


2.4 IS09660



3. 디스크 종류

3.1 IDE

3.2 SATA

3.3 SCSI

3.4 SAS



4. 명령어


  4.1  mkfs ( make Filesystem )  :  파일 시스템 생성

  형식 : mkfs [ 옵션 ] [ 장치명 ]

  -t  :  파일 시스템의 타입을 지정하는 옵션


  Ex) /dev/sdb1 파티션을 ext4 파일 시스템으로 사용할때

# mkfs -t ext4 /dev/sdb1

( ext4 파일 시스템을 적용하였으므로, 이제 dev/sdb1을 사용할 수 있게 되었다. )



  4.2 mount
4.2.1 개념
  특정 디렉토리에 파일 시스템을 탑재하는것.
  리눅스는 파일 단위로 모든 장치를 관리하기 때문에, 새로만든 파일 시스템을 사용하기 위해선
  생성된 디스크 장치를 임의의 디렉토리 마운트 시켜서 사용해야 한다.
4.2.2  명령어
mount -  현재 시스템에 마운트된 파티션 정보 확인
형식 : mount [ 파티션이름] [ 마운트 포인트 ]
   mount -t [ 유형 ] -o [ 옵션 ] [ 파티션이름 ] [ 마운트 포인트 ]

mount pint - 파일시스템을 디렉토리 연결시켜야 한다. 이때 연결되는 디렉토리를 mount point라 한다.

4.2.3  마운트 과정

1. 마운트 포인트 생성 ( # mkdir )


4.2.4  /etc/fstab
부팅시 마운트할 파일 시스템의 위치 및 설정 정보가 정의된 파일이다.
이 파일에 기록되어 있는 순서대로 마운트가 되어 디렉토리 구조가 만들어진다.


/etc/fstab 필드
1번 필드 - 파일 시스템 장치 이름
파일시스템 장치명은 곹 파티션의 위치이며, 장치명 도는 Label, UUID를 사용한다.

2번 필드 - 마운트 포인트
등록할 파티션이 어디에 위치한 디렉토리에 연결한것인지 설정하는 필드
마운트할 디렉토리 경로

3번 필드 - 파일시스템의 종류
파티션 생성 후 만들었던 파일시스템의 종류를 써주는 필드   Ex) ext4

4번 필드 - 마운트 옵션
- default
- rw
- suid
- dev
- exec
- auto
- nouser
- async

5번 필드 - 덤프 생성 유무
덤프(백업) 실행 유무를 설정하는 필드

옵션
- 0 덤프 기능 : DISABLE
- 1 덤프 기능 : ENABLE

6번 필드 - 파일 시스템 체크
fsck에 의한 우결성 검사 우선순위를 정하는 필드

옵션
- 0 : 무결성 검사 X
- 1 : 우선순위 1위를 뜻한다. 대부분 root 파티션에 설정한다.
- 2 : 우선순위 2위를 뜻한다. 1순의 검사후 진행할 파티션에 설정한다.

4.3  UUID  범용 고유 식별자

하드 디스크 추가 또는 제거시 디스크 장치명이 종종 변경될때가 있다. 이때 /etc/fstab에서
장치 명으로 명시하게 되면 해당 장치명이 변경됬을때 인식하지 못하여 부팅이 안될수 있다.
그러므로, 각 디스크 파티션마다 고유한 ID값으로 명시해주면, 장치명이 바껴도 인식할 수 있다.

4.3.1  명령어

 # blkid  : UUID 확인



5. /proc 파일 시스템

부팅될 때 커널에 의해 생성되는 가상 파일 시스템이다.

각종 시스템과 네트워크에 관련된 정보들을 포함하고 있다.

대표적으로, 메모리, 파티션


version - 커널버전

kmsg - 커널 메세지

meminfo - 메모리정보

mounts - 마운트 정보


6. free  : 시스템의 메모리 및 swap 메모리 출력


-m : 메가 바이트 단위 출력

-g : 기가 바이트 단위 출력







파티션


1. 개념

  하나의 물리적인 하드디스크를 여러개의 논리적인 디스크로 나누는것


2. 종류

2.1 SWAP 파티션

  하드 디스크 영역을 메모리처럼 사용하기 위해 만든 파티션이다.

  메모리의 용량이 부족할경우 하드디스크를 사용하여 메모리 예비 공간 역할을 한다.



여담]  레드햇 권고


2.2 리눅스 파티션

  주 파티션과 학장 파티션, 논리 파티션으로 구분된다.

  디스크 1개당 주 파티션 4개 생성 가능

  그 이상 파티션이 필요할땐, 확장 파티션을 생성

  확장 파티션은 논리 파티션으로 나눌수 있고 최대 12개 생성 가능



3. 파티션의 명칭


[ 주 파티션으로 구성할때 ]


1번 디스크 -> /dev/sda

2번 디스크 -> /dev/sdb

3번 디스크 -> /dev/sdc


sd 뒤에 영어로 구분한다.




1번 Diks의 2개 주 파티션으로 구성했을때.

/dev/sda1

/dev/sda2


sda(영어) 뒤에 숫자로 구분한다.




[ 확장 파티션으로 구성할 때 ]


Ex )  1개의 디스크로 6개의 파티션을 구성할때.


1번 디스크 : /dev/sda


/dev/sda1 (주)

/dev/sda2 (주)

/dev/sda3 (주)

/dev/sda5 (확장)        // 데이터를 저장하지 않음.

/dev/sda6 (논리)

/dev/sda7 (논리)



4. 파티션 명령어

4.1 df ( DiskFree ) - 파일 시스템 및 파티선별 자세한 용량 확인

- a : 모든 파일 시스템 출력

- i : inode 정보 출력

- h : 용량을 읽기 쉽게 출력


4.2 du - 특정 디렉토리나 파일 용량을 확인


4.3 fdisk - 파티션 생성, 수정

형식 : fdisk [ Disk명 ]


-l : 디스크 파이션 정보 출력 

   d   delete a partition            // 파티션 삭제

   n   add a new partition        //  파티션 추가

   p   print the partition table    // 파티션 정보 출력

   t   change a partition's system id      // 파티션 타입 변경

   w   write table to disk and exit        // 저장 후 종료




새 디스크 추가 --> 파티션 생성(fdisk) --> 파일시스템 생성(mkfs) ---> 디스크 사용준비 완료!



[ 실습 ]


16GB 디스크 2개 추가.


1번 DISK 파티션 정보                마운트 정보

주 파티션1 - 150M                /practice/day/mount_1

주 파티션2 - 150M                /practice/day/mount_2

주 파티션3 - 150M                /practice/day/mount_3

확장 파티션

논리 파티션1 - 150M        /practice/day/mount_4

논리 파티션2 - 나머지       /practice/day/mount_5



# fdisk /dev/sdb            // 1번 디스크 파티션 생성


그후 파티션 정보에 맞게 설정하며 생성하기


( 1번 디스크의 파티션을 정보에 맞게 생성중 .... )


# mkdir /practice/day14/mount_{1..5}        // 디렉토리 mount_1~5 생성

# mount /dev/sdb1 mount_1

.....

# mount /dev/sdb6 mount_5                    // 마운트


( 마운트를 적용한 1번 디스크 )




swap 파티션 추가 방법



'OS > Cent OS' 카테고리의 다른 글

쿼터(Quota) - 사용자 공간 할당  (0) 2017.02.04
디스크 고장 및 복구  (0) 2017.02.04
파일 시스템 관리 #2  (0) 2017.01.25
프로세스 #2  (0) 2017.01.23
프로세스  (0) 2017.01.22
속성  (0) 2017.01.21

댓글