本文以云服务器的操作系统为“CentOS 7.4 64位”、磁盘容量为3 TB举例,采用Parted分区工具为容量大于2 TB的数据盘设置分区。
MBR支持的磁盘最大容量为2 TB,GPT最大支持的磁盘容量为18 EB,因此当您初始化容量大于2 TB的磁盘时,分区形式请采用GPT。对于Linux操作系统而言,当磁盘分区形式选用GPT时,fdisk分区工具将无法使用,需要采用parted工具。关于磁盘分区形式的更多介绍,请参见初始化数据盘场景及磁盘分区形式介绍。
不同云服务器的操作系统的格式化操作可能不同,本文仅供参考,具体操作步骤和差异请参考对应的云服务器操作系统的产品文档。
首次使用磁盘时,如果您未参考本章节对磁盘执行初始化操作,主要包括创建分区和文件系统等操作,那么当后续扩容磁盘时,新增容量部分的磁盘可能无法正常使用。
本操作以该场景为例,当云服务器挂载了一块新的数据盘时,采用parted分区工具为数据盘设置分区,分区形式设置为GPT,文件系统设为ext4格式,挂载在“/mnt/sdc”下,并设置开机启动自动挂载。
lsblk
回显类似如下信息:
[root@ecs-centos74 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk ├─vda1 253:1 0 1G 0 part /boot └─vda2 253:2 0 39G 0 part / vdb 253:16 0 3T 0 disk
表示当前的云服务器有两块磁盘,“/dev/vda”是系统盘,“/dev/vdb”是新增数据盘。
parted 新增数据盘
以新挂载的数据盘“/dev/vdb”为例:
parted /dev/vdb
回显类似如下信息:
[root@ecs-centos74 ~]# parted /dev/vdb GNU Parted 3.1 Using /dev/vdb Welcome to GNU Parted! Type 'help' to view a list of commands. (parted)
回显类似如下信息:
(parted) p Error: /dev/vdb: unrecognised disk label Model: Virtio Block Device (virtblk) Disk /dev/vdb: 3299GB Sector size (logical/physical): 512B/512B Partition Table: unknown Disk Flags: (parted)
“Partition Table”为“unknown”表示磁盘分区形式未知,新的数据盘还未设置分区形式。
mklabel 磁盘分区形式
磁盘分区形式有MBR和GPT两种,大于2 TB的磁盘容量,请采用GPT分区方式:
mklabel gpt
MBR支持的磁盘最大容量为2 TB,GPT最大支持的磁盘容量为18 EB,当前数据盘支持的最大容量为32 TB,如果您需要使用大于2 TB的磁盘容量,分区形式请采用GPT。
当磁盘已经投入使用后,此时切换磁盘分区形式时,磁盘上的原有数据将会清除,因此请在磁盘初始化时谨慎选择磁盘分区形式。
回显类似如下信息:
(parted) mklabel gpt (parted) p Model: Virtio Block Device (virtblk) Disk /dev/vdb: 3299GB Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags (parted)
mkpart 磁盘分区名称 起始磁柱值 截止磁柱值
命令示例:
mkpart opt 2048s 100%
“2048s”表示磁盘起始磁柱值,“100%”表示磁盘截止磁柱值,此处仅供参考,您可以根据业务需要自行规划磁盘分区数量及容量。
(parted) mkpart opt 2048s 100% Warning: The resulting partition is not properly aligned for best performance. Ignore/Cancel? Ignore
若出现以上性能优化提醒,请输入“Ignore”,忽视即可。
回显类似如下信息:
(parted) p Model: Virtio Block Device (virtblk) Disk /dev/vdb: 6442450944s Sector size (logical/physical): 512B/512B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 2048s 6442448895s 6442446848s opt
表示新建分区“dev/vdb1”的详细信息。
lsblk
回显类似如下信息:
[root@ecs-centos74 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT vda 253:0 0 40G 0 disk ├─vda1 253:1 0 1G 0 part /boot └─vda2 253:2 0 39G 0 part / vdb 253:16 0 3T 0 disk └─vdb1 253:17 0 3T 0 part
此时可以查看到新建分区“/dev/vdb1”。
mkfs -t 文件系统格式 /dev/vdb1
以设置文件系统为“ext4”为例:
mkfs -t ext4 /dev/vdb1
回显类似如下信息:
[root@ecs-centos74 ~]# mkfs -t ext4 /dev/vdb1 mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 201326592 inodes, 805305856 blocks 40265292 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2952790016 24576 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
格式化需要等待一段时间,请观察系统运行状态,不要退出。
不同文件系统支持的分区大小不同,请根据您的业务需求选择合适的文件系统。
mkdir 挂载目录
以新建挂载目录“/mnt/sdc”为例:
mkdir /mnt/sdc
mount 磁盘分区 挂载目录
以挂载新建分区“/dev/vdb1”至“/mnt/sdc”为例:
mount /dev/vdb1 /mnt/sdc
df -TH
回显类似如下信息:
[root@ecs-centos74 ~]# df -TH Filesystem Type Size Used Avail Use% Mounted on /dev/vda2 ext4 42G 1.5G 38G 4% / devtmpfs devtmpfs 2.0G 0 2.0G 0% /dev tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm tmpfs tmpfs 2.0G 8.9M 2.0G 1% /run tmpfs tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup /dev/vda1 ext4 1.1G 153M 801M 17% /boot tmpfs tmpfs 398M 0 398M 0% /run/user/0 /dev/vdb1 ext4 3.3T 93M 3.1T 1% /mnt/sdc
表示新建分区“dev/vdb1”已挂载至“/mnt/sdc”。
设置云服务器系统启动时自动挂载磁盘分区,不能采用在“/etc/fstab”直接指定设备名(比如/dev/vdb1)的方法,因为云中设备的顺序编码在关闭或者开启云服务器过程中可能发生改变,例如/dev/vdb1可能会变成/dev/vdb2。推荐使用UUID来配置自动挂载磁盘分区。
UUID(universally unique identifier)是Linux系统为磁盘分区提供的唯一的标识字符串。
blkid 磁盘分区
以查询磁盘分区“/dev/vdb1”的UUID为例:
blkid /dev/vdb1
回显类似如下信息:
[root@ecs-test-0001 ~]# blkid /dev/vdb1 /dev/vdb1: UUID="0b3040e2-1367-4abb-841d-ddb0b92693df" TYPE="ext4"
表示“/dev/vdb1”的UUID。
vi /etc/fstab
UUID=0b3040e2-1367-4abb-841d-ddb0b92693df /mnt/sdc ext4 defaults 0 2
保存设置并退出编辑器。
本文转载自微信公众号「Python学会」,作者Huangwei AI。转载本文请联系Python学...
国内有哪些 云服务器品牌 ?因为 云计算 这几年发展非常迅速,国内提供云服务的...
想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区 https://...
【51CTO.com快译】 Ubuntu 和 Fedora 都是历史悠久的著名操作系统。它们看似有着...
TOP云 小程序 推广功能可以用吗?当然可以用。TOP云小程序全能版,支持小程序分...
大数据正在改变全球绝大部分行业,医疗业也不例外。通过对医疗数据的分析,人类...
网络的盛行,为我们提供了方便和便捷的服务,不管是娱乐的游戏、视频还是提供服...
如今,数据分析技术渗透到数字企业的各个方面,人们需要注意其未来几年的发展趋...
公司介绍 移动电影院是我们公司开发的一款APP,有别于电影新媒体播放模式,系通...
为了让更多的开发者更为深入的掌握云端一体 阿里云AIoT策划了“5营连开-云端一体...