Puoi usare l'utility pkg_add(1) per installare un package di FreeBSD da un file locale o da un server sulla rete.
Esempio 4-1. Scaricare un Package Manualmente e Installarlo da Locale
# ftp -a ftp2.FreeBSD.org Connected to ftp2.FreeBSD.org. 220 ftp2.FreeBSD.org FTP server (Version 6.00LS) ready. 331 Guest login ok, send your email address as password. 230- 230- This machine is in Vienna, VA, USA, hosted by Verio. 230- Questions? E-mail [email protected]. 230- 230- 230 Guest login ok, access restrictions apply. Remote system type is UNIX. Using binary mode to transfer files. ftp> cd /pub/FreeBSD/ports/packages/sysutils/ 250 CWD command successful. ftp> get lsof-4.56.4.tgz local: lsof-4.56.4.tgz remote: lsof-4.56.4.tgz 200 PORT command successful. 150 Opening BINARY mode data connection for 'lsof-4.56.4.tgz' (92375 bytes). 100% |**************************************************| 92375 00:00 ETA 226 Transfer complete. 92375 bytes received in 5.60 seconds (16.11 KB/s) ftp> exit # pkg_add lsof-4.56.4.tgz
Se non hai una raccolta di package locale (per esempio il set dei CDROM di FreeBSD)
allora probabilmente ti risulterà più facile usare pkg_add(1) con
l'opzione -r
. In questo modo pkg_add(1) determina
automaticamente la corretta release e il giusto formato dell'oggetto, quindi scarica il
package da un sito FTP e lo installa.
# pkg_add -r lsof
L'esempio qui sopra scarica il giusto package e lo installa senza nessun ulteriore intervento. Se vuoi specificare un sito mirror dei package di FreeBSD alternativo, invece del sito di distibuzione principale, devi settare la variabile PACKAGESITE come desiderato, in modo tale da sovrascrivere i settaggi di default. pkg_add(1) usa fetch(3) per scaricare i file, il quale rispetta varie variabili d'ambiente, incluse FTP_PASSIVE_MODE, FTP_PROXY, e FTP_PASSWORD. Puoi aver bisogno di settarne qualcuna se la tua macchina è dietro un firewall, o se utilizzi un proxy FTP/HTTP. Leggi fetch(3) per la lista completa. Nell'esempio precedente si può anche notare che viene usato lsof al posto di lsof-4.56.4. Quando viene usata la modalità di prelevamento da remoto, il numero di versione del package non deve essere specificato. pkg_add(1) prenderà automaticamente l'ultima versione dell'applicazione.
Nota: pkg_add(1) scaricherà la versione più recente della tua applicazione solo se stai usando FreeBSD-CURRENT o FreeBSD-STABLE. Se stai utilizzando una versione -RELEASE, allora verrà scaricata la versione del package che è stato costruito per la tua release. Tuttavia è possibile cambiare questo comportamento modificando la variabile di ambiente PACKAGESITE in modo opportuno. Per esempio, se hai un un sistema FreeBSD 5.4-RELEASE, di default pkg_add(1) tenterà di scaricare i package da ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-5.4-release/Latest/. Se vuoi forzare pkg_add(1) a scaricare i package di FreeBSD 5-STABLE, setta PACKAGESITE a ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-5-stable/Latest/.
I file dei package sono distribuiti nel formato .tgz. Puoi trovarli in ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/packages/, oppure sui CDROM della distribuzione di FreeBSD. Ogni CD contenuto nel set dei quattro CD (e nel PowerPak, ecc.) contiene i package nella directory /packages. La disposizione dei package è simile a quella dell'albero /usr/ports. Ogni categoria ha la propria directory, ed ogni package può essere trovato dentro la directory All.
La struttura delle directory del sistema dei package eguaglia quella dei port; questi due sistemi lavorano l'uno con l'altro per formare l'intero sistema dei package/port.
L'utility pkg_info(1) elenca e descrive i vari package installati.
# pkg_info cvsup-16.1 Un comune sistema di distribuzione dei file in rete ottimizzato per CVS docbook-1.2 Meta-port delle varie versioni del DTD DocBook ...
L'utility pkg_version(1) riassume le versioni di tutti i package installati. Paragona le versioni dei package con le versioni correnti trovate nell'albero dei port.
# pkg_version cvsup = docbook = ...
I simboli nella seconda colonna indicano il risultato del confronto tra la versione installata e quella disponibile in locale nell'albero dei port.
Simbolo | Significato |
---|---|
= | Le versioni del package installato e di quello disponibile in locale nell'albero dei port sono uguali. |
< | La versione installata è precedente a quella disponibile nell'albero dei port. |
> | La versione installata è più aggiornata di quella trovata in locale nell'albero dei port. (L'albero dei port locale è probabilmente da aggiornare) |
? | Il package installato non può essere trovato nell'indice dei port. (Questo può succedere, per esempio, se un port installato viene rimosso dalla collezione dei port oppure viene rinominato.) |
* | Ci sono più versioni del package. |
Per rimuovere un package installato in precedenza, usa l'utility pkg_delete(1).
# pkg_delete xchat-1.7.1
Tutte le informazioni sui package sono memorizzate nella directory /var/db/pkg. La lista dei file installati e le descrizioni di ogni package possono essere trovate all'interno dei file di questa directory.
Indietro | Partenza | Avanti |
Ricerca della Propria Applicazione | Risali | Utilizzo della Collezione dei Port |
Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Per domande su FreeBSD, leggi la documentazione prima di contattare <[email protected]>.
Per domande su questa documentazione, invia una e-mail a <[email protected]>.