-
Rocky9: Storage 관리(Parted)공부합시다!/LInux 2023. 2. 14. 00:12728x90
물리적인 Disk를 사용하기 위해서는 반드시 1개 이상의 Partition이 필요합니다.
이를 파티셔닝이라 하며 여러가지 이점을 제공합니다. - 물론 이전 시간에는 fdisk, gdisk등을 활용했습니다.
- App 또는 User가 사용할 수 있는 공간을 제한.
- 사용자 파일에서 OS와 Program File을 구분.
- swap memory을 위해 별도 영역을 생성.
- 디스크 공간 사용을 제한하여 진단 도구 및 백업 이미징의 성능을 향상.
오늘은 parted를 이용해서 파티셔닝 하는 작업을 학습합니다.
1. MBR
2. GPT
3. Parted
순서로 진행을 합니다.
# Firmware:
특정 하드웨어 장치에 포함된 소프트웨어,
소프트웨어를 읽어 실행하거나 수정도 가능한 영구적 소프트웨어
# BIOS(Basic Input/Output System):
운영 체제 중 가장 기본적인 소프트웨어이자 컴퓨터의 입출력을 처리하는 펌웨어다.
컴퓨터가 시작되면 실행되는 프로그램 주변 장치(하드웨어)와 컴퓨터 운영 체제(소프트웨어) 사이의 데이터의 흐름을 관리.
펌웨어(firmware)의 한 종류로서 IBM호환 컴퓨터의 경우에 전원이 공급되면 시작되는 부팅 절차에서 하드웨어 초기화를 수행하고, 운영체제나 응용 프로그램에게 런타임 서비스(컴퓨터 프로그램의 실행을 지원하는 서비스)를 제공
1. MBR(Master Boot Record)
1.1. BIOS 펌웨어를 실행하는 시스템의 표준
1.2. 스키마는 최대 네 개의 주 파티션을 지원.
1.3.Linux 시스템에서는 확장 및 논리 파티션을 사용하여 최대 15개의 파티션을 생성
1.3.1. 4개의 Primary, 이중 오로지 하나만 Extended partiton -> 12개의 Logical Partition 생성 가능
1.4. 파티션 크기가 32비트인 경우 MBR로 파티셔닝되는 디스크 크기는 최대 2TiB
2. GPT(GUID Partition Table)
2.1. UEFI(Unified Extensible Firmware Interface) 펌웨어를 실행하는 시스템의 경우 GPT는 디스크 파티셔닝 표준
2.2. 최대 128개의 파티션을 제공
2.3. 논리 블록 주소에 64비트를 할당, 최대 8제비바이트(ZiB) 또는 80억 테비바이트(TiB)의 파티션 및 디스크
2.4.GUID(전역 고유 식별자)를 사용하여 각 디스크와 파티션을 식별
2.5. 기본 GPT를 디스크 헤드에, 백업 보조 GPT를 디스크 끝부분에 배치하여 파티션 테이블을 이중화
2.6. 체크섬을 사용하여 GPT 헤더와 파티션 테이블에서 오류를 감지
3. Parted
3.1. 디스크 확인 및 parted 활용한 파티셔닝
3.1.1. 새 드라이브를 파티셔닝하려면 먼저 디스크 레이블을 작성.
3.1.2. 디스크 레이블은 사용할 파티셔닝 체계를 나타냄.
3.1.3. parted를 사용하여 MBR 디스크 레이블 또는 GPT 디스크 레이블을 작성.
3.1.3.1. mklabel 하위 명령은 기존 파티션 테이블 삭제.
3.1.3.2. 기존 데이터에 관계없이 디스크를 재사용하려는 경우 mklabel 하위 명령을 사용.
3.1.3.3. 새 레이블이 파티션 경계를 변경하는 경우 기존 파일 시스템의 모든 데이터에 액세스할 수 없게 됨.
[root@localhost ~]# lsblk 빈 디스크 확인 [root@localhost ~]# parted /dev/nvme0n2 mklabel gpt Information: You may need to update /etc/fstab. label 지정 후 파티셔닝 [root@localhost ~]# parted /dev/nvme0n2 GNU Parted 3.5 Using /dev/nvme0n2 Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) mkpart 파티션 생성 명령어 Partition name? []? test 파티션 이름 지정 File system type? [ext2]? xfs 파일 시스템 타입 지정, mkfs로 다시 생성해야 함. Start? 2048s 시작 섹터 End? 2GB 끝 섹터 또는 용량 지정 (parted) quit 종료 Information: You may need to update /etc/fstab. [root@localhost ~]# lsblk
[root@localhost ~]# parted /dev/nvme0n2 mkpart test xfs 2048s 2GB
3.2. 파일 시스템 생성
3.2.1. udevadm settle 명령을 실행
3.2.2. 이 명령은 시스템이 새 파티션을 감지하고 /dev 디렉터리 아래에 관련 장치 파일을 생성
[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sr0 11:0 1 1.5G 0 rom nvme0n1 259:0 0 50G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 49G 0 part ├─rl-root 253:0 0 47G 0 lvm / └─rl-swap 253:1 0 2G 0 lvm [SWAP] nvme0n2 259:3 0 10G 0 disk └─nvme0n2p1 259:5 0 1.9G 0 part [root@localhost ~]# udevadm settle [root@localhost ~]# blkid /dev/mapper/rl-swap: UUID="ab92b873-7ebd-468a-a0de-d9fcbddd7f4b" TYPE="swap" /dev/nvme0n1p1: UUID="df99f570-5778-48cf-8775-53860cd7c6c9" TYPE="xfs" PARTUUID="f9ad7bde-01" /dev/nvme0n1p2: UUID="7WqG8S-3hSm-N4nE-2UdL-ihK8-f1Sz-a5NeO3" TYPE="LVM2_member" PARTUUID="f9ad7bde-02" /dev/sr0: UUID="2022-11-19-03-31-31-00" LABEL="Rocky-9-1-x86_64-dvd" TYPE="iso9660" PTUUID="24b3f571" PTTYPE="dos" /dev/nvme0n2p1: PARTLABEL="test" PARTUUID="d4912792-b8b0-4e5f-920a-455ba3b3bbbc" /dev/mapper/rl-root: UUID="fd99346a-7711-4672-9cc7-ca2163c1c2ea" TYPE="xfs"
[root@localhost ~]# mkfs.xfs /dev/nvme0n2p1 meta-data=/dev/nvme0n2p1 isize=512 agcount=4, agsize=121984 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 bigtime=1 inobtcount=1 data = bsize=4096 blocks=487936, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 [root@localhost ~]# blkid /dev/mapper/rl-swap: UUID="ab92b873-7ebd-468a-a0de-d9fcbddd7f4b" TYPE="swap" /dev/nvme0n1p1: UUID="df99f570-5778-48cf-8775-53860cd7c6c9" TYPE="xfs" PARTUUID="f9ad7bde-01" /dev/nvme0n1p2: UUID="7WqG8S-3hSm-N4nE-2UdL-ihK8-f1Sz-a5NeO3" TYPE="LVM2_member" PARTUUID="f9ad7bde-02" /dev/sr0: UUID="2022-11-19-03-31-31-00" LABEL="Rocky-9-1-x86_64-dvd" TYPE="iso9660" PTUUID="24b3f571" PTTYPE="dos" /dev/mapper/rl-root: UUID="fd99346a-7711-4672-9cc7-ca2163c1c2ea" TYPE="xfs" /dev/nvme0n2p1: UUID="88ed1af0-0038-4e35-b018-07f703679cb3" TYPE="xfs" PARTLABEL="test" PARTUUID="d4912792-b8b0-4e5f-920a-455ba3b3bbbc"
[root@localhost ~]# lsblk --fs NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS sr0 iso966 Jolie Rocky-9-1-x86_64-dvd 2022-11-19-03-31-31-00 nvme0n1 │ ├─nvme0n1p1 │ xfs df99f570-5778-48cf-8775-53860cd7c6c9 830.6M 18% /boot └─nvme0n1p2 LVM2_m LVM2 7WqG8S-3hSm-N4nE-2UdL-ihK8-f1Sz-a5NeO3 ├─rl-root │ xfs fd99346a-7711-4672-9cc7-ca2163c1c2ea 45.7G 3% / └─rl-swap swap 1 ab92b873-7ebd-468a-a0de-d9fcbddd7f4b [SWAP] nvme0n2 │ └─nvme0n2p1 xfs 88ed1af0-0038-4e35-b018-07f703679cb3
3.3. 파티션 삭제
3.3.1. Parted를 이용한 파티션 삭제
[root@localhost ~]# parted /dev/nvme0n2 GNU Parted 3.5 Using /dev/nvme0n2 Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Model: VMware Virtual NVMe Disk (nvme) Disk /dev/nvme0n2: 10.7GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 2000MB 1999MB xfs test (parted) rm 1 (parted) quit Information: You may need to update /etc/fstab. [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sr0 11:0 1 1.5G 0 rom nvme0n1 259:0 0 50G 0 disk ├─nvme0n1p1 259:1 0 1G 0 part /boot └─nvme0n1p2 259:2 0 49G 0 part ├─rl-root 253:0 0 47G 0 lvm / └─rl-swap 253:1 0 2G 0 lvm [SWAP] nvme0n2 259:3 0 10G 0 disk
[root@localhost ~]# parted /dev/vdb rm 1
728x90'공부합시다! > LInux' 카테고리의 다른 글
CentOS7: Nginx + Wordpress + PHP7.4 + MySQL5.7 (0) 2023.06.14 Rocky9: Rocky Linux9 Install 설치 (0) 2023.02.15 Shell Script - 2. for, if문 (0) 2023.02.10 Shell Script - 1 (0) 2023.02.09 Rocky9: root password reset (0) 2023.02.01