본문 바로가기
Hardware

Partiton

by Yoon_estar 2024. 2. 15.
728x90
반응형

개요

리눅스 파티션 관리는 시스템의 효율적인 저장 공간 분배와 관리를 가능하게 합니다. 
이러한 관리 작업은 데이터 조직화, 시스템의 보안 강화, 및 성능 최적화에 중요한 역할을 합니다. 
본문에서는 리눅스에서 파티션을 관리하는 데 사용되는 기본 개념과 도구들에 대해 자세히 설명하겠습니다.

파티션이란?

파티션은 하드 드라이브의 물리적 구분 없이 저장 공간을 독립적으로 분리할 수 있는 방법입니다. 
각 파티션은 별도의 파일 시스템을 가지며, 운영 체제는 각각을 독립적인 드라이브로 취급합니다. 
이를 통해 사용자는 데이터를 논리적으로 구분하고, 시스템의 보안과 성능을 개선할 수 있습니다.

fdisk

fdisk는 리눅스에서 가장 널리 사용되는 디스크 파티셔닝 도구 중 하나입니다. 
이 명령어는 MBR(Master Boot Record) 파티션 테이블을 사용하는 디스크에 대해 파티션을 생성, 삭제, 수정할 수 있는 기능을 제공합니다. 
사용자는 fdisk를 통해 파티션의 크기를 조정하고, 파티션 타입을 변경하는 등의 작업을 할 수 있습니다.

parted

parted는 fdisk보다 더 진보된 파티셔닝 도구로, GPT(GUID Partition Table)를 포함한 다양한 파티션 테이블을 지원합니다.
 이 도구는 큰 저장 장치와 더 많은 파티션을 필요로 하는 현대의 시스템 요구사항을 충족시키기 위해 설계되었습니다.
 parted를 사용하면 파티션의 생성, 삭제, 크기 조정뿐만 아니라 파일 시스템의 확인과 조정도 가능합니다.

파티션 나누기

파티션 나누기는 하나의 물리적 드라이브를 여러 개의 독립적인 섹션으로 분할하는 과정입니다.
이를 통해 사용자는 운영 체제, 사용자 데이터, 백업 등을 분리하여 관리할 수 있습니다.
파티션을 나누는 것은 시스템의 재설치 없이 데이터를 보호하고, 파일 시스템의 손상 위험을 줄이는 데 유용합니다.

파티션 합치기

파티션 합치기는 두 개 이상의 파티션을 하나로 통합하는 과정입니다.
 이 작업은 일반적으로 저장 공간을 재조직하거나, 불필요한 파티션을 제거하고자 할 때 수행됩니다.
 파티션 합치기는 특정 도구나 운영 체제의 디스크 관리 유틸리티를 사용하여 수행할 수 있으며, 중요 데이터는 합치기 작업 전에 반드시 백업해야 합니다.

fdisk

fdisk -l

# fdisk -l
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.

Disk /dev/sda: 274.9 GB, 274877906944 bytes, 536870912 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: gpt
Disk identifier: FAA93446-C3E9-429F-AB83-9EAADCD02F15

#         Start          End    Size  Type            Name
 1         2048      1026047    500M  EFI System      EFI System Partition
 2      1026048    469759999  223.5G  Microsoft basic 
 3    469760000    536868863     32G  Linux swap

fdisk -m

# fdisk /dev/sda 
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): m
Command action
   d   delete a partition
   g   create a new empty GPT partition table
   G   create an IRIX (SGI) partition table
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

fdisk 옵션

m: 메뉴 목록을 보여줍니다. (print this menu)
n: 새 파티션을 생성합니다. (add a new partition)
d: 파티션을 삭제합니다. (delete a partition)
p: 파티션 테이블을 표시합니다. (print the partition table)
w: 변경 사항을 디스크에 쓰고 종료합니다. (write table to disk and exit)
q: 변경 사항 없이 종료합니다. (quit without saving changes)

parted

parted 진입하지 않고 쓰는 명령어

!! 디스크 파티션 정보 확인
# parted /dev/sda
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

!! 파티션 생성
# parted /dev/sda mkpart
Partition name?  []?

!! 파티션 시스템 검사
# parted /dev/sda resizepart
Partition number?

!! 파티션 삭제
# parted /dev/sda rm
Partition number?

!! 디스크에 파티션 테이블 생성
# parted /dev/sda mklabel
New disk label type?

parted 진입 후 쓰는 명령어

# parted /dev/sda
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help
  align-check TYPE N                        check partition N for TYPE(min|opt) alignment
  help [COMMAND]                           print general help, or help on COMMAND
  mklabel,mktable LABEL-TYPE               create a new disklabel (partition table)
  mkpart PART-TYPE [FS-TYPE] START END     make a partition
  name NUMBER NAME                         name partition NUMBER as NAME
  print [devices|free|list,all|NUMBER]     display the partition table, available devices, free space, all found
        partitions, or a particular partition
  quit                                     exit program
  rescue START END                         rescue a lost partition near START and END
  
  resizepart NUMBER END                    resize partition NUMBER
  rm NUMBER                                delete partition NUMBER
  select DEVICE                            choose the device to edit
  disk_set FLAG STATE                      change the FLAG on selected device
  disk_toggle [FLAG]                       toggle the state of FLAG on selected device
  set NUMBER FLAG STATE                    change the FLAG on partition NUMBER
  toggle [NUMBER [FLAG]]                   toggle the state of FLAG on partition NUMBER
  unit UNIT                                set the default unit to UNIT
  version

parted 실습 예제

# parted /dev/sda
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)
(parted) print
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 275GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End    Size    File system     Name                  Flags
 1      1049kB  525MB  524MB   fat16           EFI System Partition  boot
 2      525MB   241GB  240GB   ext4
 3      241GB   275GB  34.4GB  linux-swap(v1)

(parted) mklabel gpt

(parted) mkpart primary ext4 1MiB 100MiB

(parted) print

(parted) quit

실습

실제 파티션 작업 실습은 따로 포스팅 하도록 하겠습니다. 

 

https://estar987.tistory.com/71


결론

리눅스에서 파티션 관리는 시스템의 효율성과 안정성을 유지하기 위해 필수적입니다.
fdisk와 parted와 같은 도구를 사용하여 파티션을 적절하게 활용할 수 있습니다. 
반응형