Skip to content

fdisk 사용 방법

fdisk는 리눅스에서 주로 사용하는 디스크 파티션 관리 도구입니다. fdisk는 특히 MBR(Master Boot Record) 파티션 테이블을 관리하는 데 자주 사용되지만 GPT(GUID Partition Table)도 관리할 수 있습니다. 여기서는 파티션을 나누고 디스크를 포맷하는 데 필요한 기본적인 fdisk 사용법을 설명하겠습니다.

1. fdisk 실행하기#

먼저, 디스크 장치 목록을 확인한 후 fdisk를 실행해야 합니다.

lsblk

또는

fdisk -l

위 명령어를 사용하여 시스템에 연결된 디스크와 파티션을 확인할 수 있습니다. 디스크가 /dev/sda, /dev/sdb 등으로 나타납니다.

sudo fdisk /dev/sdX  # 여기서 'X'는 관리하고자 하는 디스크의 장치 이름입니다 (예: /dev/sda).

2. 현재 파티션 테이블 확인#

fdisk가 실행되면 명령어 모드로 진입합니다. 먼저 현재 파티션 상태를 확인하려면 p 명령어를 입력합니다.

Command (m for help): p

이 명령어는 디스크의 파티션 정보를 출력합니다.

3. 새 파티션 생성하기#

새로운 파티션을 생성하려면 n 명령어를 사용합니다.

Command (m for help): n

n을 입력하면 새 파티션을 생성하는 대화형 옵션이 나타납니다:

  • Primary or Extended Partition: 기본(primary) 파티션 또는 확장(extended) 파티션을 선택합니다. 보통은 기본 파티션(p)을 선택합니다.
  • 파티션 번호: 파티션 번호를 지정합니다 (보통 1에서 4 사이).
  • 시작 섹터: 시작 섹터를 지정합니다. 기본값을 사용하려면 그냥 Enter를 누르면 됩니다.
  • 끝 섹터 (또는 파티션 크기): 끝 섹터를 지정하거나 +100G와 같이 크기를 지정합니다. 예를 들어, +20G는 20GB의 파티션을 생성합니다.

4. 파티션 삭제하기#

기존 파티션을 삭제하려면 d 명령어를 사용합니다.

Command (m for help): d

파티션 번호를 선택하여 삭제할 수 있습니다.

5. 변경 사항 저장하기#

파티션 테이블을 수정한 후, 변경 사항을 디스크에 저장하려면 w 명령어를 사용합니다. 이 명령어는 파티션 테이블을 쓰고 fdisk를 종료합니다.

Command (m for help): w

만약 변경 사항을 저장하지 않고 종료하려면 q 명령어를 사용하여 종료합니다.

Command (m for help): q

6. 파일 시스템 포맷하기#

새로 만든 파티션을 사용하려면 해당 파티션을 포맷해야 합니다. 일반적으로 mkfs 명령어를 사용하여 파일 시스템을 생성합니다.

  • ext4 파일 시스템으로 포맷하기:
sudo mkfs.ext4 /dev/sdX1  # X는 디스크 장치, 1은 파티션 번호
  • xfs 파일 시스템으로 포맷하기:
sudo mkfs.xfs /dev/sdX1

이 명령어를 실행하면 해당 파티션이 지정된 파일 시스템으로 포맷됩니다.

7. 파티션 마운트#

포맷이 완료되면 해당 파티션을 마운트하여 사용할 수 있습니다. 마운트할 디렉터리를 만들고 mount 명령어를 사용합니다.

sudo mkdir /mnt/my_partition
sudo mount /dev/sdX1 /mnt/my_partition

8. 부팅 시 자동 마운트 설정#

파티션을 매번 수동으로 마운트하지 않으려면 /etc/fstab 파일에 자동 마운트 설정을 추가할 수 있습니다. blkid 명령어로 파티션의 UUID를 확인한 후 /etc/fstab에 다음과 같이 추가합니다:

sudo blkid /dev/sdX1

sudo nano /etc/fstab

# 아래와 같은 형식으로 라인 추가
UUID=your-uuid-from-blkid  /mnt/my_partition  ext4  defaults  0  0

9. GPT 파티션 테이블 생성#

fdiskg 옵션은 디스크에 GPT(GUID Partition Table)를 사용하는 파티션 테이블을 생성하는 명령입니다. GPT는 MBR(Master Boot Record)보다 더 현대적인 파티션 방식으로, 더 큰 디스크 크기 지원과 더 많은 파티션을 만들 수 있는 장점이 있습니다.

GPT란?#

GPT는 다음과 같은 장점이 있습니다: - 디스크 크기 제한: GPT는 매우 큰 디스크를 지원하며, 최대 9.4 ZB(제타바이트)까지 사용할 수 있습니다. - 파티션 개수: MBR은 최대 4개의 기본(primary) 파티션만 지원하지만, GPT는 이론적으로 수천 개의 파티션을 지원합니다. - 데이터 무결성: GPT는 파티션 테이블에 대한 CRC32 체크섬을 사용해 데이터 손상을 감지하고, 백업된 파티션 테이블을 보관합니다.

MBR을 사용하는 디스크는 보통 2TB 이상의 용량을 지원하지 못하며, 4개의 파티션 제한이 있습니다. 따라서 더 큰 디스크나 많은 파티션을 필요로 하는 경우 GPT를 사용해야 합니다.

g 옵션 사용법#

  1. fdisk 실행: 먼저 fdisk 명령을 사용하여 디스크 장치를 선택하고 실행합니다.
sudo fdisk /dev/sdX  # 'X'는 대상 디스크 (예: /dev/sda)
  1. GPT 파티션 테이블 생성: fdisk 명령이 실행되면 g 명령을 입력하여 기존 파티션 테이블을 GPT로 변경할 수 있습니다.
Command (m for help): g

이 명령을 입력하면 디스크에 새 GPT 파티션 테이블이 생성됩니다.

  1. 확인 메시지: GPT로 변환하면 기존의 모든 데이터와 파티션이 삭제된다는 경고 메시지가 나타날 수 있습니다. 작업을 계속 진행하려면 확인을 해야 합니다.
Created a new GPT disklabel (GUID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX).

이제 해당 디스크는 GPT 파티션 테이블을 사용하게 됩니다.

GPT 파티션 생성 후#

GPT 파티션 테이블을 생성한 후에는 일반적인 fdisk 명령어와 동일하게 사용할 수 있습니다:

  • 새 파티션 생성: n 명령어로 새 파티션을 생성합니다.
  • 파티션 삭제: d 명령어로 파티션을 삭제합니다.
  • 변경 사항 저장: 작업이 완료되면 w 명령어로 저장하고 fdisk를 종료합니다.

fdiskt 옵션은 파티션 유형을 변경하는 명령입니다. 파티션 유형은 해당 파티션이 어떤 목적으로 사용될지 정의하는 코드로, 운영 체제와 파일 시스템이 이 정보를 기반으로 적절한 처리를 수행합니다.

예를 들어, 리눅스에서 많이 사용하는 파티션 유형은 Linux 파일 시스템(일반적으로 83 코드)이며, 스왑 파티션은 Linux swap(일반적으로 82 코드)으로 설정됩니다.

t 옵션 사용법#

  1. fdisk 실행:
    먼저 fdisk 명령으로 디스크를 선택하고 실행합니다.
sudo fdisk /dev/sdX  # 'X'는 대상 디스크 (예: /dev/sda)
  1. 현재 파티션 테이블 확인:
    현재 파티션 테이블을 확인하려면 p 명령어를 입력합니다.
Command (m for help): p

여기서 현재 디스크에 어떤 파티션이 있는지 확인할 수 있습니다. 각 파티션에는 "Id" 열에 파티션 유형이 표시됩니다.

  1. 파티션 유형 변경:
    t 명령어를 입력하여 특정 파티션의 유형을 변경할 수 있습니다.
Command (m for help): t

먼저 변경할 파티션 번호를 묻는 메시지가 표시됩니다. 예를 들어 1번 파티션의 유형을 변경하려면 1을 입력합니다.

Partition number (1-4): 1
  1. 파티션 유형 선택:
    파티션 번호를 선택하면, 새로운 유형 코드를 입력하라는 메시지가 나타납니다. L을 입력하면 사용할 수 있는 파티션 유형 목록이 나타납니다.
Command (m for help): L

이 명령어는 모든 유형 코드를 나열합니다. 목록에서 적합한 코드를 찾아 입력합니다. 예를 들어, 리눅스 파일 시스템 파티션 유형은 83, 리눅스 스왑 파티션은 82입니다.

Hex code (type L to list all codes): 83
Changed type of partition 'Linux' to 'Linux'.
  1. 변경 사항 저장:
    파티션 유형을 변경한 후에는 w 명령어로 변경 사항을 저장하고 fdisk를 종료해야 합니다.
Command (m for help): w

이 명령어를 사용하면 변경 사항이 디스크에 저장되고 fdisk가 종료됩니다.

주요 파티션 유형 코드#

여기 몇 가지 중요한 파티션 유형 코드를 소개합니다:

  • Linux 파일 시스템: 83
  • Linux swap: 82
  • EFI 시스템 파티션 (GPT 사용 시): EF
  • Windows FAT32: 0C
  • Linux LVM: 8E
  • Linux RAID: FD

예시#

  1. 1번 파티션의 유형을 Linux swap으로 변경하고 싶다면:
sudo fdisk /dev/sdX
Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list all codes): 82
  1. 이후, 변경 사항을 저장하려면:
Command (m for help): w