BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

Herausfinden in welcher Jail ein Prozess läuft

Möchte man herausfinden in welcher Jail ein Prozess läuft, kann dazu ps mit der -o jid Option auf dem Host-System ausgeführt werden. Danach wird zu jedem Prozess die Jail-ID angezeigt. Prozesse welche auf dem Host-System laufen haben die Jail-ID 0:

# ps axo jid,command
   5 screen -r
   5 irssi
   0 sshd: test [priv] (sshd)
   0 sshd: test@ttyp1 (sshd)
   3 /usr/sbin/named -u bind
   4 /usr/local/sbin/httpd
[...]

Mit jls kann danach herausgefunden werden, welche Jail-ID zu welcher Jail gehört:

# jls
   JID  IP Address      Hostname                      Path
     5  192.168.1.2     test1.chruetertee.ch          /usr/jails/test1.chruetertee.ch
     4  192.168.1.3     test2.chruetertee.ch          /usr/jails/test2.chruetertee.ch
     3  192.168.1.4     test3.chruetertee.ch          /usr/jails/test3.chruetertee.ch
     2  192.168.1.5     test4.chruetertee.ch          /usr/jails/test4.chruetertee.ch
     1  192.168.1.6     test5.chruetertee.ch          /usr/jails/test5.chruetertee.ch

Mehr Informationen findet man in der Manpage ps(1) und jls(8).

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink

Tinderbox-Jail ohne Kompilieren erstellen

Seit Tinderbox 3.3 ist es nun auch möglich eine Tinderbox-Jail ohne Kompilieren zu erstellen. Dazu muss zuerst lftp installiert werden:

# cd /usr/ports/ftp/lftp && make install clean

Danach kann die Jail erstellt werden. Mit der -u LFTP Option wird angegeben, dass lftp zum Herunterladen einer FreeBSD-Installations-CD verwendet werden soll, aus welcher die Tinderbox-Jail erstellt wird. Mit der -H Option kann der FTP-Server gewählt werden, von welchem die Installations-CD herunterladen wird. Im folgenden Beispiel wird eine 7.3-RELEASE Jail erstellt:

# cd /usr/local/tinderbox/scripts
# ./tc createJail -j 7.3 -d "FreeBSD 7.3-RELEASE" -t 7.3-RELEASE -u LFTP -H ftp.ch.freebsd.org
7.3: initializing tree
7.3: creating top-level directory
7.3: adding to datastore... done.
7.3: initializing new jail...
7.3: updating jail with LFTP
7.3: cleaning out /usr/local/tinderbox/jails/7.3/obj
7.3: cleaning out /usr/local/tinderbox/jails/7.3/tmp
7.3: creating tarball
7.3: cleaning out /usr/local/tinderbox/jails/7.3/tmp
7.3: cleaning out /usr/local/tinderbox/jails/7.3/obj
Cleaning up after Jail creation.  Please be patient.
Related Entries:
Tinderbox aufräumen
Wartezeit von tinderd ändern
Quellcode in der Tinderbox speichern
RSS-Feed der zuletzt gebauten Ports einer Tinderbox
Port-Optionen in der Tinderbox verwenden
 Permalink

Prüfen ob Port-Patches angewendet werden können

Ändert man einen FreeBSD Port, zum Beispiel durch das Aktualisieren auf eine neuere Version, so kann es vorkommen, dass die Port-Patches welche sich im files-Verzeichnis befindenk, nicht mehr angewendet werden können. Dies kann mit make checkpatch geprüft werden:

# make checkpatch
===>  Found saved configuration for firefox-3.1.b3,1
===>  Extracting for firefox-3.6.b5,1
=> MD5 Checksum OK for firefox-3.6b5.source.tar.bz2.
=> SHA256 Checksum OK for firefox-3.6b5.source.tar.bz2.
===>   firefox-3.6.b5,1 depends on file: /usr/local/bin/perl5.8.9 - found
===>  Patching for firefox-3.6.b5,1
===>   firefox-3.6.b5,1 depends on file: /usr/local/bin/perl5.8.9 - found
===>  Applying extra patch /usr/home/beat/dev/freebsd-gecko/branches/experimental/www/firefox3-devel/files/libsydney_oss
===>  Applying FreeBSD patches for firefox-3.6.b5,1
Ignoring previously applied (or reversed) patch.
1 out of 1 hunks ignored--saving rejects to toolkit/xre/Makefile.in.rej
=> Patch patch-toolkit_xre_Makefile.in failed to apply cleanly.
=> Patch(es) patch-build_unix_run-mozilla.sh patch-config_autoconf.mk.in patch-config_mkdepend_Makefile.in patch-configure.in patch-content-xslt-public-txDouble.h patch-db_sqlite3_src_Makefile.in patch-js-src-Makefile.in patch-js-src-config-mkdepend_Makefile.in patch-js-src-config_config.mk patch-js-src-configure.in patch-js-src-jslock.cpp patch-js_src_jsnum.cpp patch-layout_generic_Makefile.in patch-media-libsydneyaudio-include-sydney_audio.h patch-media_liboggz_include_oggz_oggz_off_t_generated.h patch-security-coreconf-FreeBSD.mk patch-security_manager_ssl_src_nsNSSComponent.cpp patch-storage_build_Makefile.in patch-toolkit_mozapps_update_src_updater_updater.cpp applied cleanly.
*** Error code 1

Stop in /usr/home/beat/dev/freebsd-gecko/branches/experimental/www/firefox3-devel.
*** Error code 1

Stop in /usr/home/beat/dev/freebsd-gecko/branches/experimental/www/firefox3-devel.

Dabei werden die Patch-Dateien nur überprüft ob diese mit den aktuellen Code noch angewendet werden können, ohne den Quellcode jedoch zu verändern. Schlägt ein Patch fehl, kann dieser korrigiert und danach das Ergebnis wieder mit make checkpatch überprüft werden.

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink

Überprüfen ob ein Port mit einem anderen in Konflikt steht

Möchte man überprüfen ob ein Port mit einem bereits installierten Port in Konflikt steht, so kann dies vor dem Installieren mit make check-conflicts getestet werden:

# cd /usr/ports/www/seamonkey2 && make check-conflicts

===>  seamonkey-2.0.1 conflicts with installed package(s):
      spidermonkey-1.7.0

      They install files into the same place.
      Please remove them first with pkg_delete(1).

*** Error code 1

Stop in /usr/ports/www/seamonkey2
Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink

Portmaster mit Unterstützung für Pakete

Mit Hilfe von portmaster könnten installierte Ports aktualisiert werden. Seit der Version 2.12 wird nun auch das Aktualisieren mit Hilfe von Paketen unterstützt. Im FreeBSD Portbaum findet man portmaster unter ports-mgmt/portmaster:

# cd /usr/ports/ports-mgmt/portmaster && make install clean

Mit Hilfe der -PP Option werden die installierten Ports aussschliesslich mit Paketen aktualisiert. Die heruntergeladenen Pakete werden dabei im /usr/ports/packages/portmaster-download/ Verzeichnis gespeichert:

# portmaster -PP pkg_cutleave

===>>> Currently installed version: pkg_cutleaves-20080320
===>>> Port directory: /usr/ports/ports-mgmt/pkg_cutleaves
===>>> Gathering dependency list for ports-mgmt/pkg_cutleaves from ports
===>>> Starting dependency check
===>>> Dependency check complete for ports-mgmt/pkg_cutleaves
===>>> Starting install for ports-mgmt/pkg_cutleaves <<<===

===>>> All dependencies are up to date

===>>> Checking package repository for latest available version
===>>> Creating a backup package for old version pkg_cutleaves-20080320
===>>> Installing package

===>>> Updating dependencies for pkg_cutleaves-20090810 to match installed versions

===>>> Upgrade of pkg_cutleaves-20080320 to pkg_cutleaves-20090810 complete

Möchte man den Server festlegen, von welchem die Pakete heruntergeladen werden, so kann dazu die PACKAGESITE-Umgebungsvariable gesetzt werden. Zum Beispiel in der (t)csh:

# setenv PACKAGESITE http://tinderbox.chruetertee.ch/tb/packages/8-FreeBSD

Verwendet man die -P Option so wird falls vorhanden ein Paket zur Aktualisierung verwendet, wird aber keines gefunden, so wird der Port mit Hilfe des Portbaumes aktualisiert. Im folgenden Beispiel werden alle installierten Ports aktualisiert für welche es eine neuere Version gibt. Falls möglich wird zur Aktualisierung ein Paket verwendet, ist keines vorhanden wir der Port mit Hilfe des Portbaumes kompiliert:

# portmaster -P -a

Findet portmaster ein Paket, welches neuer ist als das Installierte ist, im Portbaum befindet sich allerdings noch eine neuere Version des Portes, kann mit der --packages-if-newer festgelegt werden, dass trotzdem das Paket installiert wird:

# portmaster -P --packages-if-newer nmap

Sollten beim Aktualisieren eines Ports neue Abhängigkeiten für das Kompilieren dieses Portes benötigt werden, können diese mit Hilfe der --packages-build Option als Pakete heruntergeladen und installiert werden.

# portmaster --packages-build screen

Mehr Informationen zu portmaster findet man in der Manpage portmaster(8). Informationen über die zukünftigen Möglichkeiten von portmaster und wie man die Entwicklung  von portmaster unterstützen kann, findet man auf der "portmaster funding proposal"-Webseite.

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink

CPU-Temperaturen und Batterieinformationen auslesen

Mt Hilfe von hwstat lassen sich auf FreeBSD die Prozessortemperaturen sowie auf einem Laptop Informationen zur Batterie auslesen. Im FreeBSD -Portbaum findet man hwstat unter sysutils/hwstat:

# cd /usr/ports/sysutils/hwstat && make install clean

Damit die CPU-Temperaturen ausgelesen werden können, muss zuerst das coretemp-Kernelmodul geladen werden:

# kldload coretemp

Um das coretemp-Kernelmodul automatsch beim Systemstart zu laden, kann folgender Eintrag in der /boot/loader.conf gemacht werden:

coretemp_load="YES"

Nun können die gewünschten Infromationen herausgelesen werden:

#  hwstat 
                                        Current                         Unit
[Coretemp]
        CPU0:                           36.1                            C
        CPU1:                           38.1                            C

[ACPI Thermal]
        tz0:                            48.1                            C

[ACPI Thermal]
        tz1:                            43.1                            C

[ACPI Battery (sysctl)]
        Cap remain:                     100                             percents
        Time remain:                    On AC
        State:                          0
        Units:                          1

[battery0]
        Present:                        yes
        Design capacity:                56160                           mWh
        Last full capacity:             56160                           mWh
        Technology:                     secondary (rechargeable)
        Design voltage                  10800                           mV
        Capacity (warn):                2808                            mWh
        Capacity (low):                 200                             mWh
        Low/warn granularity:           1                               mWh
        Warn/full granularity:          1                               mWh
        Model number:                   42T3596
        Serial number:                   2208
        Type:                           LION
        OEM info:                       SONY
        State:                          high
        Remaining capacity:             100                             percent
        Remaining time:                 unknown
        Present rate:                   0                               mW
        Voltage:                        12397                           mV

Mehr Informationen zu hwstat findet man in der Manpage hwstat(1).

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink

ZFS-Installation mit Hilfe von mfsBSD

Mit Hilfe von mfsBSD lässt sich einfach ein FreeBSD 8.0 installieren, welches nur ZFS als Dateisystem verwendet. Dazu findet man auf der mfsBSD-Webseite eine "8.0-RELEASE-amd64 special edition"-ISO-Datei. Startet man einen Rechner von dieser CD, so wird allen Netzwerkschnittstellen, falls ein DHCP-Server verfügbar ist, automatisch eine IP-Adresse zugewiesen. Nun kann man sich mit dem Rechner via SSH verbinden:

# ssh root@<rechner>
Password: mfsroot
Last login: Mon Nov 30 20:23:43 2009
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
        The Regents of the University of California.  All rights reserved.

FreeBSD 8.0-RELEASE (GENERIC) #1: Thu Nov 26 00:38:45 CET 2009

Welcome to mfsBSD SE, the memory based FreeBSD distribution.
This is a special version intended for full-ZFS install of FreeBSD

To make a full-ZFS FreeBSD install from this ISO:

1. Mount the CD device 
( e.g. mount_cd9660 /dev/acd0 /cdrom )
2. Run "zfsinstall" with path to to the distribution bzip file and your drive
( e.g. zfsinstall -d /dev/ad0 -t /cdrom/8.0-amd64.tbz )

Run zfsinstall without any option for the options list.
I recommend creating a GPT swap partition (e.g. -s 2G for a 2GB swap).

Feel free to email me with any bug requests or feature suggestions.
Martin Matuska <mm(AT)FreeBSD.org>
http://mfsbsd.vx.sk/

Zuerst muss nun das CD-ROM-Laufwerk gemountet werden:

mfsbsd# mount_cd9660 /dev/acd0 /cdrom
mfsbsd# mount
/dev/md0 on / (ufs, local)
devfs on /dev (devfs, local, multilabel)
/dev/md1 on /tmp (ufs, local, soft-updates)
/dev/md2.uzip on /usr (ufs, local, read-only)
/dev/md3 on /var (ufs, local)
/dev/md4 on /usr/local (ufs, local, soft-updates)
/dev/acd0 on /cdrom (cd9660, local, read-only)

Nun kann mit Hilfe von zfsinstall die Installation vorgenommen werden. Mit der -d Option wird die Festplatte festgelegt, auf welcher die Installation vorgenommen werden soll. Alle auf der Festplatte liegenden Dateien werden dabei gelöscht. Mit der -p Option kann falls gewünscht einen alternativen Pool-Namen gesetzt werden. Mit der -s Option kann die Grösse des Swap-Bereiches festgelegt werden:

mfsbsd# zfsinstall -d /dev/da0 -t /cdrom/8.0-amd64.tbz -p rpool -s 2G
Creating GUID partitions on /dev/da0 ... done
Configuring ZFS bootcode on /dev/da0 ... done
=>      34  16777149  da0  GPT  (8.0G)
        34       128    1  freebsd-boot  (64K)
       162   4194304    2  freebsd-swap  (2.0G)
   4194466  12582717    3  freebsd-zfs  (6.0G)

Creating ZFS pool rpool on /dev/da0p3 ... done
Creating rpool partitions: root usr var tmp ... done
Setting bootfs for rpool to rpool/root ... done
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool        218K  5.88G    18K  none
rpool/root    18K  5.88G    18K  legacy
rpool/tmp     18K  5.88G    18K  legacy
rpool/usr     18K  5.88G    18K  legacy
rpool/var     18K  5.88G    18K  legacy
Mounting rpool on /mnt ... done
Extracting FreeBSD distribution ... done
Writing /boot/loader.conf... done
Writing /etc/fstab... done
Copying /boot/zfs/zpool.cache ... done

Installation complete.
The system will boot from ZFS with clean install on next reboot

You may type "chroot /mnt" and make any adjustments you need.
For example, change the root password or edit/create /etc/rc.conf for
for system services. 

Die Partitionstabelle, der ZFS-Pool und die ZFS-Dateisysteme wurden dabei automatisch angelegt:

mfsbsd# gpart show
=>      34  16777149  da0  GPT  (8.0G)
        34       128    1  freebsd-boot  (64K)
       162   4194304    2  freebsd-swap  (2.0G)
   4194466  12582717    3  freebsd-zfs  (6.0G)
mfsbsd# zpool list
NAME    SIZE   USED  AVAIL    CAP  HEALTH  ALTROOT
rpool  5.97G   317M  5.66G     5%  ONLINE  -
mfsbsd# zfs list
NAME         USED  AVAIL  REFER  MOUNTPOINT
rpool        317M  5.57G    18K  none
rpool/root  66.4M  5.57G  66.4M  legacy
rpool/tmp     18K  5.57G    18K  legacy
rpool/usr    250M  5.57G   250M  legacy
rpool/var    121K  5.57G   121K  legacy

Nun kann mit Hilfe von chroot in das neu installierte System gewechselt werden. Dort kann das System konfiguriert, Benutzer angelegt, sowie das root-Passwort gesetzt werden:

mfsbsd# chroot /mnt

Startet man den Rechner, nachdem man die CD-ROM entfernt hat, neu wird das installierte System, welches nur ZFS als Dateisystem verwendet, gestartet.

Related Entries:
ZFS-Statistiken anzeigen
FreeBSD nur auf ZFS installieren
Alle Änderungen eines ZFS-Pools anzeigen
Automatisch ZFS Snapshots erstellen
ZFS Dateisystemoptionen verwenden
Comments (18)  Permalink

Programm mit which finden

Möchte man herausfinden ob sich ein Programm innerhalb eines Verzeichnisses befindet, welches in der PATH-Variable gesetzt ist, so kann dazu which verwendet werden:

# which portmaster
/usr/local/sbin/portmaster
# which bla
bla: Command not found.

Benutzer der csh verwenden dabei eine in der Shell eingebaute Version von which. Verwendet man eine Shell welche which nicht beinhaltet, so kann /usr/bin/which aus dem FreeBSD-Basissystem verwendet werden:

# which which
which: shell built-in command.
# /usr/bin/which which
/usr/bin/which

Zusätzlich zu which kann in der csh auch where verwendet werden, welches den Shell-eigenen und den im Dateisystem gefundenen Befehl anzeigt, sollten beide vorhanden sein:

# where which
which is a shell built-in
/usr/bin/which

Mehr Informationen zu which and where findet man in der Manpage tcsh(1) und which(1).

Related Entries:
Piepston der tcsh deaktivieren
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
 Permalink

Port-Patches automatisch generieren

Ändert man einen FreeBSD -Port und möchte dazu Patches erstellen, welche im Port unter dem Verzeichnis files gespeichert werden, so muss man diese nicht unbedingt von Hand mit diff(1) erzeugen. Zuerst erstellt man von jeder Datei, die man verändern möchte, unterhalb des work/-Verzeichnisses eine Kopie mit der Endung .orig und bearbeitet das Original.

# cd /usr/ports/security/nss/work/nss-3.12.4/mozilla/security/nss/lib/nss/
# ls -l config.mk*
-rw-r-----  1 root  wheel  3181 30 Aug 22:27 config.mk
-rw-r-----  1 root  wheel  3182 11 Jun 02:55 config.mk.orig

Sind alle Änderungen gemacht, geht man in das Port-Verzeichnis und gibt make makepatch ein:

# cd /usr/ports/security/nss
# ls -l files
total 0
# make makepatch
/usr/bin/diff -ud ./cmd/modutil/modutil.h.orig ./cmd/modutil/modutil.h > /usr/ports/security/nss/files/patch-cmd__modutil__modutil.h
/usr/bin/diff -ud ./cmd/modutil/pk11.c.orig ./cmd/modutil/pk11.c > /usr/ports/security/nss/files/patch-cmd__modutil__pk11.c
/usr/bin/diff -ud ./cmd/platlibs.mk.orig ./cmd/platlibs.mk > /usr/ports/security/nss/files/patch-cmd__platlibs.mk
/usr/bin/diff -ud ./tests/common/init.sh.orig ./tests/common/init.sh > /usr/ports/security/nss/files/patch-tests__common__init.sh
/usr/bin/diff -ud ./lib/ckfw/dbm/ckdbm.h.orig ./lib/ckfw/dbm/ckdbm.h > /usr/ports/security/nss/files/patch-lib__ckfw__dbm__ckdbm.h
/usr/bin/diff -ud ./lib/ssl/config.mk.orig ./lib/ssl/config.mk > /usr/ports/security/nss/files/patch-lib__ssl__config.mk
/usr/bin/diff -ud ./lib/smime/config.mk.orig ./lib/smime/config.mk > /usr/ports/security/nss/files/patch-lib__smime__config.mk
/usr/bin/diff -ud ./lib/certdb/xauthkid.c.orig ./lib/certdb/xauthkid.c > /usr/ports/security/nss/files/patch-lib__certdb__xauthkid.c
/usr/bin/diff -ud ./lib/certdb/xbsconst.c.orig ./lib/certdb/xbsconst.c > /usr/ports/security/nss/files/patch-lib__certdb__xbsconst.c
/usr/bin/diff -ud ./lib/certdb/xconst.c.orig ./lib/certdb/xconst.c > /usr/ports/security/nss/files/patch-lib__certdb__xconst.c
/usr/bin/diff -ud ./lib/softoken/legacydb/cdbhdl.h.orig ./lib/softoken/legacydb/cdbhdl.h > /usr/ports/security/nss/files/patch-lib__softoken__legacydb__cdbhdl.h
/usr/bin/diff -ud ./lib/softoken/legacydb/dbmshim.c.orig ./lib/softoken/legacydb/dbmshim.c > /usr/ports/security/nss/files/patch-lib__softoken__legacydb__dbmshim.c
/usr/bin/diff -ud ./lib/softoken/legacydb/keydb.c.orig ./lib/softoken/legacydb/keydb.c > /usr/ports/security/nss/files/patch-lib__softoken__legacydb__keydb.c
/usr/bin/diff -ud ./lib/softoken/legacydb/pcertdb.c.orig ./lib/softoken/legacydb/pcertdb.c > /usr/ports/security/nss/files/patch-lib__softoken__legacydb__pcertdb.c
/usr/bin/diff -ud ./lib/softoken/legacydb/pk11db.c.orig ./lib/softoken/legacydb/pk11db.c > /usr/ports/security/nss/files/patch-lib__softoken__legacydb__pk11db.c
/usr/bin/diff -ud ./lib/softoken/legacydb/keydbi.h.orig ./lib/softoken/legacydb/keydbi.h > /usr/ports/security/nss/files/patch-lib__softoken__legacydb__keydbi.h
/usr/bin/diff -ud ./lib/softoken/config.mk.orig ./lib/softoken/config.mk > /usr/ports/security/nss/files/patch-lib__softoken__config.mk
/usr/bin/diff -ud ./lib/nss/config.mk.orig ./lib/nss/config.mk > /usr/ports/security/nss/files/patch-lib__nss__config.mk
/usr/bin/diff -ud ./lib/freebl/config.mk.orig ./lib/freebl/config.mk > /usr/ports/security/nss/files/patch-lib__freebl__config.mk
/usr/bin/diff -ud ./lib/pk11wrap/secmodi.h.orig ./lib/pk11wrap/secmodi.h > /usr/ports/security/nss/files/patch-lib__pk11wrap__secmodi.h
/usr/bin/diff -ud ./Makefile.orig ./Makefile > /usr/ports/security/nss/files/patch-Makefile
# ls -l files
total 42
-rw-r--r--  1 root  wheel   434 30 Aug 22:29 patch-Makefile
-rw-r--r--  1 root  wheel   451 30 Aug 22:29 patch-cmd__modutil__modutil.h
-rw-r--r--  1 root  wheel  1448 30 Aug 22:29 patch-cmd__modutil__pk11.c
-rw-r--r--  1 root  wheel   635 30 Aug 22:29 patch-cmd__platlibs.mk
-rw-r--r--  1 root  wheel   341 30 Aug 22:29 patch-lib__certdb__xauthkid.c
-rw-r--r--  1 root  wheel   509 30 Aug 22:29 patch-lib__certdb__xbsconst.c
-rw-r--r--  1 root  wheel   481 30 Aug 22:29 patch-lib__certdb__xconst.c
-rw-r--r--  1 root  wheel   285 30 Aug 22:29 patch-lib__ckfw__dbm__ckdbm.h
-rw-r--r--  1 root  wheel   291 30 Aug 22:29 patch-lib__freebl__config.mk
-rw-r--r--  1 root  wheel   284 30 Aug 22:29 patch-lib__nss__config.mk
-rw-r--r--  1 root  wheel   301 30 Aug 22:29 patch-lib__pk11wrap__secmodi.h
-rw-r--r--  1 root  wheel   311 30 Aug 22:29 patch-lib__smime__config.mk
-rw-r--r--  1 root  wheel   296 30 Aug 22:29 patch-lib__softoken__config.mk
-rw-r--r--  1 root  wheel   333 30 Aug 22:29 patch-lib__softoken__legacydb__cdbhdl.h
-rw-r--r--  1 root  wheel   372 30 Aug 22:29 patch-lib__softoken__legacydb__dbmshim.c
-rw-r--r--  1 root  wheel   332 30 Aug 22:29 patch-lib__softoken__legacydb__keydb.c
-rw-r--r--  1 root  wheel   361 30 Aug 22:29 patch-lib__softoken__legacydb__keydbi.h
-rw-r--r--  1 root  wheel   341 30 Aug 22:29 patch-lib__softoken__legacydb__pcertdb.c
-rw-r--r--  1 root  wheel   353 30 Aug 22:29 patch-lib__softoken__legacydb__pk11db.c
-rw-r--r--  1 root  wheel   368 30 Aug 22:29 patch-lib__ssl__config.mk
-rw-r--r--  1 root  wheel   495 30 Aug 22:29 patch-tests__common__init.sh

Nun wurde von allen veränderten Dateien ein Patch im Verzeichnis files erstellt.

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink

Fehlende Abhängigkeiten eines Ports anzeigen

Möchte man einen Port installieren, vorher aber herausfinden welche Ports als Abhängigkeiten dieses Ports installiert werden, so kann dies mit make missing im Portverzeichnis gemacht werden:

# cd /usr/ports/editors/openoffice.org-3
# make missing
sysutils/coreutils
devel/patch
archivers/p5-Archive-Zip
devel/apache-ant

Mehr Informationen zu den make-Targes des Portbaums findet man in der Manpage ports(7).

Related Entries:
Gespeicherte Optionen nach OptionsNG konvertieren
Ports-Subversion-Repository spiegeln
sysinstall-Ersatz für neuere FreeBSD-Versionen
Alte FreeBSD-Port Patchdateien aufsplitten
FreeBSD-Portbaum auf Fehler überprüfen
 Permalink
Prev Next21-30/125