Gestire pacchetti software con Solaris: pkgadd e altri comandi

Solaris utilizza un sistema di gestione dei programmi in pacchetti analogo agli RPM o DEB comuni in Linux.
Su Solaris si parla di packages, .pkg, che contengono binari già compilati, manuali, file di configurazione e generalmente tutto quello che serve per installare un software sul sistema.
Gli strumenti per gestire i packages sono vari:
- Command line (comandi pkgadd, pkgrm, pkginfo, pkgchk, pkgask);
- Admintool, strumento grafico disponibile sotto Xwindows;
- Solaris Product Registry, altro strumento grafico, disponibile da Solaris 8.
Questi strumenti sono intercambiabili e convivere senza problemi: un pacchetto può, per esempio, essere installato con Admintool e rimosso com pkgrm.

Occupiamoci degli strumenti in command line, una volta capita la loro logica, diventa triviale utilizzare le alternative grafiche.

/bin/pkgadd
Installa uno o più pacchetti. Utilizza di default i comportamenti definiti nel file di configurazione /var/sadm/install/admin/default in cui sono presenti varie coppie di parametri=valore che definiscono come gestire l'installazione di pacchetti a seconda delle situazioni (se chiedere all'utente, procedere automaticamente, annullare l'operazione ecc in presenza di determiante situazioni: pacchetto già installato, completamente o parzialmente, spazio su disco insufficente, conflitti con altri pacchetti, necessità di dependencies, run level, controllo sull'impatto sulla sicurezza, directory di installazione ecc).
Il file di default, in genere, chiede all'utente come procedere quando incontra una delle suddette impostazioni ed ha come directory predefinita /opt.
La sintassi di pkgadd:
-d nome_device Opzione facoltativa. Specifica il device (es: /cdrom/cdrom0 ) in cui si trova(no) i(l) pacchetto(i).
-a file_di amministrazione Opzione facoltativa, permette di specificare un file di configurazione/amministrazone diverso da /var/sadm/install/admin/default. Se si specifica solo il nome, senza path, viene cercato in /var/sadm/install/admin/.
nome_pacchetto Il nome (pkgid) di uno o più pacchetti che si voglinno installare. Se non specifica nessun pacchetto e nessun device, pkgadd cerca se ce ne sono nella directory di spool /var/spool/pkg e li installa automaticamente.

/usr/sbin/pkgchk
Verifica l'integrità di un pacchetto. Va fatto seguire dal nome del pacchetto (pkgid) e se non da nessun output se il pacchetto è installato correttamente.
Se non si specifica alcun nome di pacchetto, esegue il check di tutti i pacchetti installati sul sistema.
-d directory_di_spool Controlla i pacchetti nella directory di spool (o device)
specificati. Le informazioni non sono complete, comunque, fino a quando il pacchetto non viene effettivamente installato.
-v Elenca tutti i file contenuti nel pacchetto. Questi dati vengono registrati nel file /var/sadm/install/contents.
Per verificare in quale pacchetto è contenuto un determinato file digitare:
pkgchk -l -p nomefile

/bin/pkgparam
Visualizza i parametri del pacchetto specificato.
-v Opzione per visualizzare sia il nome del parametro che il suo valore (di default visualizza solo il valore).

/bin/pkginfo
Visualizza tutti i pacchetti installati sul sistema con una breve descrizione.
-d directory Visualizza l'elenco dei pacchetti contenuti sulla directory o device specificati.

/usr/sbin/pkgrm
Rimuove il pacchetto specificato.
-n Rimuove il pacchetto in modalità non interattiva
-s directory_di_spool Rimuove il pacchetto (se non viene speicificato li rimuove tutti) dalla directory di spool indicata.

Privacy Policy