zoukankan      html  css  js  c++  java
  • 磁盘空间不足引起ftp报"553 Could not create file"

    ===============================================

     2021/9/29_第1次修改                       ccb_warlock

     

    ===============================================

    最近都在忙个人的事,很久没有整理学习笔记了,该篇是因为昨天客户联系我排查现场问题,而最终的结果我翻X出去也没搜到过,所以在这里做个记录,希望给有缘人提供一个新的方案来解决这个问题。

     

    言归正传,客户突然联系说程序出现卡顿的问题,排查下来是上传FTP失败引起。

     

    测试之后,使用非匿名账号,下载是正常的,上传提示“553 Could not create file”。

     

    查了很多资料讲到了selinux对vsftpd有拦截,但是对比开发环境和生产环境两边的配置、属性都是一致的,也就是说其他资料的解决方案应该不是当前问题的解决方案(没有按资料尝试是因为生产环境的操作有严格的要求,如果服务挂了会很麻烦)

     

    在没有任何解决方案的时候,我想使用FTP的账号登录centos,然后在目录下创建文件试试,服务器上创建文件是否还报权限问题,这时候转机出现了:

    touch: 无法创建“XXX”,设备上没有空间

     

    难道磁盘满了?于是我用‘df -h’查看的分区对应的硬盘占用情况,果然磁盘占用100%(因为客户的这个程序业务上需要不断上传图片到指定的FTP服务器,如果FTP上传失败,就会导致本地图片积压,量上来之后导致程序出现卡顿的问题)。

     

    解决方案:

    由于是磁盘满了导致报错,一种方案是停机加硬盘,另一种是移走时间较远的文件把磁盘空间腾出来。(最后现场和客户商议的还是选择了“移文件腾空间”的方式)

     

    结论:

    在本次遇到的问题中,是因为磁盘空间不足导致文件无法上传保存到服务器上,导致ftp报“553 Could not create file”。

    ftp报“553 Could not create file”,大部分原因可能是用户权限的配置问题引起,然而还有一种可能就是磁盘满了导致无法保存文件,针对这种情况ftp也是报553权限问题(我没有程序无法保存的逻辑的开发经验,只能怀疑是ftp对异常的判断中不考虑磁盘满了的情况,只要无法保存统统归类为权限问题)。

     

    参考资料:

    1.https://cloud.tencent.com/developer/article/1721919

     

     

  • 相关阅读:
    第17章 标准库特殊设施
    第16章 模板与泛型编程
    String、StringBuffer、StringBuilder的区别
    Mycat分库分表 读写分离 主从切换
    nginx的配置与使用
    kafka的使用
    zookeeper的使用
    mysql数据库优化
    mysql数据库事务详细剖析
    new Thread的弊端及Java四种线程池的使用
  • 原文地址:https://www.cnblogs.com/straycats/p/15351007.html
Copyright © 2011-2022 走看看