ftp 一个账号多个家目录的解决方案

通常,配置ftp时,一个ftp账号只对应一个家目录,不能有多个家目录的情况。

但是,根据公司开发项目的需求,需要做到一个ftp对应多个开发目录。有想过创建软链接的,可是发现通过ftp是访问不了的。

 

举例说明:

/home/www 目录结构是:

/home/www/
├── bbs
├── files
├── project1
├── project2
├── project3
├── test
└── wordpress

其中有三个项目目录:project1,project2,project3。

需要给开发配置一个ftp账号,通过该账户登录,仅会看到三个项目目录,/home/www下的其他目录是看不见的。

难点:如果将ftp账号的家目录设为/home/www,那除了三个项目目录的其他目录也能被看见,不符合需求。如果以每个项目目录为ftp家目录,则要创建三个ftp账号,不符合需求。

 

解决方案:

使用mount挂载映射。

# mkdir /home/ftp/{project1,project2,project3} -p

# /bin/mount --bind /home/www/project1/ /home/ftp/project1/
# /bin/mount --bind /home/www/project2/ /home/ftp/project2/
# /bin/mount --bind /home/www/project3/ /home/ftp/project3/

将/home/ftp目录作为ftp的家目录,登录上去,仅会出现三个项目目录。效果达到。

将以上三条mount命令加入到 /etc/rc.local 文件中,实现开机自动挂载。

 

实际使用的反馈:

  基于这种方法灵活构建的一个ftp账号对应多个家目录,实际使用两周后,发现:在同时上传多个文件时,频繁出现上传超时的情况,经常要反复上传多次才能成功,严重影响工作,就不再继续使用了。

posted @ 2016-07-11 23:47  hjqjk  阅读(4043)  评论(1编辑  收藏  举报