In de volgende paragrafen worden basisinstructies gegeven
over het gebruik van de Portscollectie om programma's op een
systeem te installeren of ervan te verwijderen. Een
gedetailleerde beschrijving van de make
-doelen
en omgevingsvariabelen staat in ports(7).
Sinds eind 2012 is het FreeBSD Ports Project bezig om het versiebeheersysteem te migreren van CVS naar Subversion. Als gevolg hiervan zijn deze instructies aan verandering onderhevig. Het aanbevolen mechanisme voor algemeen gebruik van de ports is Portsnap. Gebruikers die lokale aanpassingen van ports nodig hebben (dus aanvullende lokale patches beheren) zullen er waarschijnlijk de voorkeur aan geven om rechtstreeks Subversion te gebruiken. De dienst CVSup wordt per 28 februari 2013 uitgefaseerd en verder gebruik wordt ontmoedigd.
De Portscollectie is een verzameling van
Makefiles
, patches en bestanden met
beschrijvingen in /usr/ports
. Deze verzameling
bestanden wordt gebruikt om applicaties op FreeBSD te bouwen en te
installeren. De onderstaande instructies laten verschillende methodes
zien om de Portscollectie te verkrijgen als dit niet tijdens de
initiële installatie van FreeBSD is gebeurd.
Portsnap is een snel en gebruiksvriendelijk gereedschap om de Portscollectie te verkrijgen en de aanbevolen manier voor de meeste gebruikers. Zie Portsnap gebruiken voor een gedetailleerde beschrijving van Portsnap.
Download een gecomprimeerde momentopname van de Portscollectie
naar /var/db/portsnap
.
#
portsnap fetch
Pak de momentopname bij het eerste gebruik van
Portsnap uit naar /usr/ports
:
#
portsnap extract
Nadat het eerste gebruik van Portsnap
is voltooid zoals hierboven is aangegeven, kan /usr/ports
worden bijgewerkt
met:
#
portsnap update
Als meer controle over de ports-boom nodig is (om bijvoorbeeld lokale veranderingen te beheren) kan Subversion worden gebruikt om de Portscollectie te verkrijgen. Zie de Subversion Primer voor een gedetailleerde beschrijving van Subversion.
Subversion moet geïnstalleerd zijn voordat het gebruikt kan worden om de ports-boom uit te checken. Als er reeds een kopie van de ports-boom aanwezig is, installeer dan Subversion als volgt:
#
cd /usr/ports/devel/subversion
#
make install clean
Als de ports-boom niet beschikbaar is, kan Subversion worden geïnstalleerd als een pakket:
#
pkg_add -r subversion
Als pkgng wordt gebruikt om pakketten te beheren, kan Subversion in plaats daarvan worden geïnstalleerd met:
#
pkg install subversion
Check een kopie van de ports-boom uit. Gebruik voor een
betere prestatie een specifieke Subversion
mirror dichtbij u in plaats van
svn.FreeBSD.org
in onderstaand commando.
Committers dienen eerst de Subversion
Primer te lezen om er zeker van te zijn dat het juiste
protocol is gekozen.
#
svn checkout svn://svn.FreeBSD.org
/ports/head /usr/ports
Om /usr/ports
na de
initiële checkout met Subversion bij te
werken:
#
svn update /usr/ports
Het gebruik van CVsup om de Portscollectie te verkrijgen en te synchroniseren wordt ontmoedigd als onderdeel van een migratie naar Subversion. Hoewel het ondersteund blijft zal de dienst niet meer worden geleverd na 28 februari 2013.
Dit is een snelle methode voor het verkrijgen en bijhouden van een kopie van Portscollectie met behulp van het CVSup-protocol. Meer informatie over CVSup staat in CVSup gebruiken.
De implementatie van het CVSup-protocol dat met FreeBSD wordt geleverd heet csup.
Zorg ervoor dat
/usr/ports
leeg is
voordat csup voor het eerst
gebruikt wordt! Als er reeds een Ports Collectie aanwezig is
die via een andere bron is opgehaald, zal
csup verwijderde patchbestanden
niet verwijderen.
Draai csup
:
#
csup -L 2 -h cvsup.FreeBSD.org
/usr/share/examples/cvsup/ports-supfile
Wijzig cvsup.FreeBSD.org
in een CVSup server in de buurt.
In CVSup Mirrors
(Paragraaf A.7.7, “CVSup sites”) staat een complete lijst
van mirrorsites;
Het kan wenselijk zijn een aangepaste
ports-supfile
te gebruiken,
bijvoorbeeld om een CVSup
server niet mee te hoeven geven op de
commandoregel.
Kopieer in dit geval, als
root
,
/usr/share/examples/cvsup/ports-supfile
naar een nieuwe locatie, zoals /root of een
thuismap.
Wijzig ports-supfile
.
Wijzig
CHANGE_THIS.FreeBSD.org
in
een CVSup server in de
buurt. In CVSup
Mirrors (Paragraaf A.7.7, “CVSup sites”)
staat een volledige lijst met mirrorsites.
Roep nu als volgt csup
aan:
#
csup -L 2 /root/ports-supfile
Het later draaien van csup(1) zal alle recente veranderingen aan uw Portscollectie downloaden en toepassen, behalve het eigenlijke herbouwen van ports voor uw eigen systeem.
Bij deze methode wordt sysinstall gebruikt om de Portscollectie van installatiemedia te installeren. Hier wordt wel de Portscollectie op het moment dat de release gemaakt is geïnstalleerd. Bij toegang tot Internet is het advies altijd een andere methode te gebruiken.
Draai als root
sysinstall
zoals hieronder aangegeven:
#
sysinstall
Scroll naar beneden en selecteer Enter.
, druk opScroll naar beneden en selecteer Enter.
, druk opScroll naar Space.
, druk opScroll naar boven naarEnter.
, druk opSelecteer de gewenste installatiemedia, zoals CD-ROM, FTP, enzovoort.
Scroll omhoog naar Enter.
en druk opDruk op X om sysinstall af te sluiten.
Per 28 februari 2013 zal de ports-boom niet langer naar CVS worden en daarom geëxporteerd zullen CVSup en csup niet langer updates voor de Portscollectie bieden.
De migratie zal ongeveer 1 GB aan schijfruimte op /usr
nodig hebben, en
Portsnap zal ongeveer 150 MB aan
schijfruimte op /var
nodig
hebben.
Schakel alle automatische updates aan ports die u gebruikt, zoals een cron(8)-taak die CVSup of csup uit.
Verplaats de bestaande ports-boom naar een tijdelijke lokatie:
#
mv /usr/ports /usr/ports.old
Haal de nieuwe ports-boom met
Portsnap op en pak deze uit in
/usr/ports
:
#
portsnap fetch extract
Verplaats distfiles en bewaarde pakketten naar de nieuwe ports-boom:
#
mv /usr/ports.old/distfiles /usr/ports
#
mv /usr/ports.old/packages /usr/ports
Verwijder de oude ports-boom:
#
rm -rf /usr/ports.old
Indien voorheen CVSup gebruikt werd, kan het nu worden gedeïnstalleerd:
#
pkg_delete -r -v cvsup-without-gui-\*
Gebruikers van pkgng kunnen het volgende commando gebruiken:
#
pkg remove cvsup-without-gui
Zie Portsnap gebruiken voor een gedetailleerde beschrijving van Portsnap en hoe de ports-boom met Portsnap bij te werken.
Het eerste wat uitleg behoeft als het over de Portscollectie gaat is de term “skelet” (“skeleton”). In een notendop is een portskelet een minimaal aantal bestanden dat FreeBSD aangeeft hoe een programma gecompileerd en geïnstalleerd kan worden. Ieder portskelet bevat:
Een Makefile
. De
Makefile
bevat verschillende
definities die aangeven hoe de applicatie gecompileerd moet
worden en waar die op een systeem geïnstalleerd moet
worden;
Een bestand distinfo
. Dit bestand
bevat informatie over de bestanden die gedownload moeten
worden om de port te bouwen, en hun checksums (door gebruik
te maken van sha256(1)), om vast te
stellen dat de bestanden niet corrupt zijn geraakt tijdens
de download;
Een map files
. Deze map bevat
patches om het programma op een FreeBSD systeem te laten
compileren en installeren. Patches zijn in essentie kleine
bestanden waarin kleine veranderingen aan andere,
specifieke, bestanden staan aangegeven. Ze zijn opgesteld
in platte tekst en er staan dingen in als “Verwijder
regel 10” of “Wijzig regel 26 in
...”. Patches staan ook wel bekend als
“diffs” omdat ze gemaakt worden met het
programma diff(1).
Deze map kan ook andere bestanden bevatten die gebruikt worden om de port te bouwen;
Een bestand pkg-descr
. Dit is een
meer gedetailleerde beschrijving van het programma, vaak in
één regel;
Een bestand pkg-plist
. Dit is een
lijst met alle bestanden die door de port
geïnstalleerd worden. Het geeft het portssysteem ook
aan welke bestanden bij het verwijderen van de port weer
verwijderd kunnen worden.
Sommige ports bevatten nog andere bestanden, zoals
pkg-message
. Het portssysteem gebruikt
die bestanden voor het afhandelen van bijzondere situaties.
Meer details over die bestanden en over ports in het algemeen
zijn na te lezen in het FreeBSD Handboek
voor Porters.
De port bevat instructies over hoe de broncode gebouwd moet worden, maar de broncode zelf is er geen onderdeel van. De broncode staat op een CD-ROM of op Internet. De broncode wordt verspreid op de wijze waarop de auteur dat wenst. Vaak is dat als een tar of gzip bestand, maar het kan ook ingepakt zijn met een ander programma of helemaal niet ingepakt zijn. De broncode van een programma, in welke vorm dan ook, heet een “distributiebestand”. De twee methoden om een FreeBSD port te installeren worden hieronder beschreven.
Ports installeren dient als root
te
gebeuren.
Voordat een port wordt geïnstalleerd is het aan te raden op http://vuxml.freebsd.org/ na kijken of er geen beveiligingsproblemen voor de gewenste port bekend zijn.
Er kan automatisch een controle op beveiligingsproblemen
door portaudit gedaan worden
voordat er een nieuwe applicatie wordt geïnstalleerd.
Dit gereedschap kan in de Portscollectie gevonden worden
(ports-mgmt/portaudit
).
Overweeg om portaudit -F
te draaien voordat
er een nieuwe port wordt geïnstalleerd, om de huidige
database met beveiligingsproblemen op te halen. Tijdens de
dagelijkse beveiligingscontrole van het systeem zal er een
beveiligingsaudit en een update van de database plaatsvinden.
Lees voor meer informatie de hulppagina's portaudit(1) en
periodic(8).
De Portscollectie neemt aan dat er een werkende
Internetverbinding is. Als die niet aanwezig is, zet dan
handmatig een kopie van het benodigde distributiebestand in
/usr/ports/distfiles
.
Ga om te beginnen naar de juiste map voor een port:
#
cd /usr/ports/sysutils/lsof
Eenmaal in de map lsof
is het skelet
van de port te zien. In de volgende stap wordt de broncode
voor de port gecompileerd of “gebouwd”. Dit
wordt gedaan door op het prompt make
in te
voeren. Dat levert iets als het volgende op:
#
make
>> lsof_4.57D.freebsd.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
>> Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
===> Extracting for lsof-4.57
...
[uitvoer van uitpakken verwijderd]
...
>> Checksum OK for lsof_4.57D.freebsd.tar.gz.
===> Patching for lsof-4.57
===> Applying FreeBSD patches for lsof-4.57
===> Configuring for lsof-4.57
...
[uitvoer van configure verwijderd]
...
===> Building for lsof-4.57
...
[uitvoer van compileren verwijderd]
...
#
Als het compileren is afgerond is het prompt weer
zichtbaar. In de volgende stap wordt de port
geïnstalleerd. Om dat te bewerkstelligen wordt het woord
install
aan make
toegevoegd:
#
make install
===> Installing for lsof-4.57
...
[uitvoer installatie verwijderd]
...
===> Generating temporary packing list
===> Compressing manual pages for lsof-4.57
===> Registering installation for lsof-4.57
===> SECURITY NOTE:
This port has installed the following binaries which execute with
increased privileges.
#
Als de prompt weer beschikbaar is, is de applicatie
klaar voor gebruik. Omdat lsof
met
verhoogde rechten wordt uitgevoerd, wordt er een
waarschuwing getoond. Tijdens het bouwen en installeren van
ports zijn de getoonde waarschuwingen van belang.
Het is verstandig om de submap die als werkmap wordt gebruikt te verwijderen. Hierin staan alle tijdelijke bestanden die tijdens het compileren worden gebruikt. Die bestanden gebruiken niet alleen waardevolle schijfruimte, maar ze kunnen later ook problemen veroorzaken als de port wordt bijgewerkt.
#
make clean
===> Cleaning for lsof-4.57
#
Het is mogelijk twee stappen minder te gebruiken door
make
uit te voeren in plaats van install clean
make
,
make
en install
make
als
drie afzonderlijke stappen.clean
Wanneer een port alleen met make
wordt geïnstalleerd,
betekent dit dat er in het begin mogelijk veel gewacht moet worden
tussen interacties van de gebruiker aangezien het standaardgedrag is
om de gebruiker te vragen om keuzes voor opties. Wanneer er veel
afhankelijkheden zijn, kan dit voor het bouwen van een enkele port
soms een hele opgave zijn. Om dit te voorkomen, kan install
make
gedraaid worden
om de configuratie in één keer te doen. Draai daarna config-recursive
make
.install [clean]
Wanneer config-recursive
wordt gebruikt,
wordt de lijst met ports om te configureren opgesteld door het doel
all-depends-list
van make(1). Het wordt
vaak aangeraden om make
totdat de opties
van alle afhankelijke ports zijn gedefinieerd en er geen schermen van
dialog(1) voor opties van ports meer verschijnen, om er zeker van
te zijn dat de opties van alle ports zijn geconfigureerd zoals
bedoeld.config-recursive
Sommige shells houden een cache bij van de commando's
die in de mappen uit de omgevingsvariabele
PATH
staan om het opzoeken van een uitvoerbaar
bestand te versnellen. Als zo'n shell wordt gebruikt, moet
er na de installatie van een port het commando
rehash
worden uitgevoerd voordat zojuist
geïnstalleerde commando's kunnen worden gebruikt. Dit
commando werkt voor shells zoals tcsh
.
Gebruik voor shells als sh
hash
-r
. In de documentatie van een shell staat meer
informatie.
Sommige DVD-ROM-producten van andere partijen, zoals de
FreeBSD Toolkit van de FreeBSD Mall
bevatten distributiebestanden. Die kunnen met de Portscollectie
gebruikt worden. Koppel de DVD-ROM aan op
/cdrom
. Stel bij gebruik van een ander
aankoppelpunt de make variabele CD_MOUNTPTS
in. De benodigde distributiebestanden worden automatisch
gebruikt als ze op de schijf aanwezig zijn.
Licenties van sommige ports staan niet toe dat de code wordt opgenomen in een CD-ROM. Dit kan komen doordat er een formulier ingevuld moet worden voor een download of doordat herdistributie niet is toegestaan of om een andere reden. Om een port te installeren die niet op de CD-ROM staat moet de computer waarop de port geïnstalleerd wordt een Internetverbinding hebben.
Het portssysteem gebruikt fetch(1) om bestanden te
downloaden. Dat programma maakt gebruik van een aantal
omgevingsvariabelen, waaronder FTP_PASSIVE_MODE
,
FTP_PROXY
, en FTP_PASSWORD
. Als
een systeem achter een firewall staat, is het wellicht
noodzakelijk om een of meer van deze omgevingsvariabelen in te
stellen of om gebruik te maken van een FTP/HTTP proxy. In
fetch(3) staat een complete lijst.
Als er geen continue Internetverbinding is, kan gebruik
gemaakt worden van make
. Door dit commando
in de map fetch
/usr/ports
uit te voeren worden
alle benodigde bestanden gedownload. Dit
commando werkt ook op een lager niveau als
/usr/ports/net
of
/usr/ports/net/xmule
. Als een port
afhankelijk is van bibliotheken of andere ports dan worden de
distributiebestanden van die ports niet
opgehaald. Om dat de bereiken dient
fetch
vervangen te worden door
fetch-recursive
.
Het is mogelijk alle ports in een categorie te bouwen
door make
in een hogere map uit te voeren,
naar analogie van het voorbeeld voor make
. Dit is wel
gevaarlijk, omdat sommige ports niet tegelijk met andere
geïnstalleerd kunnen zijn. In andere gevallen
installeren twee ports hetzelfde bestand met een andere
inhoud.fetch
In zeldzame gevallen willen of moeten gebruikers de
tar-bestanden van een andere site dan de
MASTER_SITES
halen (de locatie waar de
bestanden vandaan komen). Dat is mogelijk met de optie
MASTER_SITES
met een volgend
commando:
#
cd /usr/ports/directory
#
make MASTER_SITE_OVERRIDE= \
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch
In het voorgaande voorbeeld is de optie
MASTER_SITES
gewijzigd naar ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/
.
Sommige ports staan toe (of schrijven zelfs voor) dat er
een aantal instellingen worden meegegeven die bepaalde
onderdelen (niet gebruikt, beveiligingsinstellingen en andere
aanpassingen) van de applicatie in- of uitschakelen.
Voorbeelden van ports waarbij dat het geval is zijn www/firefox
, security/gpgme
en mail/sylpheed-claws
. Er wordt
een bericht getoond als dit soort instellingen beschikbaar
zijn.
Soms is het handig (of verplicht) om een andere map voor
werk of ports te gebruiken. Met de variabelen
WRKDIRPREFIX
en PREFIX
kunnen de standaardmappen veranderd worden:
#
make WRKDIRPREFIX=/usr/home/example/ports install
Het voorbeeld hierboven compileert de port in
/usr/home/example/ports
en installeert
alles in /usr/local
.
#
make PREFIX=/usr/home/example/local install
Het voorbeeld hierboven compileert in
/usr/ports
en installeert in
/usr/home/example/local
.
#
make WRKDIRPREFIX=../ports PREFIX=../local install
Het voorbeeld hierboven combineert de twee instellingen. Het gaat te ver om dit volledig in het handboek te beschrijven, maar hier krijgt de lezer een idee van de mogelijkheden.
Het is ook mogelijk de bovenstaande variabelen als deel van de omgeving in te stellen. In de hulppagina's van de gebruikte shell staat hoe dat mogelijk is.
Er zijn ports die imake
gebruiken
(een onderdeel van het X Window systeem) die niet goed werken
met PREFIX
en erop staan te installeren in
/usr/X11R6
. Er zijn ook een aantal Perl
ports die PREFIX
negeren en in de Perl
hiërarchie installeren. Deze ports op de
PREFIX
locatie laten installeren is
meestal erg moeilijk of onmogelijk.
Tijdens het bouwen van bepaalde ports kan er een menu dat
op ncurses is gebaseerd verschijnen waaruit u bepaalde
bouwopties kunt selecteren. Het is niet ongebruikelijk dat
gebruikers dit menu opnieuw willen bezoeken om deze opties toe
te voegen, te verwijderen, of te veranderen nadat een port is
gebouwd. Er zijn vele manieren om dit te doen. Eén
optie is om naar de map waarin de port staat te gaan en
make
te
typen, wat eenvoudigweg het menu opnieuw toont met daarin de
zelfde opties geselecteerd. Een andere optie is om
config
make
te
gebruiken, wat alle instelopties voor de port aan u laat zien.
Nog een andere optie is om showconfig
make
uit te voeren wat
alle geselecteerde opties zal verwijderen en u toestaat
opnieuw te beginnen. Al deze opties, en anderen, worden zeer
gedetailleerd uitgelegd in de hulppagina voor ports(7).rmconfig
Nu u weet hoe ports te installeren, zult u zich
waarschijnlijk afvragen hoe ze te verwijderen, in het geval dat
u er een installeert en later besluit dat u de verkeerde port
heeft geïnstalleerd. We zullen ons vorige voorbeeld
(lsof
) verwijderen. Ports worden op
precies dezelfde manier verwijderd als pakketten met het
commando pkg_delete(1) (zoals beschreven in het onderdeel
Pakketten):
#
pkg_delete lsof-4.57
Stel als eerste een lijst samen met ports waarvoor een nieuwere versie beschikbaar is in de Portscollectie met het commando pkg_version(1):
#
pkg_version -v
Als de Portscollectie eenmaal is bijgewerkt
vóór het bijwerken van ports, is het verstandig
het bestand /usr/ports/UPDATING
te
raadplegen. In dat bestand staan aanwijzingen en wijzigingen
voor gebruikers die van belang zijn bij het bijwerken van
ports, zoals het veranderen van bestandsformaten, veranderen
van de locatie van configuratie bestanden, en andere
incompatibiliteiten met voorgaande versies.
Als UPDATING
tegenstrijdig is met
wat hier beschreven is, moet men UPDATING
als waar beschouwen.
Het hulpprogramma portupgrade
is ontworpen om geïnstalleerde ports eenvoudig bij te
werken. Het is beschikbaar via de port ports-mgmt/portupgrade
.
Installeer het net als iedere andere port met het commando
make
:install clean
#
cd /usr/ports/ports-mgmt/portupgrade
#
make install clean
Scan de lijst met geïnstalleerde ports met het
commando pkgdb -F
en corrigeer alle
gerapporteerde inconsistenties. Het is verstandig dit
regelmatig te doen, voor iedere keer bijwerken.
Door het draaien van portupgrade -a
zal portupgrade beginnen met het
bijwerken van alle geïnstalleerde ports op een systeem
waarvoor een nieuwere versie beschikbaar is. Met de vlag
-i
is het mogelijk in te stellen dat voor
iedere bij te werken port om bevestiging wordt
gevraagd.
#
portupgrade -ai
Gebruik om alleen een specifieke applicatie bij te werken
en niet alle beschikbare ports portupgrade
. Gebruik de
vlag pkgname
-R
om
portupgrade eerst alle ports bij
te laten werken die voor een bij te werken toepassing
benodigd zijn.
#
portupgrade -R firefox
Gebruik de vlag -P
om bij installatie
van pakketten in plaats van ports gebruik te maken. Met deze
optie zoekt portupgrade in de
lokale mappen uit PKG_PATH
of haalt de
pakketten via het netwerk op als ze lokaal niet worden
aangetroffen. Als een pakket niet lokaal en niet via het
netwerk wordt gevonden, dan gebruikt
portupgrade ports. Om het gebruik
van ports te voorkomen kan gebruik gemaakt worden van de
optie -PP
:
#
portupgrade -PP gnome2
Om alleen de distributiebestanden op te halen (of
pakketten als -P
is opgegeven), zonder bouwen
of installeren, is -F
beschikbaar. Meer
informatie staat in portupgrade(1).
portmaster is nog een
gereedschap voor het bijwerken van geïnstalleerde ports.
portmaster was ontworpen om gebruik
te maken van de gereedschappen die in het “basis”
systeem te vinden zijn (het hangt niet af andere ports) en het
gebruikt de informatie in /var/db/pkg
om te bepalen welke
ports bij te werken. Het is beschikbaar via de port ports-mgmt/portmaster
:
#
cd /usr/ports/ports-mgmt/portmaster
#
make install clean
portmaster verdeelt ports in vier categoriën:
Wortelpoorten (geen afhankelijkheden, wordt niet van afgehangen)
Stampoorten (geen afhankelijkheden, wordt van afgehangen)
Takpoorten (hebben afhankelijkheden, wordt van afgehangen)
Bladpoorten (hebben afhankelijkheden, wordt niet van afgehangen)
U kunt de optie -L
gebruiken om alle
geïnstalleerde ports tonen en naar updates te zoeken:
#
portmaster -L
===>>> Root ports (No dependencies, not depended on)
===>>> ispell-3.2.06_18
===>>> screen-4.0.3
===>>> New version available: screen-4.0.3_1
===>>> tcpflow-0.21_1
===>>> 7 root ports
...
===>>> Branch ports (Have dependencies, are depended on)
===>>> apache-2.2.3
===>>> New version available: apache-2.2.8
...
===>>> Leaf ports (Have dependencies, not depended on)
===>>> automake-1.9.6_2
===>>> bash-3.1.17
===>>> New version available: bash-3.2.33
...
===>>> 32 leaf ports
===>>> 137 total installed ports
===>>> 83 have new versions availableAlle geïnstalleerde ports kunnen met dit eenvoudige commando worden bijgewerkt:
#
portmaster -a
Standaard maakt portmaster
een back-up-pakket aan voordat het een bestaande port
verwijderd. Als de installatie van de nieuwe versie
succesvol is, zal portmaster de
reservekopie verwijderen. Het gebruik van
-b
zal
portmaster instrueren om de
reservekopie niet automatisch te verwijderen. Het toevoegen
van de optie -i
zal
portmaster in interactieve modus
opstarten, en u vragen voordat het elke port bijwerkt.
Als u fouten tegenkomt tijdens het bijwerkproces, kunt u
de optie -f
gebruiken om alle ports bij te
werken/te herbouwen:
#
portmaster -af
U kunt portmaster ook gebruiken om nieuwe ports op het systeem te installeren, en alle afhankelijkheden bijwerken voordat de nieuwe port gebouwd en geïnstalleerd wordt:
#
portmaster shells/bash
Bekijk portmaster(8) voor meer informatie.
Werken met de Portscollectie kan in de loop der tijd veel
schijfruimte gebruiken. Na het bouwen en installeren van
software uit de ports, is het van belang altijd de tijdelijke
mappen work
op te ruimen
met het commando make
. De complete
Portscollectie kan geschoond worden met het volgende
commando:clean
#
portsclean -C
In de loop der tijd komen ook veel oude bestanden met
broncode in de map distfiles
te staan. Die kunnen
handmatig verwijderd worden of met het volgende commando dat
alle distributiebestanden waarnaar in de huidige ports geen
verwijzingen meer staan verwijdert:
#
portsclean -D
Of om alle distributiebestanden te verwijderen waardoor momenteel door geen één geïnstalleerde port op uw systeem wordt verwezen:
#
portsclean -DD
Het hulpprogramma portsclean
is
onderdeel van de suite
portupgrade.
Vergeet niet ports die niet langer gebruikt worden te
verwijderen. Een handig hulpmiddel hiervoor kan de port
ports-mgmt/pkg_cutleaves
zijn.