728x90
반응형
Parted 란?
- 마스터 부트 레코드(MBR)은 32bit PC-BIOS 파티션 테이블을 사용
(32bit 파티션 테이블을 사용하므로 파티션 하나의 최대크기는 2TB로 제한되며 드라이브당 Primary 파티션은 4개만 가질 수 있다)
- 확장 파티션 Extend Partition은 primary partition의 갯수 제한을 극복하기 위해 나온 방법이지만 해당 방법을 해결하기 위해 GPT (GUID) 파티션 테이블이 개발
- 기본적으로 linux partition은 msdos label을 갖고 사용한다. 이것은 2TB 이상을 넘겨서 사용할수가 없다. 64bit OS라도 사용불가
물론 이것은 linux (i386, x86_64에서 말하는것) 즉, fdisk는 2TB 이상의 cylinder를 컨트롤 할수가 없다는 뜻이다.
- parted는 설정과 동시에 디스크에 기록된다. fdisk에서 w를 눌렀을 때 저장되는 것과 다르다.
(fdisk의 경우 실행시에 Memory 상에서 올라가 실행되기 때문에 저장이 되더라도 disk에 기록되는것이 아닌 Memory에 기록이 된다. 하지만 parted는 바로 disk에 기록)
- parted는 블럭 단위가 아닌, MB단위로 입력한다.
- Tip
기존 디스크 파티션 작업을 위한 표준 명령어로는 fdisk가 있다. 그러나 fdisk는 현재 새로운 GPT 파티션을 지원하지 못하기 때문에 사용빈도가 줄어들 것,
대신 적극적으로 지원받고 있는 새로운 명령어인 parted가 부각되고 있다. GPT 처리는 gdisk 로도 가능 (참고로 gparted는 gui모드에서 사용)
parted 사용법
설치
# yum install parted
사용법
# parted [옵션] 장치 [명령어 [옵션]]
# partprobe
- 커널이 파티션 정보를 다시 읽도록 한다
명령어
# check 파티션번호 : 단순하게 파티션을 점검
# cp [소스장치] 소스파티션 대상파티션 : 소스장치의 소스파티션의 데이터를 대상파티션에 복사
# move 파티션번호 START END : 파티션번호를 변경
# help [명령어] : 명령어들의 도움말을 얻을 수 있다.
# mkfs 파티션번호 파티션타입 : 파티션에 파일 시스템을 만든다
파티션타입 : ext2, fat 지원
# mklabel 레벨타입 : 디스크 라벨을 설정
레벨타입 : bsd, gpt, loop, mac, mips, msdos, pc98, sun 지원
(일반적으로 msdos이며, 2TB이상 사용하기 위해서 gpt를 사용)
# mkpart 파티션타입 [파일시스템 타입] 시작 끝 : 파티션을 나눈다.
파티션타입 : primary, logical, extedned
파일시스템 타입 : ext2, fat등을 넣는데 안 넣어도 상관없다.
시작 : 시작 MB
끝 : 끝 MB
# mkpartfs 파티션타입 [파일시스템 타입] 시작 끝 : 파티션을 나누고 파일시스템 생성
파티션타입 : primary, logical, extedned
파일시스템 타입 : ext2, fat, fat32 지원
시작 : 시작 MB
끝 : 끝 MB
# move 파티션번호 시작 끝 : 파티션의 시작과 끝을 이동시킨다. 파티션 번호는 변경되지 않는다.
( ext2, fat, fat32지원, 확장 및 이전시 데이터는 살아 있다.)
# name 파티션번호 이름 : 파티션에 이름을 설정한다.
( 이 옵션은 Mac, PC98에서만 사용된다.)
# print : 파티션번호 테이블을 보여준다. (p만 눌러도 된다.)
# quit : parted 모드에서 빠져 나온다.
# resize 파티션번호 시작 끝 : 파티션 용량을 늘리고, 줄인다.
(ext2, fat, fat32에서만 가능)
# rm 파티션번호 : 파티션 삭제
# select 장치명 : 장치명 선택 (장치 변경시 사용)
# set 파티션번호 플레그 상태 : 파티션의 플레그의 상태를 변경한다.
플레그 : boot, root, swap, hidden, raid, lvm, lba, palo
상태 : on 또는 off
옵션
-l : 모든 블록 장치에 파티션 레이아웃을 보여준다.
-m : 내용을 각 정보마다 출력시켜주어 분석할 수 있음
- s : 프롬프트를 출력시키지 않고 실행
※ user interactive란 대화형 명령어인데, 아래의 예제처럼 사용자가 명령을 내릴 때 추가입력이 필요할 경우 설명이 나타나고
사용자는 거기에 대한 명령어를 다시 내리는 형태의 대화형 명령어를 user interactive라고 한다.
※ non interactive 과정은, 여러 인자를 통하여 한번에 명령을 내려서 추가 입력하는 과정이 없다.
- a : 새 파티션을 정렬
GPT Partition 사용가능 여부 체크
# cat /boot/config-2.6.32-431.el6.x86_64 | grep EFI
CONFIG_EFI=y
CONFIG_FB_EFI=y
CONFIG_EFI_VARS=y
CONFIG_EFI_PARTITION=y
위 내용들이 모두 "y" 값을 가지고 있어야 시스템에서 GPT 파티션을 지원하는 것
GPT Partition 생성
파티션 확인
# fdisk -l
파티션 생성
1) parted 명령 실행
# parted /dev/sdb
2) 파티션에 라벨 생성
# mklabel gpt
파티션 테이블이 unknown -> gpt로 변경
3) 파티션 설정
# mkpart primary 2048s 2000GB
# mkpart primary 2000GB 100%
※ 첫번째 파티션 영역이 2048s부터 시작하는 이유
현재의 Disk는 LBA(논리 블록 어드레스) 방식으로 접근한다. 이 방식은 Disk의 전체 섹터에 0부터 섹터번호를 붙여 그 번호를 이용하여 섹터에 접근하는 방식이다.
섹터 번호와 물리적 섹터 위치를 짝 짓는 일은 Disk Controller에 내장된 펌웨어가 담당한다. 실제 파티션은 섹터 번호로 구분된 범위인데
1번 파티션은 2048섹터부터 시작한다. 이유는 0번 섹터에는 MBR이 위치하고 1~2047 섹터까지는 Grub의 스테이지가 기록되기 때문이다.
그렇기에 실제적으로 첫번째 파티션의 용량을 parted로 설정할때 시작 위치는 2048s로 시작되어야 한다. 그렇지 않은 경우 아래와 같은 메시지를 띄운다.
Warning: The resulting partition is not properly aligned for best performance. 이런 경고 메시지를 띄우는데
해당 메시지는 파티션이 최상의 성능을 위해 정렬되지 않았다고 하는 내용이다.
※ Tip
- 기본 용량은 MB로 설정되기때문에 GB단위로 설정하려면 GB를 붙여줘야 한다
- 하나의 파티션에 모든 용량을 사용하려면 # mkpart primary 0 100% 로 해도 된다
- 만약 첫 파티션에을 0 100GB까지 지정하였다면 두번째 파티션은 100GB 시작해야한다. 그렇지 않으면 첫 파티션 공간에 덮어쓰게되므로 오류
예전의 Disk의 경우 512바이트의 섹터를 가졌지만 현재는 4096바이트의 섹터를 가지고 있다.
실습에 표시된 시작 파티션용량 1049KB는 현재 4096바이트 크기의 섹터를 가진 Disk에서 0~2047섹터까지 크기를 KB로 표시한 것이다.
섹터의 크기가 달라지면 시작파티션 KB의 크기 또한 변경된다.
섹터의 크기를 알아보려면 parted의 표시단위를 변경하는 명령어를 사용한다.
# unit s (용량 단위를 섹터로 표시)
# unit KB or MB (용량단위를 섹터 또는 KB,MB로 표시)
파티션 정렬 확인
# align-check optimal 1 (1번 파티션)
# align-check optimal 2 (2번 파티션)
파티션의 정렬이 정상적으로 구성된 경우는 위와 같이 표시되며 비정상적으로 구성된 경우 아래와 같이 표시된다.
참조 URL : https://star4u.org/blog/?p=480
파티션 포맷
#mkfs.ext4 /dev/sda1
#mkfs.ext4 /dev/sda2
파티션 마운트
# mount -t ext4 /dev/sda1 /data1
# mount -t ext4 /dev/sda2 /data2
GPT Partition으로 LVM 구성
참조 URL : http://gentooboy.tistory.com/263
GPT Partition 기타 예제
반응형
'Linux' 카테고리의 다른 글
Linux LVM snapshot LV로 백업 및 복구 (0) | 2018.08.08 |
---|---|
Linux Parted를 통한 Standard Partition 확장 (0) | 2018.08.08 |
Linux LVM striped mapping LV로 묶기 (0) | 2018.08.08 |
Linux LVM 설정의 백업과 복구 (0) | 2018.08.08 |
Linux LVM 새로운 Disk로 PV 교체 (0) | 2018.08.08 |