curlftps是什么?在linux下它可以将ftp挂载为本地文件夹,这样的话操作或者管理文件起来会比较方便。

以下皆以CentOS7下进行操作

安装curlftps

yum -y install epel-release
yum -y install curlftpfs

挂载

curlftps ftp://用户名:密码@ftp服务器地址 /挂载的文件夹
//例如
curlftps ftp://kaygb:kaygbpasswd@127.0.0.1 /www/wwwroot/ftp

编码转换

如果ftp包含特殊字符的话,需要进行ASCII编码转换

ASCII符号中文名编码之后的值
空格空格%20
感叹号%21
&and%26
@at%40
/斜杠%2F
:冒号%3A
=等于号%3D
?问好%3F
~波浪号%7E
演示

如果用户名类似:kaygb/kaygb

那么就要修改成:kaygb%2Fkaygb

最终的命令是

curlftps ftp://kaygb%2Fkaygb:kaygbpasswd@127.0.0.1 /www/wwwroot/ftp

开放访问权限

如果你和我一样,采用了类似可道云或者别的使用www用户的云盘程序,如果采用上述命令的话就会出现www用户无法访问的情况,那么我们就需要更改一下命令来设置访问权限

允许root用户之外的用户访问
curlftpfs -o rw,allow_other ftp://kaygb%2Fkaygb:kaygbpasswd@127.0.0.1 /www/wwwroot/ftp

命令解读:

  • rw:给读写的权限
  • allow_other:允许root用户之外的用户访问(www)

指定www用户访问

获取www的uid和gid

cat /etc/passwd | grep 你的用户名
// 例如
cat /etc/passwd | grep www
www:x:1000:1000::/home/www:/bin/bash
//  1000和1000既为uid和gid的值

挂载

curlftpfs -o rw,allow_other,uid=1000,gid=1000 ftp://kaygb%2Fkaygb:kaygbpasswd@127.0.0.1 /www/wwwroot/ftp

uid和gid需要换成自己的www的uid和gid

取消挂载

有三种方法,推荐方法2

方法1:ps -ef|grep ftp,然后使用kill来停掉挂载进程

方法2:fusermount -u/www/wwwroot/ftp

方法3:umount /www/wwwroot/ftp
最后修改:2020 年 01 月 27 日 07 : 15 PM
如果觉得我的文章对你有用,请随意赞赏