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 파티션 테이블 생성#
fdisk
의 g
옵션은 디스크에 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
옵션 사용법#
fdisk
실행: 먼저fdisk
명령을 사용하여 디스크 장치를 선택하고 실행합니다.
sudo fdisk /dev/sdX # 'X'는 대상 디스크 (예: /dev/sda)
- GPT 파티션 테이블 생성:
fdisk
명령이 실행되면g
명령을 입력하여 기존 파티션 테이블을 GPT로 변경할 수 있습니다.
Command (m for help): g
이 명령을 입력하면 디스크에 새 GPT 파티션 테이블이 생성됩니다.
- 확인 메시지: GPT로 변환하면 기존의 모든 데이터와 파티션이 삭제된다는 경고 메시지가 나타날 수 있습니다. 작업을 계속 진행하려면 확인을 해야 합니다.
Created a new GPT disklabel (GUID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX).
이제 해당 디스크는 GPT 파티션 테이블을 사용하게 됩니다.
GPT 파티션 생성 후#
GPT 파티션 테이블을 생성한 후에는 일반적인 fdisk
명령어와 동일하게 사용할 수 있습니다:
- 새 파티션 생성:
n
명령어로 새 파티션을 생성합니다. - 파티션 삭제:
d
명령어로 파티션을 삭제합니다. - 변경 사항 저장: 작업이 완료되면
w
명령어로 저장하고fdisk
를 종료합니다.
fdisk
의 t
옵션은 파티션 유형을 변경하는 명령입니다. 파티션 유형은 해당 파티션이 어떤 목적으로 사용될지 정의하는 코드로, 운영 체제와 파일 시스템이 이 정보를 기반으로 적절한 처리를 수행합니다.
예를 들어, 리눅스에서 많이 사용하는 파티션 유형은 Linux 파일 시스템(일반적으로 83
코드)이며, 스왑 파티션은 Linux swap(일반적으로 82
코드)으로 설정됩니다.
t
옵션 사용법#
fdisk
실행:
먼저fdisk
명령으로 디스크를 선택하고 실행합니다.
sudo fdisk /dev/sdX # 'X'는 대상 디스크 (예: /dev/sda)
- 현재 파티션 테이블 확인:
현재 파티션 테이블을 확인하려면p
명령어를 입력합니다.
Command (m for help): p
여기서 현재 디스크에 어떤 파티션이 있는지 확인할 수 있습니다. 각 파티션에는 "Id" 열에 파티션 유형이 표시됩니다.
- 파티션 유형 변경:
t
명령어를 입력하여 특정 파티션의 유형을 변경할 수 있습니다.
Command (m for help): t
먼저 변경할 파티션 번호를 묻는 메시지가 표시됩니다. 예를 들어 1번 파티션의 유형을 변경하려면 1
을 입력합니다.
Partition number (1-4): 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'.
- 변경 사항 저장:
파티션 유형을 변경한 후에는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번 파티션의 유형을
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
- 이후, 변경 사항을 저장하려면:
Command (m for help): w