全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网
云服务器 ECS

扩容XFS磁盘 (Linux)

更新时间:2017-06-07 13:26:11

Linux 实例的 XFS 磁盘使用阿里云官方提供的磁盘扩容方法扩容会有报错:

  1. [root@xxxZ ~]# e2fsck /dev/xvdb1
  2. e2fsck 1.42.9 (28-Dec-2013)
  3. ext2fs_open2: Bad magic number in super-block
  4. e2fsck: Superblock invalid, trying backup blocks...
  5. e2fsck: Bad magic number in super-block while trying to open /dev/xvdb1
  6. The superblock could not be read or does not describe a correct ext2 filesystem. If the device is valid and it really contains an ext2 filesystem (and not swap or ufs or something else), then the superblock is corrupt, and you might try running e2fsck with an alternate superblock: e2fsck -b 8193`

可以看到报错是超级块不可用。可能由以下原因:

  • 超级块损坏,导致不可用。
  • 不同的文件系统,使用 ext 文件系统去检查 XFS 的文件系统,超级块不能识别。

常见的是第二种情况。可以使用下面命令查看分区的文件系统:

  1. [root@xxxZ ~]# df -T
  2. Filesystem Type 1K-blocks Used Available Use% Mounted on
  3. /dev/xvda1 ext4 20510332 1660744 17784680 9% /
  4. devtmpfs devtmpfs 934320 0 934320 0% /dev
  5. tmpfs tmpfs 942004 0 942004 0% /dev/shm
  6. tmpfs tmpfs 942004 8508 933496 1% /run
  7. tmpfs tmpfs 942004 0 942004 0% /sys/fs/cgroup
  8. /dev/xvdb1 xfs 10474496 33088 10441408 1% /mnt

可以看到 /dev/xvdb1 是 XFS 的文件系统。

对 XFS 的文件系统扩容方法如下:

  1. 不需要卸载已经挂载的磁盘,否则扩容会报错。

    1. [root@xxxz ~]# xfs_growfs /dev/xvdb1
    2. xfs_growfs: /dev/xvdb1 is not a mounted XFS filesystem
  2. 可以在分区挂载的情况扩容 XFS 的文件系统:

  1. [root@xxxZ ~]# xfs_growfs /dev/xvdb1
  2. meta-data=/dev/xvdb1 isize=256 agcount=4, agsize=327616 blks
  3. = sectsz=512 attr=2, projid32bit=1
  4. = crc=0
  5. data = bsize=4096 blocks=1310464, imaxpct=25
  6. = sunit=0 swidth=0 blks
  7. naming =version 2 bsize=4096 ascii-ci=0 ftype=0
  8. log =internal bsize=4096 blocks=2560, version=2
  9. = sectsz=512 sunit=0 blks, lazy-count=1
  10. realtime =none extsz=4096 blocks=0, rtextents=0
  11. data blocks changed from 1310464 to 2621184

可以看到 blocks 的数量从 131046 扩容到了2621184,实现了扩容。

扩容前 /dev/xvdb1 的容量是 5G:

  1. [root@xxxZ ~]# df -h
  2. Filesystem Size Used Avail Use% Mounted on
  3. /dev/xvda1 20G 1.5G 18G 9% /
  4. devtmpfs 913M 0 913M 0% /dev
  5. tmpfs 920M 0 920M 0% /dev/shm
  6. tmpfs 920M 8.3M 912M 1% /run
  7. tmpfs 920M 0 920M 0% /sys/fs/cgroup
  8. /dev/xvdb1 5.0G 33M 5.0G 1% /mnt

扩容后 /dev/xvdb1 的容量为 10G:

  1. [root@iZ28u04wmy2Z ~]# df -h
  2. Filesystem Size Used Avail Use% Mounted on
  3. /dev/xvda1 20G 1.5G 18G 9% /
  4. devtmpfs 913M 0 913M 0% /dev
  5. tmpfs 920M 0 920M 0% /dev/shm
  6. tmpfs 920M 8.3M 912M 1% /run
  7. tmpfs 920M 0 920M 0% /sys/fs/cgroup
  8. /dev/xvdb1 10G 33M 10G 1% /mnt
本文导读目录