[Linux] Disk Management

조성열·2025년 9월 26일

Toss - Linux

목록 보기
5/15
post-thumbnail

디스크는 하드웨어 스토리지로 리눅스 커널에 인식 시켜 사용한다. 디스크를 인식 시킨 것만으로는 바로 사용할 수 없고, 디스크 영역을 설정하는 파티셔닝 작업을 완료 해야 사용 가능하다. 파티셔닝은 내부 파일시스템을 생성하는 과정을 의미한다.


Disk Partition

파티션은 물리적 디스크를 나누는 단위이고, 각 파티션은 개별적으로 관리되어 독립적으로 사용 가능하다.
x86에서 디스크 파티션 구성은 MBR(Master Boot Record), GPT(GUID Partition Table) 두 가지 방식이 있다.

MBR(Master Boot Record)

1980년대 IBM PC 호환 컴퓨터의 보급을 위해 사용된 방식이다. 최근에도 많이 사용된다.
MBR 파티션이 제공하는 기능은 다음과 같다.
1. 디스크 전체 파티션 레이아웃을 파티션 테이블에 저장한다.
2. 부팅 가능한 파티션에 대한 정보를 가지고 있음
3. 부팅에 사용되는 부트코드를 가지고 있음
이러한 기능 제공을 위해 첫 번째 섹터(Sector)를 사용한다. 첫 번째라는 것은 LBA(Logical Block Address)의 0번째 주소를 의미한다.
MBR 방식에서 전체 파티션 테이블에 64byte만큼 할당하고 각각 16byte씩 4개로 구성한다.
파티션 테이블에 담겨 있는 정보는 다음과 같다.

  • 파티션 정보 (부팅 가능 여부)
  • 파티션의 첫 번째 섹터 주소(CHS)
  • 파티션 종류
  • 파티션의 마지막 섹터 주소(CHS)
  • 파티션의 첫 번째 섹터 주소(LBA) - 4byte
  • 파티션의 섹터 개수 - 4byte
    위 구성 중 마지막 두 항목 파티션의 첫 번째 섹터 주소(LBA), 파티션의 섹터 개수를 이용해 디스크에서 해당 파티션의 위치를 알 수 있다.
    MBR 파티션은 최대 4개의 테이블로 구성할 수 있고, 확장 파티션을 사용해 4개 이상을 사용할 수도 있다.
    하지만 섹터 주소를 4byte로 저장하기 때문에 디스크 최대 크기 제한이 발생한다. 일반적으로 한 개 섹터는 512byte이므로 4byte로 지정할 수 있는 최대 섹터 개수는 2^32 용량으로 환산하면 2TB정도다.

GPT(GUID Partition Table)

GPT는 EFI의 일부 포함된 디스크 파티션 테이블 레이아웃 표준이다. MBR과 주요 차이점은 다음과 같다.

  • 파티션 테이블 개수가 128개로 증가, 테이블 당 128byte씩 사용
  • 섹터 주소를 64bit으로 저장하여 최대 8ZB 디스크 사용 가능
  • 중요 데이터를 디스크 마지막 부분에 복제 >> 백업 용도
    BIOS 펌웨어는 MBR 밖에 인식 못하기 때문에 EFI/UEFI 방식의 펌웨어를 지원해야 GPT 사용이 가능하다.

디스크 연결 인터페이스

디스크를 시스템 연결시 사용하는 방식을 연결 인터페이스라고 한다. 디스크 개수, 통신 속도, 시스템 구동 중 인식에 따라 기능이 다르게 동작한다.

E-IDE (Enhanced - Integrated Drive Electronics)/ATA(Advanced Technology Attachment)

1990 ~ 2000년대 초반에 사용된 방식으로 현재는 SATA(Serial ATA) 방식으로 대체됐다.
핫플러깅 기능을 지원하지 않기 때문에 시스템 구동중 디스크 추가/제거 작업을 하게 되면 문제가 발생한다.
master-slave 구조로 연결하여 디스크를 구분한다.

Hot Plugging

컴퓨터 전원이 켜진 상태에서 시스템을 종료하지 않고 장치 연결, 분리할 수 있는 기능

SATA(Serial ATA)

ATA-7 규격에 해당하고 SATA1 ~ 3까지 세부 규격을 지원 속도를 기준으로 나눈다. ATA와 달리 핫 플러깅을 지원하여 장치 연결 및 제거에 자유롭다.


Linux 스토리지 장치

디스크 연결 후 생성된 장치 파일명을 사용하여 파티셔닝을 수행한다. 장치는 인터페이스별로 다르게 설정되고 알파벳 또는 숫자를 사용하여 구분한다. 디스크 파티셔닝은 fdisk(x86 MBR), gdisk(GPT), parted 같은 도구를 사용한다. 파티션 구성시 주의할 점은 파티션끼리 일부 영역이 겹치게 설정되면 데이터 기록 시 문제가 될 수 있다.

profile
Blue Team

0개의 댓글