BSD-Wiki

Mitschrift einer FreeBSD-Installation

Benutzer-Werkzeuge

Webseiten-Werkzeuge


eigenes_pkg-repository

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

eigenes_pkg-repository [2014/02/11 21:57]
rakor [Über poudriere]
eigenes_pkg-repository [2017/10/02 13:40]
Zeile 1: Zeile 1:
-====== Allgemein ====== 
-Spätestens seit FreeBSD 9.1 steht mit //pkg// ein neues und deutlich verbessertes Paketmanagement-Werkzeug zur Verfügung. Da es jedoch leider noch immer kein offizielles Repository dafür gibt kann man sich relativ einfach ein eigenes erzeugen. Hierzu wird das Werkzeug //​ports-mgmt/​poudriere//​ verwendet. ​ 
- 
-====== Über poudriere ====== 
-Poudriere ist ursprünglich ein Werkzeug um die Erzeugung von Pakete für FreeBSD zu testen. Hier wird es jedoch dafür verwendet um ein eigenes Paketrepository zu erzeugen. 
-Poudriere nutzt dabei die Möglichkeiten die ein modernes FreeBSD ihm bietet (z.B. ZFS, Jails,..). Seit Version 3.0 ist es möglich poudriere auch ohne ZFS zu verwenden. Die Konfiguration ohne ZFS wird im weiteren betrachtet (um ZFS zu verwenden sind lediglich wenige selbsterklärende Änderungen an der Konfiguration notwendig). 
- 
-Da poudriere selbst jails erzeugt und verwaltet ist die **Installation und der Betrieb** von poudriere selbst **innerhalb einer Jail nicht ohne weiteres möglich**. (Wer es doch versuchen möchte kann der Anleitung auf dieser fremden Seite folgen: [[https://​fossil.etoilebsd.net/​poudriere/​doc/​trunk/​doc/​poudriere_in_jail.wiki poudriere in a jail]] - Keine Garantie für den Inhalt der Seite!). 
- 
-====== poudriere installieren ====== 
-Zunächst muss //​ports-mgmt/​poudriere//​ installiert werden. 
- 
-====== poudriere konfigurieren ====== 
-===== Konfigurationsdatei anlegen ===== 
-Poudriere liefert direkt eine Konfigurationsvorlage mit welche kopiert werden muss. 
-<​code>​ 
-# cp /​usr/​local/​etc/​poudriere.conf.sample /​usr/​local/​etc/​poudriere.conf 
-</​code>​ 
- 
-===== Konfiguration anpassen ===== 
-Anschließend kann die Datei ///​usr/​local/​etc/​poudriere.conf//​ bearbeitet werden. Im Folgenden wird pourdiere für ein System ohne ZFS konfiguriert. Seine Daten legt poudriere unter ///​poudriere//​ ab (was z.B. eine eigene Partition sein kann um das System davor zu schützen, dass ///// voll läuft). 
-<​code>​ 
-NO_ZFS=yes 
-FREEBSD_HOST=ftp://​ftp.freebsd.org 
-RESOLV_CONF=/​etc/​resolv.conf 
-BASEFS=/​poudriere 
-USE_PORTLINT=no 
-USE_TMPFS=yes 
-DISTFILES_CACHE=/​usr/​ports/​distfiles 
-</​code>​ 
- 
-====== Port-Tree installieren ====== 
-Poudriere benötigt einen Port-Tree um die Pakete zu bauen. Es verwaltet dabei seinen eigenen Port-Tree (um genau zu sein kann es verschiedene verwalten). Dieser wird wie folgt geladen (und befindet sich dann unter ///​poudriere/​ports/​default//​). 
-<​code>​ 
-# poudriere ports -c 
-</​code>​ 
- 
-Jail erstellen 
-<​code>​ 
-# poudriere jail -c -j 92amd64 -v 9.2-RELEASE -a amd64 
-</​code>​ 
- 
-Pakete für das neue PKG bauen 
-<​code>​ 
-echo "​WITH_PKGNG=yes"​ > /​usr/​local/​etc/​poudriere.d/​92amd64-make.conf 
-</​code>​ 
- 
-Paketliste anlegen unter ///​usr/​local/​etc/​poudriere.list//​ 
-<​code>​ 
-editors/​vim-lite 
-</​code>​ 
- 
-Bau anstossen 
-<​code>​ 
-# poudriere bulk -f /​usr/​local/​etc/​poudriere.list -j 92amd64 
-</​code>​ 
- 
-Der fertige Paketbaum liegt dann unter ///​poudriere/​data/​packages/​92amd64-default//​ und kann über einen Webserver als Repository freigegeben werden. 
- 
-====== Weitere Arbeit mit Poudriere ====== 
-Mit dem fertig eingerichteten Poudriere kann nun beliebig weiter gearbeitet werden. Es folgen nun ein paar typische Beispiele. 
- 
-===== Pakete hinzufügen oder entfernen ===== 
-Um neue Pakete hinzuzufügen oder nicht mehr benötigte nicht erneut bauen zu lassen wird die Datei ///​usr/​local/​etc/​poudriere.list//​ entsprechend angepasst (es ist auch möglich Zeilen durch vorranstellen eines //#// auszukommentieren,​ dann werden diese nicht ausgewertet). Anschließend muss der [[Eigenes PKG-Repository#​Paketbaum neu bauen | Paketbaum neu gebaut werden]]. 
- 
-===== Ports-Tree aktualisieren ===== 
-Um aktuelle Pakete zu bauen muss logischerweise zunächst der Ports-Tree aktuallisiert werden. Dies geschieht mit folgendem Aufruf: 
-<​code>​ 
-# poudriere ports -u 
-</​code>​ 
-Anschließend kann der [[Eigenes PKG-Repository#​Paketbaum neu bauen | Paketbaum neu gebaut werden]]. 
- 
-===== Paketbaum neu bauen ===== 
-Um den Paketbaum einer Jail neu zu bauen wird einfach wieder der entsprechende Befehl abgesetzt. Die Jail mit dem Namen '​92amd64'​ wird z.B. mit folgendem Aufruf neu gebaut: 
-<​code>​ 
-# poudriere bulk -f /​usr/​local/​etc/​poudriere.list -j 92amd64 
-</​code>​ 
  
eigenes_pkg-repository.txt · Zuletzt geändert: 2017/10/02 13:40 (Externe Bearbeitung)

Impressum