freebsd:freebsd_-_paket-management
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| freebsd:freebsd_-_paket-management [2023-05-01 20:14:58] – [Die Ports-Options bzw. Paketkonfigurationen sichern] manfred | freebsd:freebsd_-_paket-management [2023-05-04 23:29:19] (aktuell) – [arbeiten mit dem Ports-Tree] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== FreeBSD - Paket-Management ====== | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | |||
| + | ===== pkgng (ab FreeBSD 10) ===== | ||
| + | |||
| + | [[:: | ||
| + | |||
| + | |||
| + | ===== pkg_xxx (bis FreeBSD 9) ===== | ||
| + | |||
| + | **" | ||
| + | |||
| + | Wer von RedHat die Arbeit mit " | ||
| + | mit den folgenden Programmen (Stand FreeBSD 4.7): | ||
| + | |||
| + | - pkg_add | ||
| + | - pkg_create | ||
| + | - pkg_delete | ||
| + | - pkg_glob | ||
| + | - pkg_sign | ||
| + | - pkg_update | ||
| + | - pkg_which | ||
| + | - pkg_check | ||
| + | - pkg_deinstall | ||
| + | - pkg_fetch | ||
| + | - pkg_info | ||
| + | - pkg_sort | ||
| + | - pkg_version | ||
| + | |||
| + | Ein installiertes Programm aus den Ports, wird in FreeBSD wie ein Paket | ||
| + | behandelt. Man kann aus den Ports auch sein eigenes Binär-Packet erstellen mit | ||
| + | "make packages", | ||
| + | daraus erstellt. | ||
| + | |||
| + | |||
| + | ==== überflüssige Ports entfernen ==== | ||
| + | |||
| + | * [[http:// | ||
| + | |||
| + | Denken Sie daran, installierte Ports wieder zu entfernen, wenn Sie diese nicht mehr benötigen. Um diese Arbeit zu erleichtern, | ||
| + | |||
| + | |||
| + | ==== Einführung und bei weitem nicht vollständig ==== | ||
| + | |||
| + | weitere Info' | ||
| + | # man pkg_info | ||
| + | |||
| + | installiert das Paket aus einer vorhandenen Datei (die Bash): | ||
| + | # pkg_add bash-2.05b.004.tbz | ||
| + | |||
| + | installiert über das Netzwerk/ | ||
| + | # pkg_add -r bash | ||
| + | |||
| + | löscht ein installiertes Paket (die Bash): | ||
| + | # pkg_delete bash-2.05b.004 | ||
| + | |||
| + | listet alle installierten Pakete mit einer Kurzbeschreibung auf: | ||
| + | # pkg_info | ||
| + | |||
| + | zeigt den Pfad unterhalb von "/ | ||
| + | befindet (shells/ | ||
| + | # pkg_info -o bash-2.05b.004 | ||
| + | |||
| + | zeigt das origin von allen installierten Paketen an: | ||
| + | # pkg_info -aoq | ||
| + | ... | ||
| + | net/bmon | ||
| + | ... | ||
| + | |||
| + | zeigt das origin von allen installierten Paketen mit dem vorangestellten Paketnamen an: | ||
| + | # pkg_info -aoQ | ||
| + | ... | ||
| + | bmon-2.1.0_2: | ||
| + | ... | ||
| + | |||
| + | zeigt die Beschreibung des Paketes an ==> der Inhalt der Datei " | ||
| + | (less / | ||
| + | # pkg_add -d bash-2.05b.004 | ||
| + | |||
| + | zeigt den " | ||
| + | # pkg_info -p [Paketname] | ||
| + | |||
| + | alle aufgelisteten Pakete werden von diesem Paket verwendet: | ||
| + | # pkg_info -r [Paketname] | ||
| + | |||
| + | alle aufgelisteten Pakete verwenden dieses Paket: | ||
| + | # pkg_info -R [Paketname] | ||
| + | |||
| + | zeigt von jeder Datei aus dem Paket den vollen Pfad: | ||
| + | # pkg_info -L [Paketname] | ||
| + | |||
| + | listet alle Dateien aus dem Paket auf, die seit der Installation verändert oder | ||
| + | manipuliert wurden. | ||
| + | Es werden natürlich auch Konfigurationsdateien aufgelistet, | ||
| + | Einstellungen vorgenommen hat. | ||
| + | # pkg_info -g [Paketname] | ||
| + | |||
| + | Mit der folgenden Kommandozeile kann man sich ALLE veränderten Dateien anzeigen | ||
| + | lassen: | ||
| + | # pkg_info -g `pkg_info | awk ' | ||
| + | |||
| + | zeigt das Paket, zu dem die ausführbare Datei gehört: | ||
| + | # pkg_info -W bash | ||
| + | / | ||
| + | |||
| + | nur das eine Paket entfernen: | ||
| + | # pkg_delete bash-2.05b.004 | ||
| + | |||
| + | eine Paket mit allen anderen Paketen, die dieses Paket benötigen (rekursiv), entfernen: | ||
| + | # pkg_delete -r bash-2.05b.004 | ||
| + | |||
| + | |||
| + | ===== Der Ports-Tree ===== | ||
| + | |||
| + | |||
| + | ==== Die Ports-Options bzw. Paketkonfigurationen sichern ==== | ||
| + | |||
| + | Bevor ein Port installiert wird, der konfigurierbar ist, | ||
| + | wird in seinem Verzeichnis dieser Aufruf gestartet: | ||
| + | > make config | ||
| + | > make config-recursive | ||
| + | |||
| + | Die hier vorgenommenen Einstellungen werden in diesem Verzeichnis abgelegt: | ||
| + | / | ||
| + | |||
| + | Man braucht also nur dieses Verzeichnis zu sichern: | ||
| + | > tar czf ports_options.tgz / | ||
| + | |||
| + | |||
| + | ==== arbeiten mit dem Ports-Tree ==== | ||
| + | |||
| + | wenn man nicht weiß wo sich ein Paket im Ports-Tree befindet, dann kann man das z.B. so rausfinden: | ||
| + | > whereis dokuwiki | ||
| + | dokuwiki: / | ||
| + | | ||
| + | > whereis vim | ||
| + | vim: / | ||
| + | |||
| + | oder mit etwas mehr Informationen (// | ||
| + | > cd /usr/ports] | ||
| + | > make search name=vim | ||
| + | |||
| + | ein Programm im Ports-Tree konfigurieren | ||
| + | > cd / | ||
| + | > make clean | ||
| + | > make config-recursive | ||
| + | |||
| + | ein Programm im Ports-Tree bauen | ||
| + | > cd / | ||
| + | > make | ||
| + | |||
| + | ein Programm aus dem Ports-Tree deinstallieren //(wenn bereits eine alte Version installiert ist)// | ||
| + | > cd / | ||
| + | > make deinstall | ||
| + | |||
| + | ein Programm aus dem Ports-Tree installieren | ||
| + | > cd / | ||
| + | > make install | ||
| + | |||
| + | aus dem Ports-Tree ein Paket bauen | ||
| + | > cd / | ||
| + | > make package | ||
| + | |||
| + | nachdem der Ports-Tree erneuert wurde, lassen wir uns von den installierten Paketen die veralteten Versionen anzeigen | ||
| + | > pkg version -l "<" | ||
| + | math/ | ||
| + | devel/ | ||
| + | multimedia/ | ||
| + | ... | ||
| + | | ||
| + | > pkg version -ol "<" | ||
| + | Imath-3.1.3 | ||
| + | abseil-20211102.0 | ||
| + | aom-3.2.0_1 | ||
| + | ... | ||
| + | |||
| + | von jedem Paket den Platzbedarf auf der Platte anzeigen (im Megabyte): | ||
| + | # pkgdu -m | ||
| + | |||
| + | |||
| + | ==== Fehler ==== | ||
| + | |||
| + | ### Fehler: | ||
| + | # ffmpeg -i | ||
| + | ld-elf.so.1: | ||
| + | | ||
| + | ### Lösung: | ||
| + | # find /usr/ -type f | grep -F libunistring.so | ||
| + | / | ||
| + | / | ||
| + | | ||
| + | # ln -s / | ||
| + | |||
