系统盘扩容 扩展分区与文件系统_Linux系统盘
创建时间:2019年6月3日(星期一) 下午5:16| 分类:未分类
| 字数:4341 | 另存为... | 打印 | 添加到日历
扩展分区与文件系统_Linux系统盘 https://help.aliyun.com/document_detail/111738.html?spm=a2c4g.11186623.6.771.356d77eeyzuN5K#h2-url-2
本文提供了如何使用growpart和resize2fs工具完成Linux系统盘分区扩容及文件系统扩展的操作指导。
适用范围
本文的操作步骤适用于以下分区和文件系统格式的云盘:
分区格式支持:mbr、gpt
文件系统支持:ext、xfs、btrfs、ufs
准备工作
通过ECS控制台或者API扩容云盘。
创建快照以备份数据。
实例已处于运行中状态。连接方式请参见连接方式导航。
根据操作系统安装growpart扩容格式化工具。
CentOS 7、Aliyun Linux:
yuminstallcloud-utils-growpart
Ubuntu 14、Ubuntu 16、Ubuntu 18、Debian 9:
aptinstallcloud-guest-utils
Debian 8、OpenSUSE 42.3、OpenSUSE 13.1、SUSE Linux Enterprise Server 12 SP2:请使用上游版本(upstream)的growpart工具
检查实例的内核版本,如通过uname -a查看内核版本。
内核版本大于3.6.0,则无需重启reboot便能完成扩容分区和文件系统。该情况请参见高内核版本的操作步骤。
内核版本小于3.6.0,如CentOS 6、Debian 7和SUSE Linux Enterprise Server 11 SP4等发行版,需要经过一次重启reboot才能完成分区扩容。该情况请参见低内核版本的操作步骤。
高内核版本的操作步骤
此处以CentOS 7操作系统为例演示分区扩展的步骤。
运行fdisk -l查看现有磁盘大小。示例返回磁盘(/dev/vda)容量是100 GiB。
[root@localhost ~]# fdisk -lDisk /dev/vda:107.4GB,107374182400bytes,209715200sectorsUnits = sectors of1*512=512bytesSector size (logical/physical):512bytes /512bytesI/O size (minimum/optimal):512bytes /512bytesDisk label type: dosDisk identifier:0x0008d73aDevice Boot Start End Blocks Id System/dev/vda1 *2048419430392097049683Linux
运行df -h查看磁盘分区大小。示例返回分区容量(/dev/vda1)是20 GiB。
[root@localhost ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda120G1.5G18G8% /devtmpfs7.8G07.8G0% /devtmpfs7.8G07.8G0% /dev/shmtmpfs7.8G344K7.8G1% /runtmpfs7.8G07.8G0% /sys/fs/cgrouptmpfs1.6G01.6G0% /run/user/0
运行growpart<DeviceName> <PartionNumber>调用growpart为需要扩容的磁盘和对应的第几个分区扩容。示例命令表示为系统盘的第一个分区扩容。
[root@localhost ~]# growpart /dev/vda 1CHANGED:partition=1start=2048 old:size=41940992end=41943040 new:size=209710462,end=209712510
运行resize2fs<PartitionName>调用resize2fs扩容文件系统。示例命令表示为系统盘的/dev/vda1分区扩容文件系统。
[root@localhost ~]# resize2fs /dev/vda1resize2fs1.42.9(28-Dec-2013)Filesystem at /dev/vda1ismounted on /; on-line resizing requiredold_desc_blocks =2, new_desc_blocks =7The filesystem on /dev/vda1isnow26213807blocks long.
运行df -h查看磁盘分区大小。返回分区(/dev/vda1)是100 GiB,表示已经成功扩容。
[root@localhost ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda199G1.6G93G2% /devtmpfs7.8G07.8G0% /devtmpfs7.8G07.8G0% /dev/shmtmpfs7.8G500K7.8G1% /runtmpfs7.8G07.8G0% /sys/fs/cgrouptmpfs1.6G01.6G0% /run/user/0
低内核版本的操作步骤
此处以CentOS 6操作系统为例演示分区扩展的步骤。
安装dracut-modules-growroot工具。
[root@AliYunOS~]# yum install -y dracut-modules-growroot
如果您使用的是其他软件包管理器,请将yum修改为对应的命令。
覆盖已有的initramfs文件。
[root@AliYunOS~]# dracut -f
运行fdisk -l查看现有磁盘大小。示例返回磁盘(/dev/vda)容量是100 GiB。
[root@AliYunOS ~]# fdisk -lDisk /dev/vda:107.4GB,107374182400bytes255heads,63sectors/track,13054cylindersUnits = cylinders of16065*512=8225280bytesSector size (logical/physical):512bytes /512bytesI/O size (minimum/optimal):512bytes /512bytesDisk identifier:0x0003a7b4Device Boot Start End Blocks Id System/dev/vda1 *126112097049683Linux
运行df -h查看磁盘分区大小。示例返回分区容量(/dev/vda1)是20 GiB。
[root@AliYunOS ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda120G1.1G18G6% /tmpfs7.8G07.8G0% /dev/shm
运行growpart<DeviceName><PartionNumber>调用growpart为需要扩容的磁盘和对应的第几个分区扩容。示例命令表示为系统盘的第一个分区扩容。
[root@AliYunOS ~]# growpart /dev/vda 1CHANGED:partition=1start=2048 old:size=41940992end=41943040 new:size=209710462,end=209712510
重启实例。
[root@AliYunOS~]# reboot
再次远程连接实例。
运行resize2fs<PartitionName>调用resize2fs扩容文件系统。示例命令表示为系统盘的/dev/vda1分区扩容文件系统。
[root@AliYunOS ~]# resize2fs /dev/vda1resize2fs1.41.12(17-May-2010)Filesystemat/dev/vda1ismountedon/;on-line resizing requiredold desc_blocks =2, new_desc_blocks =7Performing anon-line resizeof/dev/vda1to26213807(4k) blocks.The filesystemon/dev/vda1isnow26213807blocks long.
运行df -h查看磁盘分区大小。返回分区(/dev/vda1)是100 GiB,表示已经成功扩容。
[root@AliYunOS ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/vda199G1.1G93G2% /tmpfs7.8G07.8G0% /dev/shm
need-to-insert-img