Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
localer gentoo mirror
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Dirk_G
Tux's lil' helper
Tux's lil' helper


Joined: 09 Nov 2003
Posts: 144
Location: Wallerfangen

PostPosted: Fri Jun 11, 2004 11:48 am    Post subject: localer gentoo mirror Reply with quote

Hi zusammen

Habe mir auf einen Server Gentoo installiert den ich auch als mirror für mein locales Netz nutzen will. Rsync für den Portagetree und ein kleiner FTP Server für die Distfiles und den Snapshot laufen schon. Was mir jetzt noch fehlt sind die Distfiles. Aus Platzgründen kann ich aber nicht alle Distfiles laden, sondern wollte mir nur die wichtigsten hohlen, wie system, X, KDE, Gnome, Mozilla, OpenOffice und so. Aber wie macht man das?
Reicht es wenn ich mir ein Script oder cron schreibe mit

emerge -f system xfree kde gnome usw.

Läd mir das dann auch ALLE Abhänigkeiten mit, zumal der Server ja ohne X und den Krempel auskommt! Währe für jeden Tip dankbar den ihr mir gibt.


Dirk
Back to top
View user's profile Send private message
thm
Tux's lil' helper
Tux's lil' helper


Joined: 15 Dec 2003
Posts: 77
Location: Munich

PostPosted: Fri Jun 11, 2004 12:47 pm    Post subject: Reply with quote

Ja und nein. emerge -f berechnet zwar die Abhängigkeiten und holt die distfiles, jedoch nur gemäss der USE-Einstellung auf dem Server. Dadurch würden ziemlich sicher einige Pakete und Dateien rausfallen. Besser ist wahrscheinlich:
Code:
USE="..." emerge -f <Pakete>
wobei ... hinreichend grosszügig gewählt werden muss, damit alle Clients das finden was sie suchen.
Ich habe etwas Ähnliches vor und würde mich für deine config-Dateien zu rsync und ftp interessieren. :D
_________________
Thomas
Back to top
View user's profile Send private message
Dirk_G
Tux's lil' helper
Tux's lil' helper


Joined: 09 Nov 2003
Posts: 144
Location: Wallerfangen

PostPosted: Fri Jun 11, 2004 1:13 pm    Post subject: Reply with quote

Hi

Bin schon etwas weiter...
Nachdem ich mich in die englische Beschreibung von emerge eingelesen hab, hab ich die Option -ef gefunden. Soweit ich das verstanden hab nimmt der dann alles. Währe aber nett wenn mir das noch einer der echt Ahnung und englisch kann mir das mal erklärt ;) besonders ob ich dann die USE noch brauche oder nicht?
Was ich auch noch nicht weiß, wie sieht es mit den alten Distfiles aus, werden die automatisch gelöscht?

So, jetzt zu meiner rsync config:

Code:
 cat /etc/rsync/rsyncd.conf
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-admin/gentoo-rsync-mirror/files/rsyncd.conf,v 1.5 2004/06/06 14:14:26 klieber Exp $
 
uid = nobody
gid = nobody
use chroot = yes
max connections = 20
pid file = /var/run/rsyncd.pid
motd file = /etc/rsync/rsyncd.motd
transfer logging = no
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
 
[gentoo-x86-portage]
#this entry is for compatibility

path = /opt/gentoo-rsync/portage
comment = Gentoo Linux Portage tree
 
[gentoo-portage]
#modern versions of portage use this entry
path = /opt/gentoo-rsync/portage
comment = Gentoo Linux Portage tree mirror
exclude = distfiles


Als ftp-server hab ich oftpd. Der ist so einfach das wirklich jeder damit klar kommt!


cu
Dirk
Back to top
View user's profile Send private message
thm
Tux's lil' helper
Tux's lil' helper


Joined: 15 Dec 2003
Posts: 77
Location: Munich

PostPosted: Fri Jun 11, 2004 1:52 pm    Post subject: Reply with quote

Der Manpage text gibt leider nicht her, wie sich --emptytree auf die verwendeten USE-Keywords auswirkt. Nach einigem Ausprobieren erscheint es mir, dass USE dann maximiert wird (vermutlich anhand der "Deklaration" im jeweiligen ebuild. Man kann allerdings einzelne Keywords ausschliessen, z.B.:
Code:
USE="-readline" emerge -ep parted

Kurz: -ef scheint in erster Näherung auszureichen.

Danke für die rsync.conf
_________________
Thomas
Back to top
View user's profile Send private message
amne
Bodhisattva
Bodhisattva


Joined: 17 Nov 2002
Posts: 6378
Location: Graz / EU

PostPosted: Fri Jun 11, 2004 3:24 pm    Post subject: Reply with quote

Hier steht auch ein bisschen was zum Thema:
[PORTAGE] Einen Portageserver für mehrere Rechner

Prinzipiell ist es vermutlich sinnvoller, das ganze so aufzuziehen, dass die Distfiles erst geladen werden, wenn sie wirklich benötigt werden - das soll angeblich der TSP-Cache gut können. Ansonsten würdest du nur einen haufen Files ziehen, die dann keiner mehr braucht weil neuere Versionen kommen - und das soll ja wohl nicht der Sinn des Mirrors sein. ;)
_________________
Dinosaur week! (Ok, this thread is so last week)
Back to top
View user's profile Send private message
Dirk_G
Tux's lil' helper
Tux's lil' helper


Joined: 09 Nov 2003
Posts: 144
Location: Wallerfangen

PostPosted: Sat Jun 12, 2004 2:29 pm    Post subject: Reply with quote

Hi

So, hab jetzt ein wenig rumprobiert und es scheit das es mit

Code:
emerge -ef XYZ


zu geht. Sollte dann noch die ein oder ander Datei fehlen ist das nicht so schlimm. Werd ich aber noch ausgibig testen können...
Das zweite Problem mit den alten Distfiles hab ich glaube ich auch gelößt. Hab mir einfach ein Script geschriben. Was besseres hab ich nicht (noch nicht) gefunden.
Hier mal das Script

Code:
cat distfiles.clean.sh
#!/bin/bash
 
PATH_DISTFILES="/usr/portage/distfiles"
PATH_PORTAGE="/usr/portage"
 
echo "Start cleannig at `date`"
 
echo -ne "\tGenerating new Database of $PATH_PORTAGE"
locate -U $PATH_PORTAGE
echo -e "\r\t\t\t\t\t\t\t\t\t\tok"
 
count=0
 
for distfile in `ls $PATH_DISTFILES`
do
        echo -ne "\tSearch ebuild for --> $distfile"
        ebuild="/`echo $distfile | sed 's/.tar.*//g'`"
 
        if [ "`locate $ebuild | grep ebuild`" = "" ];then
                echo -e "\r\t\t\t\t\t\t\t\t\t\tdeleting"
                rm $"$PATH_DISTFILES/$distfile"
        else
                echo -e "\r\t\t\t\t\t\t\t\t\t\tok"
        fi
done
 
echo "End cleanning at `date`"


Ist nichts wildes und auch noch nicht so elegant, aber ich denke es erfüllt seinen Zweck. Ich gehe einfach davon aus, das wenn es kein Ebuild mehr gibt kann ich auch dieses Package nicht mehr emergen! --> Und wenn das nicht geht brauche ich es nicht mehr.
Dummerweise gibt es aber Distfiles die kein Ebuild haben. Die werden dann gleich mit gelöscht.
Na ja, was solls. Die sind eh nur ein paar 100k groß und sind schnell wieder gezogen!


Dirk
Back to top
View user's profile Send private message
Chacabaou
n00b
n00b


Joined: 12 Jun 2004
Posts: 30
Location: Erlangen/Germany

PostPosted: Sat Jun 12, 2004 6:57 pm    Post subject: Reply with quote

Hallo Dirk,

ich hatte bei mir mal genau dasselbe vor, und habe es mittlerweile recht elegant (IMHO) gelöst.

Der Portagetree besorge ich mir auf einen zentralen Rechner mit gentoo-rsync-mirror (sollte klar sein), von dort wird er dann allen anderen zur Verfügung gestellt.

Bei den distfiles musste ich eine Weile rumrätseln, bis ich dann das (AFAIK) einzige Programm gefunden hatte, was dieser Aufgabe wirklich gerecht wird: apt-proxy.
Eigentlich ist es ein Tool für Debian, da es aber letztlich nur aus einem großen Shellscript besteht, kann man sich das leicht klauen. :)
Der Vorteil von apt-proxy ist, dass es perfekt mit der Herausforderung des Caching umgeht. Andere Programme hatten ausnahmslos Probleme damit, distfiles nicht mehrmals runter zu laden, sie IMMER aus dem Cache zu holen, wenn sie da sind, usw.
Mit apt-proxy ist es mir möglich, auf einem Client einen distfiles-download jederzeit zu beginnen und zu stoppen, emerge hängt sich immer wieder in den Download ein und apt-proxy schickt mir durch, was es bisher schon hat, ohne den Download neu zu starten, oder derartige Sperenzchen.

Mittlerweile gibt es übrigens auch ein ebuild zu apt-proxy, allerdings erinnere ich mich, dass ich den Source ein klein wenig abändern musste, damit auch stinknormale distfiles (das Teil ist ja in der Lage DEBs unter Beachtung ihrer Versionen zu verarbeiten, und so) geladen werden können.

HTH,
Daniel.
_________________
"You win again, gravity!" -- Zapp Brannigan
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum