团队开发用机安装的是Gentoo Linux系统,同步portage也成了一个问题。如果每台机器都去同步官方的服务器的话,太耗费网络带宽。所以决定在本地搭建一个服务器用作portage的服务器,其他机器和这台服务器同步portage,而这台服务器会每天定时从Gentoo官方同步portage。
废话少说,下面谈谈步骤和注意事项。
首先在服务器上安装gentoo系统以及作为rsync服务器的必要组件。
# emerge net-misc/rsync
编辑文件/etc/rsyncd.conf,内容如下
pid file = /var/run/rsyncd.pid
max connections = 25
use chroot = yes
uid = nobody
gid = nobody
# Optional: restrict access to your Gentoo boxes
# hosts allow = 192.168.0.1 192.168.0.2 192.168.1.0/24
# hosts deny = *
[gentoo-portage]
path=/usr/portage
comment=Gentoo Portage
exclude=distfiles/ packages/
启动rsync服务
# /etc/init.d/rsyncd start
将rsync服务添加到系统启动项里
# rc-update add rsyncd default
注意本地服务器和官方服务器的的同步
将下面的代码添加到crontab中,负责每天22点命令本地服务器和官方服务器同步portage
# crontab -e
00 22 * * * /usr/bin/emerge --sync >> /tmp/emerge-sync.log
到这里,服务器已经搭建好了,可以在其他的开发机上测试下看看能否同步
# emerge --sync
Gentoo还提供了一个示例程序辅助我们搭建自己的rsync服务器
# emerge gentoo-rsync-mirror
安装完成后需要设置如下配置:
定制logo信息 /etc/rsync/rsyncd.motd
修改 /etc/conf.d/rsyncd 增加RSYNC_OPTS=--config=/etc/rsync/rsyncd.conf
修改/etc/rsync/gentoo-mirror.conf, 输入要同步的官方Gentoo服务器地址
启动定时同步官方服务器的任务
# crontab -e
00 22 * * * root /opt/gentoo-rsync/rsync-gentoo-portage.sh
默认的portage放在/opt/gentoo-rsync/portage/下 有需要也可以修改到自己定义的位置。
关于crontab的安装以及使用这里不多说了,请自行参考其他文章
# emerge sys-process/vixie-cron
阅读(1600) | 评论(0) | 转发(0) |