扩容操作第五步执行 fdisk 指令,输入 d 来删除原有的分区,然后依次输入 n,p,1,两次回车,wq来新建分区。如果在输入 wq 后回车,系统出现如下错误告警信息:
WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
说明:云服务器 ECS Linux服务器扩容数据盘,请参考 Linux系统磁盘扩容 的步骤。建议您在执行扩容操作前,先为该数据盘手动 创建快照。
扩容操作第五步执行 fdisk 指令,输入 d 来删除原有的分区,然后依次输入 n,p,1,两次回车,wq来新建分区。如果在输入 wq 后回车,系统出现如下错误告警信息:
WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
这是由于还有进程正在占用该磁盘导致,即使使用 df -h 查询该磁盘没有挂载也有可能遇到这个问题。
可以采用以下两种方法来尝试解决:
1. 通过 lsof 命令检查该磁盘分区上有哪些进程正在占用。然后通过 kill 命令终止这些进程或者先停止对应的服务。
以 /dev/xvdb1 磁盘分区为例,lsof /dev/xvdb1 命令可以查询正在使用该磁盘分区的进程(第二列是进程号)。
再重新执行 fdisk 执行来删除原有分区并新建分区。新建分区成功后会看到类似如下提示信息:
The partition table has been altered!Calling ioctl() to re-read partition table.Syncing disks.
最后,再参阅 Linux系统磁盘扩容 后续步骤继续进行扩容操作即可。
2. 先在 /etc/fstab 注释掉挂载的磁盘,然后重启服务器。再重新执行 fdisk 的删除分区和新建分区的步骤。
重启服务器。
再重新执行 fdisk 执行来删除原有分区并新建分区。新建分区成功后您会看到提示:
The partition table has been altered!Calling ioctl() to re-read partition table.Syncing disks.
再参阅 Linux系统磁盘扩容 后续步骤继续进行扩容操作即可。
扩容操作完成后,编辑 /etc/fstab,将该扩容磁盘的挂载记录前的 # 号删除,保存 fstab 文件。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。