parted를 사용하여 CentOS 7 서버를 분할하는 방법은 무엇입니까?

parted를 사용하여 CentOS 7 서버를 분할하는 방법은 무엇입니까?

저는 CentOS 7 서버를 사용하여 하드 드라이브의 가장 큰 파티션을 4개의 작은 파티션으로 나눌 계획입니다 parted. 새 파티션 중 3개의 크기는 각각 300GB이고 네 번째 파티션이 나머지를 차지합니다. 아래에는 드라이브에 대한 보고서가 표시되어 있으며 parted print그 뒤에는 내가 사용한다고 생각하는 명령 구문이 나와 있습니다. 하드 드라이브를 올바르게 분할하려면 아래 코드를 어떻게 변경합니까?

print보고된 결과는 다음과 같습니다 parted.

[root@localhost ~]# parted
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Model: ATA WDC WD20EZRX-22D (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name                  Flags
 1      1049kB  211MB   210MB   fat16           EFI System Partition  boot
 2      211MB   735MB   524MB   ext4
 3      735MB   1938GB  1938GB  ext4
 4      1938GB  1992GB  53.7GB  ext4
 5      1992GB  2000GB  8187MB  linux-swap(v1)

그래서 터미널 명령은 간단하다고 생각합니다.

rm 3
mkpart    ext4    735MB    300GB
mkpart    ext4    300GB    600GB  
mkpart    ext4    600GB    900GB  
mkpart    ext4    900GB    1938GB  

파티션을 올바르게 생성하려면 위의 코드를 어떻게 변경해야 합니까?

참고로 fdisk -l드라이브의 약간 다른 그림이 아래에 나와 있습니다.

[root@localhost ~]# fdisk -l
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
Disk /dev/sda: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: gpt
#         Start          End    Size  Type            Name
 1         2048       411647    200M  EFI System      EFI System Partition
 2       411648      1435647    500M  Microsoft basic 
 3      1435648   3786041343    1.8T  Microsoft basic 
 4   3786041344   3890898943     50G  Microsoft basic 
 5   3890898944   3906889727    7.6G  Linux swap   

편집하다:


@Anthon의 제안을 사용하려고 시도했지만 결과가 다릅니다. CentOS를 재설치하고 나면 이제 약간 다른 환경이 되지만 기본 개념은 동일하므로 재현이 가능해야 합니다 fdisk -l. 기존 파티션을 모두 parted ... print입력하면 select /dev/dm-1쌍이 표시되지 않는 것 같지만 parted건너뛰면 select /dev/dm-1오류가 발생합니다. 실제 터미널 로그는 다음과 같습니다.

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

Disk /dev/sda: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: gpt

#         Start          End    Size  Type            Name
 1         2048       411647    200M  EFI System      EFI System Partition
 2       411648      1435647    500M  Microsoft basic 
 3      1435648    105850879   49.8G  Microsoft basic 
 4    105850880    121841663    7.6G  Linux swap      

Disk /dev/mapper/luks-fb2eda94-fcff-4624-8b04-a9786845504a: 53.5 GB, 53458501632 bytes, 104411136 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Disk /dev/mapper/luks-08f8bdb9-85bf-45ef-9519-3f38906c489a: 1938.0 GB, 1938005426176 bytes, 3785166848 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

[root@localhost ~]# df -T -h
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/dm-0      ext4       49G  1.1G   46G   3% /
devtmpfs       devtmpfs  3.8G     0  3.8G   0% /dev
tmpfs          tmpfs     3.8G     0  3.8G   0% /dev/shm
tmpfs          tmpfs     3.8G  8.7M  3.8G   1% /run
tmpfs          tmpfs     3.8G     0  3.8G   0% /sys/fs/cgroup
/dev/sda2      ext4      477M  110M  338M  25% /boot
/dev/sda1      vfat      200M  9.8M  191M   5% /boot/efi
/dev/dm-1      ext4      1.8T   77M  1.7T   1% /home

[root@localhost ~]# parted
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Model: ATA WDC WD20EZRX-00D (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name                  Flags
 1      1049kB  211MB   210MB   fat16           EFI System Partition  boot
 2      211MB   735MB   524MB   ext4
 3      735MB   54.2GB  53.5GB
 4      54.2GB  62.4GB  8187MB  linux-swap(v1)
 5      62.4GB  2000GB  1938GB

(parted) unit compact
(parted) select /dev/dm
Error: Could not stat device /dev/dm - No such file or directory.
Retry/Cancel? cancel                                                      
(parted) select /dev/dm-1                                                 
Using /dev/dm-1
(parted) rm 5
Error: Partition doesn't exist.
(parted) print                                                            
Model: Linux device-mapper (crypt) (dm)
Disk /dev/dm-1: 1938GB
Sector size (logical/physical): 512B/4096B
Partition Table: loop
Disk Flags: 

Number  Start  End     Size    File system  Flags
 1      0.00B  1938GB  1938GB  ext4

(parted) quit                                                             
[root@localhost ~]# parted
GNU Parted 3.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print                                                            
Model: ATA WDC WD20EZRX-00D (scsi)
Disk /dev/sda: 2000GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name                  Flags
 1      1049kB  211MB   210MB   fat16           EFI System Partition  boot
 2      211MB   735MB   524MB   ext4
 3      735MB   54.2GB  53.5GB
 4      54.2GB  62.4GB  8187MB  linux-swap(v1)
 5      62.4GB  2000GB  1938GB

(parted) unit compact                                                     
(parted) rm 5                                                             
Error: Partition(s) 5 on /dev/sda have been written, but we have been  
unable to inform the kernel of the change, probably because it/they are  
in use.  As a result, the old partition(s) will remain in use.  You  
should reboot now before making further changes.
Ignore/Cancel?  ancel                                                     
(parted) quit
Information: You may need to update /etc/fstab.

그렇다면 이 드라이브를 어떻게 분할합니까?

답변1

먼저 최소한 파티션 1, 2, 4 및 MBR을 백업하십시오. 55GB에 불과하므로 그리 오래 걸리지는 않습니다.

mkpart명령은 원하는 파티션 유형 다음에 파일 시스템 유형을 선택적 매개변수로 사용합니다.

mkpart PART-TYPE [FS-TYPE] START END     make a partition

ext4그리고 파티션 유형이 파일 시스템 유형( )인 것 같습니다 . 나는 일반적으로 파일 시스템 유형을 제공하지 않으며 나중에 파티션을 포맷하면 이를 처리합니다.

나는 그것을 할 것이다:

$ parted
unit compact    
select /dev/sda
rm 3
mkpart  " "    735MB    300GB
mkpart  " "    300GB    600GB  
mkpart  " "    600GB    900GB  
mkpart  " "    900GB    1938GB

시작 번호와 끝 번호가 좋아 보이는데요.

/dev/sda컴퓨터에 드라이브가 하나만 있는 경우 장치를 명시적으로 선택할 필요가 없을 것입니다. 이는 다음과 같은 질문을 제기합니다. 실제로 어떤 종류의 공격도 없이 서버를 실행하고 있습니까? 이렇게 하려면 위의 작업을 시도하기 전에 최소한 백업할 수 있는 완전한 교체 장치가 있어야 합니다.

명확하지 않은 것은당신은 이것을하고 싶어합니다. 파티션이 작을수록 유연성이 떨어지고 쉽게 채워집니다. 달성하려는 목표에 따라 (분할되지 않은) 파티션 위에 LVM을 사용하는 것을 고려해야 합니다. 4개의 논리 볼륨을 포함하는 볼륨 그룹을 생성하는 경우 4개의 파일 시스템도 생성할 수 있지만 크기를 변경하여 할당하는 것이 더 쉽습니다.

관련 정보