还是因为我的那个Ubuntu源,之前只能以http方式访问,看到很多源也同时提供ftp和rsync的访问方式,我也就学着架设了一个。
先说说ftp方式,这个比较简单,参照官方源,我用的也是vsftpd。这个在Ubuntu下几乎是不用配置就可以跑了。大致就是:
sudo apt-get install vsftpd #安装vsftpd,会自动建立ftp用户,家目录默认是 /home/ftp
sudo usermod -d /data/mirrors ftp #将ftp的家目录改成你数据所在的目录,人家访问的时候就可以读到这个目录的内容了
sudo /etc/init.d/vsftpd restart #重启安装的时候就默认启动的vsftpd
这样就完全可以了,如果你还想修改一下人家登录的时候的欢迎信息的话,编辑 /etc/vsftpd.conf ,将里面的 ftpd_banner= 解除注释,并将你要的信息填在后面。
其实这个配置文件还有很多其他选项可以修改,诸如是否允许匿名登录、写权限之类的,需要的话,自己 man vsftpd.conf 好了。
再说说rsync的服务端配置,我发现网上的那些中文教程用在Ubuntu下都是会有问题的。
在Ubuntu下,这个rsync的服务端和客户端似乎是一个东西,也就是没有rsyncd这个包了,所以也就不需要安装额外的包了,只需简单配置一下,并启动就可以了。
参照 man rsyncd.conf 的提示
建立一个 /etc/rsyncd.conf 文件,内容如下:
motd file = /etc/rsyncd.motd
pid file = /var/run/rsyncd.pid
[ubuntu]
comment = Hangzhou srt ubuntu mirror
path = /data/mirrors/ubuntu
max connections = 3
log file = /var/log/rsyncd.log
其中 motd file 应该是可选的,如果写上了,就需要再建立一个 /etc/rsyncd.motd 的文本,写入欢迎信息,有空的话,还可以搞个帅帅的ASCII art哦。
上面的两行是全局的配置,下面中括号里的是模块名,以下的配置都是模块级的。可以同时指定多个模块。
配置好了以后,执行
sudo /etc/init.d/rsync start
rsync应该就启动了,另外可以在 sysv-rc-conf 里确保启动的时候就开启了rsync服务。
现在也可以通过以下方式访问SRT Ubuntu Mirror了:
rsync://ubuntu.srt.cn/ubuntu
ftp://ubuntu.srt.cn/ubuntu/