今天在通过ftpClient在linux服务器上目录A下创建文件夹以及进行文件上传操作时,发现了无法创建新文件夹,最初以为是vsftpd设置的问题,但是根据百度搜索的答案进行设置,都没有效果。后来发现我以前设置的一个目录B下能够正常的通过ftpClient创建文件夹和上传文件。通过对比,发现了两个文件夹的区别是(假定使用ftpClient进行上传操作的用户为ftpuser):
能够正常创建文件夹的目录A的权限所有者为ftpuser
不能正常创建文件夹的目录B的权限所有者为root
通过将目录B的权限设置为ftpuser,则能够正常的通过ftpClient进行创建文件夹以及上传文件操作,以下是设置权限命令:
[[email protected] company]# chown ftpuser images
需要注意的是,如果目录B下面已经有了目录C,但是目录C的权限用户为root,那么在目录C下用ftpClient创建新的文件夹也是不行的,需要将目录C的权限变更为ftpuser,或者将目录C删除后再使用ftpClient创建目录C。