LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: meteo

做了一个vsftpd的补丁

[复制链接]
发表于 2006-7-28 20:20:19 | 显示全部楼层
hellwolf ,我用#convmvfs ftpsite_gbk/ -o srcdir=ftpsite,icharset=utf8,ocharset=gbk,allow_other,uid=1002,gid=102  挂载后,再启动FTP服务器,FTP的HOME是ftpsite_gbk, GBK编码下读FTP没有一点问题。但是上传有点问题,可以mkdir testing建立文件夹,但是,新建立的文件夹testing下面不能再写东西。我看了一下ftpsite/upload下面刚建立的testing文件夹,其属性是root的。 再看ftpsite_gbk里面,所有的文件和目录及其子目录都是virtual(uid=1002)的属主,里面本来有几个属于root的文件,也被显示成virtual了。
我想,如果要解决上传问题的话,是不是一定要用virtual用户执行convmvfs挂载ftpsite_gbk目录呢?   但是virtual用户我这里是不允许登录的,有没有更好的挂载办法呢?
回复 支持 反对

使用道具 举报

发表于 2006-7-28 20:59:40 | 显示全部楼层
写操作的支持方面BUG是挺多的,我有时间尽量去解决掉,或者有谁感兴趣也可以加入到项目中来。

P.S:virtual不能登录也可以执行,debian有个start-stop-daemon工具,不知道gentoo的是什么。我不熟悉gentoo。

补充:
http://sourceforge.net/project/showfiles.php?group_id=166276
0.2.2解决了刚才的问题。
回复 支持 反对

使用道具 举报

发表于 2006-7-28 21:03:19 | 显示全部楼层
vsftpd-2.0.5能不能打这个补丁啊?
还有那个patch文件是怎么用的?
回复 支持 反对

使用道具 举报

发表于 2006-7-31 09:34:35 | 显示全部楼层
官方怎么不搞下支持UTF8的啊。。。
2.0.5什么时候有补丁哦
回复 支持 反对

使用道具 举报

发表于 2006-8-8 22:30:45 | 显示全部楼层
write an ebuild for fuse-convmvfs, have fun! ;-)
and it works well on amd64.

/usr/local/portage/sys-fs/fuse-convmvfs/fuse-convmvfs-0.2.2.ebuild
  1. # Copyright 1999-2004 Gentoo Foundation
  2. # Distributed under the terms of the GNU General Public License v2
  3. # $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse-convmvfs/fuse-convmvfs-0.2.2.ebuild,v 1.3 2004/12/18 21:20:05 stuart Exp $
  4. inherit eutils
  5. DESCRIPTION="This is a filesystem client use the FUSE(Filesystem in USErspace) interface to convert file name from one charset to another."
  6. HOMEPAGE="http://fuse-convmvfs.sourceforge.net/"
  7. SRC_URI="mirror://sourceforge/fuse-convmvfs/${P}.tar.gz"
  8. LICENSE="GPL-2"
  9. SLOT="0"
  10. KEYWORDS="~amd64 ~x86"
  11. IUSE=""
  12. DEPEND=">=sys-fs/fuse-2.5"
  13. src_unpack() {
  14.         unpack ${A}
  15. }
  16. src_install() {
  17.         make DESTDIR=${D} install || die "make install failed"
  18.         dodoc AUTHORS ChangeLog README
  19. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2006-9-2 08:09:20 | 显示全部楼层
用fuse的方法,如果有多个用户的话,每个用户都要挂一次,而且登陆的时候是转了码的,很不爽.只适合不能登陆的少量用户使用.
回复 支持 反对

使用道具 举报

发表于 2006-9-9 11:40:52 | 显示全部楼层
fuse有个allow_other_user选项,可以让其他用户也访问到。
回复 支持 反对

使用道具 举报

发表于 2007-1-25 15:24:07 | 显示全部楼层
各位, 我现在用的是CentOS, /etc/下都没有make.conf文件等, 我应该怎么给我的vsftpd打补丁呢?! 谢谢!!!
回复 支持 反对

使用道具 举报

发表于 2007-1-27 11:40:01 | 显示全部楼层
Post by hellwolf
推销一下
关于vsftpd还有一个解决方法:
http://sourceforge.net/projects/fuse-convmvfs
一个简单FUSE文件系统,用类似下列命令:

  1. /usr/local/bin/convmvfs -o srcdir=/data/share,ocharset=gb18030,allow_other /data/share18030
复制代码

可以实现/data/share18030作为/data/share1目录的一个镜像,但文件名编码不同。这样的话
就可以同时讨好UTF-8和GB*用户了


  1. # ls /data/share/music/|tail
  2. 瘦人
  3. 眼镜蛇
  4. 窦唯
  5. 罗大佑
  6. 范晓萱
  7. 许巍
  8. 跳房子
  9. 达明一派
  10. 陈升
  11. 陈绮贞

  12. # ls /data/share18030/music/|iconv -f gb18030 |sort|tail
  13. 瘦人
  14. 眼镜蛇
  15. 窦唯
  16. 罗大佑
  17. 范晓萱
  18. 许巍
  19. 跳房子
  20. 达明一派
  21. 陈升
  22. 陈绮贞
复制代码

具体应该怎么做?
我的系统是CentOS - vsftpd...
回复 支持 反对

使用道具 举报

发表于 2007-1-27 20:03:32 | 显示全部楼层
Post by Eric_DZT
具体应该怎么做?
我的系统是CentOS - vsftpd...


你可以试试fedora-cn的fuse-convmvfs的RPM
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表