Portage via NFS
Aus Gentoo Linux Wiki
| Installationsmethoden • LiveCDs • Kernel & Hardware • Laptops & Notebooks • Portage • System • Netzwerke & Services • X • Software • Anderes • alphabetischer HOWTO Index |
Das ganze empfiehlt sich, wenn man im Netzwerk einen Rechner auf Gentoo-Basis rund um die Uhr laufen hat.
Kenntnisse in NFS werden vorausgesetzt, mehr dazu im NFS Howto. Die IPs müssen natürlich angepasst werden.
Inhaltsverzeichnis |
[Bearbeiten] Server mit Portage-Tree konfigurieren
vorausgesetzt dass NFS installiert ist und läuft, muss man seine /etc/exports um folgenden Eintrag erweitern:
/usr/portage 192.168.0.0/24(rw,sync,no_root_squash) /var/cache/edb 192.168.0.0/24(rw,sync,no_root_squash)
[Bearbeiten] Konfiguration der Clients
[Bearbeiten] Ein paar Verzeichnisse leeren
das Verzeichnis /usr/portage sollte man vorher leeren
cd /usr/portage rm -r * cd /var/cache/edb rm -r *
[Bearbeiten] /etc/fstab
In der /etc/fstab muss noch ein Eintrag hinzugefügt werden:
192.168.0.1:/usr/portage /usr/portage nfs rw,intr,suid 192.168.0.1:/var/cache/edb /var/cache/edb nfs rw,intr,suid
Ab sofort wird bei jedem Neustart das nfs-Verzeichnis gemounted. Den Neustart erspart man sich mit
mount /usr/portage mount /var/cache/edb
[Bearbeiten] portmap starten
Bevor man sich jetzt jedoch zufrieden zurücklehnen kann sollte man noch portmap installieren und starten. Auf meinem Rechner dauerte jede Verbindung zum Server sonst bis zu 1 Minute - nicht gerade lustig wenn man xorg-x11 installieren will...
$ emerge -vp portmap nfs-utils $ rc-update -a portmap default
[Bearbeiten] Portage konfigurieren
Wenn man jetzt etwas emergt, dann holt sich der PC die Sourcen aus dem Internet, speichert sie auf den Server und holt sich diese dann wieder um sie zu dekomprimieren. Man sieht deutlich, dass das zusätzlichen Netzwerkverkehr erzeugt, den emerge-Vorgang verlängert und die Festplatte des Servers mehr belastet. Bei ausreichend großer Festplatte und bei schnellen Wlan/100-Mbit-Netzwerk hat das jedoch keine spürbaren Auswirkungen.
Wenn man dies umgehen möchte, kann man Portage per make.conf mitteilen, wo er die distfiles abzuspeichern hat.
Dazu braucht man ein Verzeichnis:
mkdir /usr/distfiles
[Bearbeiten] make.conf
Nur noch folgendes hinzufügen:
DISTDIR="/usr/distfiles"
[Bearbeiten] Tipps
[Bearbeiten] Eix Cache via NFS verteilen
Eix bietet keine Option, seinen cache an einem anderen Ort zu speichern, komplett /var/cache zu exportieren ist nicht ratsam. Mittels Symlinks lässt es sich aber austricksen. Vorausgesetzt wird, dass auf allen Rechnern schon Eix installiert ist.
[Bearbeiten] Server konfigurieren
mkdir /var/eix/ mv /var/cache/eix /var/eix/eix ln -sf /var/eix/eix /var/cache/eix echo "/var/eix 192.168.0.0/24(rw,sync,no_root_squash)" >> /etc/exports /etc/init.d/nfs restart
[Bearbeiten] Client konfigurieren
mkdir /var/eix/ rm /var/cache/eix ln -sf /var/eix/eix /var/cache/eix echo "192.168.0.1:/var/eix /var/eix nfs rw,intr,suid" >> /etc/fstab mount /var/eix
[Bearbeiten] Schlussbemerkung
Zusätzlich kann man den Server mittels Crontab konfigurieren, dass dieser regelmäßig emerge --sync ausführt. Diese sollte man nicht zu oft tun, wenn man mehrmals pro Tag emerge --sync ausführt kann das dazu führen, dass man für einige Zeit gesperrt wird. Das hat auch einen guten Grund, emerge --sync erzeugt auf den Gentoo-Rechnern Netzlast und je mehr Netzlast, umso teurer wird das Ganze für Gentoo. Ein- bis zweimal die Woche reicht, wenn man emerge world ausführen will. Dann kann man ja per ssh vorher noch emerge --sync auf dem Server aufrufen. Sollten alle Gentoo-Rechner großteils ähnliche Software verwenden kann man zudem mit emerge -uDF world als Cronjob bereits vorab geänderte Softwarepakete herunterladen und sich so hohe Netzlasten am Tag ersparen.
Wenn man Eix benutzt, dann empfiehlt sich statt emerge --sync ein eix-sync per cronjob ausführen zu lassen.
[Bearbeiten] Siehe auch
Beachte bitte die Diskussion zu diesem Artikel.
--Misterjack 17:13, 11. Nov 2004 (GMT)
