Linux系统下FTP服务器与SVN服务器配置详解
使用vsftpd(Linux)架设的ftp服务器,如何解决向其中拷贝多层文件夹的文件时出现的550错误?
因为要为我的本本重装系统,并且要重新对整个硬盘进行分区,我开始往我的实验室中的电脑上备份东西;因为我的实验室的电脑上是Linux系统,我于是选择使用ftp进行数据传输,我开始配置ftp服务器,感觉以前好像用过vsftp,而且SUSE 中自带这个软件,所以我选择了他。
如何实行用户权限管理,如何将ftp用户限制在某个文件里,这些通过看说明,看man,都能很容易地看懂,但是到我开始拷贝数据的时候,总是出现什么550错误,看网上说明,人们都自以为很聪明地说是权限配置的问题,但几乎没有人能写出具体的解决方案来。于是自己开始不服输地摆弄配置文件。配置文件中的配置应该是正交的才好,但是每一句跟每一句都好像有联系,难道配置文件中的配置还会有优先级?于是挑出配置文件中vsftp的作者大骂一顿,还配得上成什么very secure ftp!连基本运行都是问题,更别谈s了。
因为配置vsftp导致我重新启动机器两次,原来以standalone方式运行的svnserve挂掉了。svnserve是前几天配置的,今天再让我看得时候,我居然全都忘了。当时是通过bin里面的svnserve程序直接启动的,但是今天发现还有其他两种方式,一种以服务方式,一种以挂到xinetd守护进程的方式启动。而像svnserve这样的服务器,应该选择以xinetd方式启动比较好,这样就不需要每次开机还要重新手动启动一次了。
svnserve -d -r /srv/svn/repos
-d表示挂到守护进程上,-r和后面的路径表示虚拟的root目录为/srv/svn/repos。每个库的权限管理放在conf/svnserve.conf里面比较好,但是以服务启动的话,它默认情况下不是使用的这里的权限管理(我用的opensuse)。