vsftp上传553 Could not create file错误解决

 更新时间:2017年12月19日 10:04:48   投稿:laozhang  
本篇文章给大家分享了在vsftp上传文件的时候出现了553 Could not create file错误,针对这个错误我们给出了解决办法,一起学习下。

搭建一个ftp服务器,我使用ubuntu 10.04操作系统,下载vsftpdy源代码,

进行了编译,安装,然后按照INSTALL文件,创建了用户等操作。

因为时间比较紧,我采用匿名用户,进行文件的上传测试。修改了/etc/vsftpd.conf文件,

将默认注释不让匿名用户上传文件的注释去掉,然后保存,然后杀死vsftpd进程,然后重新运行

$ sudo vsftpd &

进行ftp服务器的启动。

使用一个客户端,可以正常的连接,但是当上传文件时,总是报553 Could not create file错误信息。

我也是按照网上的做法,对/var/ftp目录进行权限设置,如果设置为chmod -R 777 /var/ftp

还会导致ftp服务器不能启动,经过摸索,终于找到了解决的方法。

首先在ftp的目录中创建一个目录,然后设置权限为777

$ sudo mkdir /var/ftp/write

$sudo chmod -R 777 /var/ftp/write

然后修改vsftp的配置文件/etc/vsftpd.conf文件

在最后添加上

local_root=/var/ftp

保存,然后杀死vsftpd进程,然后重启vsftpd服务器程序。

试试看,将文件上传到write目录,这个时候可以正常的上传文件了。

加下来我们再来看一篇其他网友的解决方法:

首先,要看你是用什么用户上传了,如果是普通用户的话:

1.要确定目标文件夹有没有读写的权限,(当然也要有执行的权限,不然不能打开文件夹)

2如果都有了,那就是selinux限制了,把selinux关掉就可以了。(setenforce 0)

如果是anonymous用户的话:

和上面一样,关掉selinux,再给予相应的权限就可以解决

我这里要说一种不关掉selinux的解决方法

先运行getsebool -a | grep ftp (查看selinux里有哪些关于ftp的)

allow_ftpd_anon_write --> off

allow_ftpd_full_access --> off

allow_ftpd_use_cifs --> off

allow_ftpd_use_nfs --> off

ftp_home_dir --> off

ftpd_connect_db --> off

httpd_enable_ftp_server --> off

sftpd_anon_write --> off

sftpd_enable_homedirs --> off

sftpd_full_access --> off

sftpd_write_ssh_home --> off

tftp_anon_write --> off

接下来我们allow_ftpd_anon_write allow_ftpd_full_access 这两个ON掉

setsebool -P allow_ftpd_anon_write on

setsebool -P allow_ftpd_full_access on

这样子就OK了,如果出现

500 OOPS: vsftpd: refusing to run with writable anonymous root

500 OOPS: priv_sock_get_cmd

就是你把VSFTPD的根目录给了777的权限了,把它改成755,然后再在这个目录里建文件夹,可以给777的权限!

相关文章

  • 利用logsave如何将命令输出保存起来

    利用logsave如何将命令输出保存起来

    logsave命令运行给定的命令,并将命令的输出信息保存到指定的日志文件中。下面这篇文章主要给大家介绍了关于利用logsave如何将命令输出保存起来的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-05-05
  • CentOS中yum 源的配置与使用详解

    CentOS中yum 源的配置与使用详解

    这篇文章主要介绍了CentOS中yum 源的配置与使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。
    2016-12-12
  • 基于linux命令提取文件夹内特定文件路径

    基于linux命令提取文件夹内特定文件路径

    这篇文章主要介绍了基于linux命令提取文件夹内特定文件路径,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • linux下用csplit命令分割文件的方法示例

    linux下用csplit命令分割文件的方法示例

    csplit命令用于将一个大文件分割成小的碎片,并且将分割后的每个碎片保存成一个文件。下面这篇文章主要跟大家介绍了linux下用csplit命令分割文件的方法示例,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • 简要分析linux系统的启动过程

    简要分析linux系统的启动过程

    接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,这篇文章主要介绍了简要分析linux系统的启动过程,需要的朋友可以参考下
    2018-08-08
  • linux或windows环境下pytorch的安装与检查验证(解决runtimeerror问题)

    linux或windows环境下pytorch的安装与检查验证(解决runtimeerror

    这篇文章主要介绍了linux或windows环境下pytorch的安装与检查验证(解决runtimeerror问题),需要的朋友可以参考下
    2019-12-12
  • Ubuntu安装scrcpy完成手机投屏和控制(Ubuntu用QQ微信的另一种方法)

    Ubuntu安装scrcpy完成手机投屏和控制(Ubuntu用QQ微信的另一种方法

    这篇文章主要介绍了Ubuntu安装scrcpy手机投屏和控制(Ubuntu用QQ微信的另一种方法),这样的话不用频繁在键盘和手机间切换了 ,需要的朋友可以参考下
    2019-10-10
  • Centos7(Firewall)防火墙开启常见端口命令

    Centos7(Firewall)防火墙开启常见端口命令

    Centos7默认安装了firewalld,如果没有安装的话,则需要YUM命令安装;firewalld真的用不习惯,与之前的iptable防火墙区别太大,但毕竟是未来主流讲究慢慢磨合它的设置规则,需要的朋友可以参考下
    2018-02-02
  • 详解linux dma驱动编写

    详解linux dma驱动编写

    这篇文章主要介绍了详解linux dma驱动编写,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • centos6.5服务器安装Nginx设置服务和开机自启的方法

    centos6.5服务器安装Nginx设置服务和开机自启的方法

    本篇文章主要介绍了centos6.5服务器安装Nginx设置服务和开机自启的方法,具有一定的参考价值,有兴趣的小伙伴可以了解一下
    2017-08-08

最新评论