Dernière modification : February 16 2007 18:35:30.
Comment mettre en place un mirroir GENTOO?
1.Mise en place de Rsync:
Pour installer un serveur rsync il n'est pas néccessaire d'installer un paquet. Seulement gentoo-rsync-mirror contient des exemples de scripts.
Il faut activer rsync au démarrage:
# rc-update add rsyncd default
Structure de /etc/rsync/rsyncd.conf:
uid = nobody
gid = nobody
use chroot = yes
max connections = 15
pid file = /var/run/rsyncd.pid
motd file = /etc/rsync/rsyncd.motd
log file = /var/log/rsync.log
transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[gentoo-x86-portage]
# Pour des raisons de compatibilité
path = /usr/portage
comment = Arbre de portage gentoo
exclude=distfiles/ packages/
[gentoo-portage]
# Les versions modernes de portage utilisent cette section.
path = /usr/portage
comment = Arbre de portage gentoo
exclude=distfiles/ packages/
[portage]
path=/usr/portage
comment=Gentoo Portage
exclude=distfiles/ packages/
Si vous désirez faire un serveur local rajouter ces deux lignes:
hosts allow = 192.168.0.1 192.168.0.2 192.168.1.0/24
hosts deny = *
Il faut les adapter selon votre configuration.
Configuration des postes clients:
(Utilisez l'adresse IP du serveur)
SYNC="rsync://192.168.0.1/portage"
(Ou utilisez son nom)
SYNC="rsync://le_nom_du_serveur/portage"
Il est conseillé de synchroniser deux fois par heure son arbre de portage. Pour cela, il est possible d'utiliser cron.
# crontab -e root
Ajouter des lignes qui ressemble à cela:
0 20 * * * mirrorselect -a && emerge sync
Cela signifie que tous les jours à 20heures, le meilleur serveur est sélectionné puis l'arbre de portage mis à jour. N'oublier pas d'activer un démon cron au démarrage.
2.Serveur de sources:
Il faut déjà disposer d'un serveur http ou ftp. Ensuite, il faut télécharger les sources et les maintenir à jour. Pour cela vous pouvez utiliser ce script:
#!/bin/bash
RSYNC="/usr/bin/rsync"
OPTS="--quiet --recursive --links --perms --times --devices --delete --timeout=300"
#exclure grp et releases
#pour les distfiles seulement
SRC="ftp.ussg.iu.edu::gentoo-distfiles"
#Il est possible d'utiliser un autre serveur
DST="/mnt/space/gentoo/"
#Emplacement des sources à télécharger
echo "Mise à jour commencée à" `date` >> $0.log 2>&1
logger -t rsync "Mise à jour des sources Gentoo"
${RSYNC} ${OPTS} ${SRC} ${DST} >> $0.log 2>&1
echo "Fin: "`date` >> $0.log 2>&1
N'oublier pas d'insérer ce script à cron.
Vous pouvez inserer vos sources à rsync de cette manière d'autre serveur pourront se synchroniser sur votre serveur. Pour cela ajouter ces lignes à /etc/rsync/rsyncd.conf
[gentoo-distfiles]
# Sources Gentoo.
path = /mnt/space/gentoo
comment = Sources gentoo
Ce serveur est un serveur rsync et sources de Gentoo pour mon réseau local. Ne disposant pas de ressources suffisante il ne peut être ajouter à la liste des mirroirs officiel. Il est tous de même possible de l'utilser en modifiant votre fichier make.conf:
GENTOO_MIRRORS=http://frogdev.dyndns.org/mirroir-gentoo/
Vous pouvez aussi utiliser ce serveur pour synchroniser vos sources en changant SRC="frogdev.dyndns.org::gentoo-distfiles" dans le script de synchronisation des sources.
Astuce: si vous utilisez apache comme serveur http, ajouter à /etc/apache2/conf/commonapache2.conf
<Directory Emplacement des fichiers sources>
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Cela permet d'afficher les fichiers présent dans le répertoire.
Voir les commentairesAjouter un commentaire