我计划使用 CentOS 7 服务器的硬盘驱动器上的最大分区划分为四个较小的分区parted
。其中三个新分区的大小均为 300 GB,第四个分区将占用剩余部分。我在下面显示了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
如果您的计算机中只有一个驱动器,则可能不需要显式选择设备,这就提出了一个问题:您是否真的在运行一台没有任何类型的 raid 的服务器?如果您这样做,您应该至少有一个完整的替换设备,您可以在尝试上述操作之前对其进行备份。
不清楚的是为什么你想这样做。较小的分区灵活性较差,并且更容易被填满。根据您想要实现的目标,您应该考虑在(未划分的)分区之上使用 LVM。如果您创建一个包含四个逻辑卷的卷组,您也可以创建四个文件系统,但更容易分配更改它们的大小。