# distfiles von eigenem Server runterladen

## hitachi

Hallo zusammen,

wie immer bin ich mir sicher, dass es irgendwo steht. Ich finde es nur nicht  :Sad: 

Also ich habe einen Server. Bis jetzt nutze ich diesen nach dieser Anleitung als rsync Mirror. Folgende Einträge habe ich gemacht:

Auf dem Server:

 */etc/rsyncd.conf wrote:*   

> pid file = /var/run/rsyncd.pid
> 
> max connections = 5
> 
> use chroot = yes
> ...

 

Auf den Clients:

 */etc/make.conf wrote:*   

> SYNC="rsync://192.168.1.4/gentoo-portage"

 

In Zukunft möchte ich, dass die Clients beim Emergen zuerst auch versuchen die Programme vom Server aus dem Ordner /usr/portage/distfiles zu laden. Viele Programme werden von allen drei PCs sonstwo aus dem Internet geladen, dabei würde es ja ein mal reichen.

Wie kann ich das erreichen?

----------

## musv

Dumme Frage:

In Betrachtung der IP scheint es sich bei Dir um ein internes Netz zu handeln. Wieso bindest du die Distfiles nicht einfach per nfs auf den Clients ein? Dann ziehst du die nur 1x. Bei Deiner Methode hast du die Dateien redundant auf jedem Rechner. 

Meine Konfiguration ist z.B. so:

Ich hab einen Desktoprechner und ein Notebook. 

Den Portage hab ich über squashfs gespeichert. Dadurch ist der nur 50 mb groß. 

Anleitung:

http://www.gentoo-wiki.info/HOWTO_VERY_small_Portage_Tree_with_SquashFS_and_UnionFS

Auf dem Desktoprechner synce ich den Portage. Anschließend bau ich das Portage-Image neu und schieb das einfach auf das Notebook rüber. Ich hab's sogar soweit umgeschrieben, dass ich die Overlays mit in das Portage-Image reingepackt hab. Die Distfiles hab ich auf /var/portage/distfiles umgeändert, was ich dann einfach per nfs (rw) freigeb.

Ergebnis: 

Ich muss für beide Rechner nur 1x syncen. Und wenn ein Rechner ein Paket runterlädt, landet das ebenfalls im zentralen Distfiles-Ordner. Ist als auch nur 1x vorhanden. Die Lösung ist wesentlich effizienter als ein lokaler Mirror per rsync.

----------

## think4urs11

 *hitachi wrote:*   

> In Zukunft möchte ich, dass die Clients beim Emergen zuerst auch versuchen die Programme vom Server aus dem Ordner /usr/portage/distfiles zu laden.
> 
> Wie kann ich das erreichen?

 

Abgesehen von der Alternative via NFS z.B. mittels http-replicator

----------

## frank_tireur

Ich hab einem ftpserver (ProFTPD) auf dem "Server" und bei den Clients hab ich in die make.conf die ftp Adresse des Servers eingetragen.

GENTOO_MIRRORS="ftp://hostip/distfiles ..."

So wird bei emerge erst auf dem Server geschaut ob da das distfile vorhanden ist, wenn nicht, dann springt er zum nächsten Host in der GENTOO_MIRRORS.

Gruß Frank

----------

