还是因为我的那个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/
发表于:2009年09月21日 17:37 | 分类: 经验技巧 | 4 个评论 »
9月19日,是2009年的软件自由日,在这个比较特殊的日子,我要送给广大ubuntu爱好者一份礼物──一个新的ubuntu源。
正如我刚才的那篇文章所说,这个源的特点就是能保证全和新。至于速度还要看大家的测试结果(应该不会太差)。
这个源是在杭州电信的,百兆共享带宽,不知道网通用户的速度如何。
希望在9.10发布的时候,就能够加到ubuntu官方源列表里。这样用起来就更方便了。
其他就先不说了,大家可以通过这几个域名访问:
http://ubuntu.srt.cn/
http://ubuntu.hzlug.org/
http://u.srt.cn/
发表于:2009年09月18日 23:28 | 分类: 精华 | 51 个评论 »
最近在折腾新的ubuntu的源,向公司申请了一台配置一般的服务器,另外买了一块硬盘,硬件就有了。
然后装了个ubuntu 9.04 server,装上ssh,再装上nginx,稍微配置一下,服务就好了,这个过程还是蛮简单的,也很顺利,就不多说了。
接下来就可以开始同步数据了。由于我的目标是一个完整的源,所以就没有用apt-mirror之类的工具,而是直接拿rsync抓取上游的数据了。这个数据量是很大的,所以想尽量选择一个速度最快的带rsync的而且是“Up to date”的源,但是在茫茫的ubuntu官方源列表里,这么多源哪个最快呢?当然没有人会告诉你答案,因为每个人的网络环境都不一样啊。所以,最好的办法还是实地测试,所谓磨刀不误砍柴功啊,后面有300多G的数据要下载呢,这个测试绝对有价值。
上脚本(2009-12-12 更新):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
#!/bin/bash rmie(){ while [ -n "$1" ] ; do [ -f $1 ] && rm $1 shift done } urls=`curl https://launchpad.net/ubuntu/+archivemirrors | \ tr -d "\n" | sed 's/<\/tr>/\n/g' | grep "Up to date"|grep '>rsync</a>'|awk -F '"' '{print $4}'` rmie res { echo "$urls" | while read url;do echo "testing... $url" rmie T wget -q --no-cache -O T "$url/ls-lR.gz" & sleep 5 kill %% echo -n "$url " >> res ls -l T >>res done } 2>/dev/null sort -k 6 -n res > fast_mirror_`date +%F` rmie res T |
最后你可以 tail fast_mirror_XXX 看到5秒内下载的字节数最多的一个源。我这还真有一个源,能在3秒把7.4M大的ls-lR.gz给下载完的。
然后,你可以先用这个最快的源把大部分数据先更新下来,完了之后,为了保证数据最新,再向官方源更新一次,我用的是这个脚本:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
#!/bin/bash [[ $UID == 0 ]] || { echo "Must be root to run this script."; exit 0; } LOCK="/data/sync_sh/lock" LOG="/data/sync_sh/log" while true; do echo -e "\nstart sync @ `date`" | tee -a $LOG if [ -f $LOCK ]; then echo "another sync is running, I exiting..." | tee -a $LOG exit 1 fi touch $LOCK st=`date +%s` rsync --timeout=120 --exclude=".~tmp~" -avP --delete-excluded --progress rsync://archive.ubuntu.com/ubuntu/pool/ /data/mirrors/ubuntu/pool/ res=$? if [ $res -eq 0 ]; then echo "rsync pool succ" | tee -a $LOG et=`date +%s` echo "pool sync use $(( $et-$st )) sec = $(( ($et-$st)/60 )):$(( ($et-$st)%60 ))" | tee -a $LOG else echo "rsync pool failed" $res | tee -a $LOG fi st=`date +%s` rsync --timeout=120 --exclude=".~tmp~" -avP --delete-excluded --progress rsync://archive.ubuntu.com/ubuntu/ /data/mirrors/ubuntu/ res=$? if [ $res -eq 0 ]; then echo "rsync all succ" | tee -a $LOG et=`date +%s` echo "all sync use $(( $et-$st )) sec = $(( ($et-$st)/60 )):$(( ($et-$st)%60 ))" | tee -a $LOG else echo "rsync all failed" $res | tee -a $LOG fi df | grep "/data" | tee -a $LOG echo -e "end sync @ `date`" | tee -a $LOG rm $LOCK sleep 7200 done |
这个脚本先更新pool目录,再整个目录更新一遍,这样是为了减少出现软件列表里已经有某软件,但是却下载不到的情况。
脚本常驻运行,在上次更新完以后的2小时,启动下一次更新,这样应该算是国内最新的源了吧?
PS: 感谢服务器达人lupa的walkerxk在我架设源时,给我的热心帮助。
发表于:2009年09月18日 23:01 | 分类: 备忘 | 19 个评论 »
很久以前,我用firefox的插件──CHM reader──来看chm文件,然后,不知道从哪个ff版本开始,就失效了,打开任何chm都没有反映。
后来,我又用chmsee看,但是这个却只依赖 net-libs/xulrunner-1.9.1 ,自从xulrunner升级了以后,chmsee打开任何chm文件都会出现段错误,也被我卸载了。
今天,ob在装virtualbox,问了我一句“现在vbox怎么不依赖Qt了啊?难道都内嵌了?”。其实我本来是知道 virtualbox-bin 是内嵌了Qt运行库的,但是为了保险起见,我还是 equery files virtualbox-bin 了一下,结果却意外地发现了这个:
/opt/VirtualBox/kchmviewer
看文件名,就知道是什么了,哈哈,原来vbox的帮助文件是chm格式的,所以顺便内置了一个chm阅读器。
试了试,这个阅读器完全可以独立运行,效果还不错呢,见我截图:

节省版面,点击看大图吧。
发表于:2009年09月15日 20:30 | 分类: 备忘 | 17 个评论 »
gmbox自0.1版本发布以来,反映还算良好,一共也有2000多了下载量了。今天,0.2版本发布了,希望大家继续支持,嘿嘿。
其实,最近没怎么有时间写gmbox,所以这个版本和0.1比,差别并不是非常大,一些bug可能还是会继续有,不好意思啊。
导致我发布这个版本的直接原因是,今天google把音乐搜索的结果页面做了一点小小地改动,所以gmbox也得小小地改一下下。所以还是建议大家升级。
为了让这文章看起来更加像个“release note”,还是折腾个“ChangeLog”吧~
- 修改音乐搜索,适应google的页面改动
- 优化下载文件名的规则,可以按歌手建目录,加上专辑的Track No等。(可配置)
- 改进交互式CLI的命令名称和批处理CLI的参数名称,更加好记了。
- 搜索音乐和专辑的时候,支持主动翻页,搜索“周杰伦”不会只有20首歌了,顺便在搜索页面加上下载所选的按钮。
- 改进了windows版本的打包程序,windows下应该不会再出现运行不了的问题了。
- 完成了CLI指南的wiki页
差不多了,安装和运行方法之类,还是和0.1版本的一样,大家参考之前的文章好了。
下载地址:windows版本(6.2MB) linux版本(33.3KB)
发表于:2009年09月13日 21:57 | 分类: gmbox | 51 个评论 »
eCryptfs – Enterprise Cryptographic Filesystem 是linux下一个企业级的磁盘加密系统。
使用这个系统,可以使得用户的文件只有在用户登陆以后才是可见的,这样,即使你的硬盘被人偷走了,只要的你的密码足够安全不被破解,人家也无法读取你的私人文件(CGX真该用这个啊)。
目前,ubuntu 9.04 server 在安装时,已经可以选择用eCryptfs来加密用户的家目录了。
今天我装服务器的时候,觉得这个挺好玩的,就顺便启用了,却导致了一点点小问题,如下:
我在装好服务器openssh-server以后,很自然就把我的公钥复制到服务器上,来减少我输入密码的麻烦。没想到,登出了以后,再登进来时,原本应该不用密码的,却还提示我输入密码。后来还发现,只要有一个用密码登陆成功了以后,其他termianl再登陆的时候,就是正常的。于是想到可能就是 eCryptfs 搞的鬼,放google一搜,果然是的,已经有先例了。
那bug里解决办法也有了,我再贴一下:
方法一:
|
|
$ /sbin/umount.ecryptfs_private $ cd $HOME $ chmod 700 . $ mkdir -m 700 .ssh $ chmod 500 . $ echo $YOUR_REAL_PUBLIC_KEY > .ssh/authorized_keys $ /sbin/mount.ecryptfs_private |
这样就可以把你的公钥加到服务器的还未解锁的家目录下了。ssh的鉴权自然也可以顺利通过了。
方法二:
修改服务器的 /etc/ssh/sshd_config 把authorized_keys放到用户家目录以外的地方,以避开此问题。
例如加上:
|
|
AuthorizedKeysFile /etc/.ssh/%u/authorized_keys |
延伸阅读:另一起SSH服务器端不认RSA公钥的故障
发表于:2009年09月11日 13:10 | 分类: 故障分析 | 4 个评论 »
KMS(kernel mode-setting) 内核模式设置:即在内核初始化时,也完成图形的始初化,让显示设备从grub加载至进入桌面,都使用标准的分辨率,不需要频繁的切换模式。
这个介绍来自LDCN的文章,在这个文章里,TX兄说,Linux 2.6.31 就支持A卡的KMS了。而2.6.31的内核也刚刚于昨天发布了。今天看了下gentoo的portage,已经有2.6.31的内核了,哈哈,于是我就自然想试试到底什么是KMS了。
在内核选项里打开这个选项:
|
|
Device Drivers ---> [*] Staging drivers ---> [ ] Exclude Staging drivers from being built [*] Enable modesetting on radeon by default |
编译,用新内核启动,内核刚刚初始化,果然就可以看到那个企鹅的logo了,分辨率也是正常的1680×1050了,OpenRC输出的信息的字体都很小,非常适合我这个大屏小字控,哈哈。
虽然控制台看得我是满心欢喜,但是X却出了点问题,还是老现象:开compiz白屏,关了compiz勉强能用,但是性能却很差。估计又是DRM没有成功打开吧。重新编译了一下开源显卡驱动并调了一下xorg.conf都没有解决问题,不得已又把KMS给关掉了,毕竟留在tty的时间还是很少的,是吧~
等找出这两者的冲突的解决办法以后,我会再回到KMS的,哈哈。。。
发表于:2009年09月10日 22:44 | 分类: gentoo, 流水帐 | 5 个评论 »
在“lrcdis 20090831 版本放出”的文章中,有网友留言,说希望增加对xmms2的支持。
xmms2是一个基于元老级播放器xmms的播放器,但是据说已经基本上把xmms的代码全部重写过了。特点是C/S架构,这点有点类似MPD/MPC,但是我觉得易用性上比MPD好一点;核心是CLI的,可以有不同的GUI壳。
不过,不知道为什么,这个播放器4年半了,都一直没有进gentoo的portage,害得我不得不手工下载源码安装。。
不过由于本来就是C/S架构的,自然接口比较完善,所以比较容易lrcdis就支持上了。比较好玩的是 xmms2 status 这个命令居然是不会退出的。。好在 xmms2 info 里也可以取到时间信息。
好了,没有其他的什么changelog了,如果你也用xmms2,想试试lrcdis的话,可以从这里下载。
PS: 目前lrcdis已经支持如下播放器了: mpd, moc, audacious, amarok, exaile, quodlibet, rhythmbox, mplayer, JuK, qmmp, muine, banshee, xmms2 ,如果你的播放器不在这里面的话,不妨在这里留言告诉我。
发表于:2009年09月08日 15:44 | 分类: lrcdis | 16 个评论 »
公司某地的现场服务器,由于安全的需要,把cisco防火墙的VPN访问给打开了,然后给我们发了一个邮件,一看里面的附件,是个”Cisco VPN Client 4.7.00.0533.exe”,就知道怎么回事了,无视此邮件,自己去寻找开源的解决方案吧~
好在也还比较简单,as vpn以后(as is aliased to `eix -c’),出来几个软件,一看觉得vpnc比较顺眼,依赖少比较轻量,就emerge上了,然后就有了 /etc/vpnc/default.conf ,打开一看,几个配置项非常地简单明了,账号密码之类的一一填上即可。就是 IKE Authmode 这个选项,要和你的服务器管理器联系一下,才能确认,我这边用的psk。
然后,就可以启动vpnc了,方法是执行
|
|
sudo /etc/init.d/vpnc start |
然后,我这里由于用的是psk这个较弱的方式,出了点小错:
|
|
vpnc |* Starting VPNC: vpnc... vpnc |/usr/sbin/vpnc: peer selected (single) DES as "encryption" method. vpnc |This algorithm is considered too weak today vpnc |If your vpn concentrator admin still insists on using DES vpnc |use the "--enable-1des" option. vpnc | vpnc |* start-stop-daemon: failed to start `/usr/sbin/vpnc' [ !! ] vpnc |* ERROR: vpnc failed to start |
查看了一下man页,发现 –enable-1des 这个选项对应的配置文件行是:
把此行加到 /etc/vpnc/default.conf 的末尾,再启动服务,就一切正常了。
ifconfig的结果会多出一个 tun0:
|
|
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:xxx.xxx.xxx.xxx P-t-P:xxx.xxx.xxx.xxx Mask:255.255.255.255 |
route的结果也会有tun0接口对应的路由,到此,就可以直接使用10.xxx.xxx.xxx这样的内网地址和特定的远程服务器进行通讯了。
当然,如果你要频繁使用某vpn的话,也可以将vpnc服务加载到启动级别里。
发表于:2009年09月07日 13:07 | 分类: CLI软件 | 4 个评论 »
大慈岩位于建德市南面24公里处。它是一个佛教文化和秀丽山水完美结合的旅游胜地,素有“浙西小九华”之誉,以“江南悬空寺、长谷溪流、全国第一天然立佛”而名闻遐迩,是“浙江省风景名胜区优秀景点”之一。大慈岩的一大特色是悬崖高位洞穴建筑。主殿寺庙地藏王大殿依山建于高3米、长60米、宽20米的洞穴中,它一半凌架悬空,一半嵌入岩腹,颇为奇险壮观,与山西恒山悬空寺有异曲同工之妙,故称为“江南悬空寺”。新建的另一寺庙清风阁凌空构架于悬崖峭壁之上,远近山川尽收眼底,更是悬空之极。今人所凿之“天栈云渡”,沿断崖因势布局,为一石栏相续延伸的长廊,凭栏俯视,有“足底悬崖恐欲崩”之感。
呃,以上文绉绉的文字当然不是我写的,是旅游公司给的介绍,嘿嘿。
周末和公司的同事一起去旅游了一趟,由于人数太多,只能就近活动,所以就选择了省内的新安江-大慈岩二日游。
先是乘船在新安江观光了一番:


然后,昨天下午玩的是漂流,大概有3~4公里的水域,打水仗还是蛮好玩的。但是,大家都下去玩水了,也不能带着相机,所以这部分的相片就没有了。。。晚上的夜游新安江,也因为没带相机,所以没拍下照片,不过估计晚上带了相机也拍不好吧~
接着是今天一大早起来拍的照片,雾蒙蒙的新安江大桥:

我们住的酒店,难得公司比较大方,据说是四星级的。。住得还是蛮舒服的。。

终于到了传说中的大慈岩,其实这座山也不是很高,凭我常年缺少锻炼的体质,也能较快地爬到山顶:

有个硕大的观音像:

和一个硕大的弥勒佛

其实这个弥勒佛是双面的,很有创意哦

山景:


在山上往下拍,还能看到缆车

最后,出个考题:这是山上遇到的一条巨大的怪蜈蚣,身长超过10cm,红头、红尾、墨绿色的身子、嫩黄色的脚,谁知道是什么品种?

发表于:2009年09月06日 23:02 | 分类: 流水帐 | 15 个评论 »