SMS.1315 目的端分区xxxx剩余磁盘空间不足
问题现象
迁移过程中出现“SMS.1315”的错误码报错信息。
原因分析
目的端磁盘被写满主要由于以下几个场景导致:
- 原因一:在大文件场景下,如果触发了Linux文件级断点续传,由于rsync默认采用“先写临时文件再进行覆盖”的传输机制,目的端会占用相当于源文件1 ~ 2倍的存储空间。由于文件体积庞大,这可能导致目的端磁盘空间被占满。
- 原因二:迁移后,rsync 对稀疏文件的处理方式不同,可能导致目的端的稀疏文件比源端大,从而导致目的端磁盘被写满。
- 原因三:由于目的端使用默认的inode进行格式化,导致其inode数量少于源端,从而使目的端磁盘空间被写满。
解决方案
遇到此错误后,需清理目的端的大文件,确保有足够的空间以完成迁移。
被清理的大文件可能无法传输过去。
- 登录目的端ECS控制台,重置目的端密码。
- 根据目的端报错提示进行挂载磁盘,比如:
- 报错“目的端分区/mnt/mapper/rhel-root 剩余磁盘空间不足”,需要挂载/dev/mapper/rhel-root 到/mnt/mapper/rhel-root
mount /dev/mapper/rhel-root /mnt/mapper/rhel-root
- 报错”目的端分区/mnt/vdc1 剩余磁盘空间不足”,需要挂载/dev/vdc1到/mnt/vdc1
mount /dev/vdc1 /mnt/vdc1
- 报错“目的端分区/mnt/mapper/rhel-root 剩余磁盘空间不足”,需要挂载/dev/mapper/rhel-root 到/mnt/mapper/rhel-root
- 使用df -i检查inode是否已占满,如果inode已占满可以在目的端需要释放一批不用的文件,比如释放部分日志文件。
- 查看该分区中较大的文件。
比如,需要查看/mnt/vdc1中磁盘空间占比前10的文件
cd /mnt/vdc1 find . -type f -print0 | xargs -0 du -h 2>/dev/null | sort -rh | head -10
- 删除较大的文件,重启目的端并重新开始迁移。
- 迁移后检查删除的文件是否同步。如果未同步,可以选择手动同步,或者重新单击同步。
如果按照上述步骤处理后问题仍然存在,需要联系技术支持人员并提供日志以便进一步分析和故障排除。