GNU/Linux >> Linux Esercitazione >  >> Panels >> Webmin

Pacchetti software

Questo capitolo tratta l'installazione e la gestione del software sul tuo sistema utilizzando pacchetti . Copre anche le differenze tra i vari formati di pacchetto Unix, come RPM, DPKG e Solaris.

Contenuti

Introduzione ai pacchetti

Tutti i sistemi Linux utilizzano una sorta di sistema di pacchettizzazione del software per semplificare il processo di installazione e rimozione dei programmi. Un pacchetto è una raccolta di comandi, file di configurazione, pagine man, librerie condivise e altri file associati a un unico programma come Apache Webserver o Sendmail Mail Server, combinati in un unico file di pacchetto. Quando viene installato, il sistema del pacchetto estrae tutti i file dei componenti e li colloca nelle posizioni corrette sul sistema. Poiché il sistema sa da quale pacchetto proviene ogni file, quando si desidera rimuovere un pacchetto sa esattamente quali file eliminare.

In quasi tutte le versioni di Linux, i pacchetti generalmente contengono programmi compilati che funzionano solo sull'architettura della CPU per cui sono stati compilati. Poiché Linux supporta molti diversi tipi di CPU (x86, Alpha e IA64 per citarne alcuni), alcuni programmi hanno pacchetti compilati per diverse CPU. Un pacchetto può essere installato solo su un sistema con l'architettura CPU corretta, a meno che non sia indipendente dall'architettura, nel qual caso verrà installato su qualsiasi tipo di sistema. I programmi scritti in linguaggi come Perl (come Webmin) o pacchetti che contengono solo documentazione sono generalmente indipendenti dalla CPU.

Quando viene installata una distribuzione Linux, quasi tutti i file che vengono inseriti nel disco rigido sono membri di uno dei pacchetti della distribuzione. Ciò semplifica la rimozione del software indesiderato installato per impostazione predefinita o l'aggiunta di software aggiuntivo dal CD di distribuzione o dal sito Web.

Poiché alcuni programmi dipendono da altri programmi per funzionare, anche i pacchetti possono avere dipendenze. Alcuni pacchetti potrebbero non essere installati a meno che tu non abbia prima installato un altro pacchetto e alcuni pacchetti potrebbero non essere rimovibili se altri dipendono da essi. Questo sistema di dipendenze protegge l'utente dall'installazione di software che non funzionerà a causa di una libreria condivisa o di un comando mancante.

Poiché i sistemi di pacchetti sanno esattamente quali file si trovano in ciascun pacchetto, possono utilizzare tali informazioni per convalidare i file dopo l'installazione. Tutti i sistemi di pacchetti tengono anche traccia del checksum MD5 per ciascun file, in modo da poter rilevare eventuali modifiche manuali ai file in un pacchetto. Questo può essere molto utile per rilevare modifiche non autorizzate, ad esempio da parte di un utente malintenzionato che ha violato il tuo sistema e sostituito comandi importanti come ls e trova con versioni modificate.

Sfortunatamente, su Linux c'è più di un sistema di pacchetti. Il più comune è RPM, che sta per Redhat Package Manager. È usato da Redhat, Caldera, SuSE, Mandrake, MSC e poche altre distribuzioni Linux. Funziona bene e c'è più software disponibile in formato RPM rispetto a qualsiasi altro sistema di pacchetti. L'installazione, l'interrogazione e l'eliminazione dei pacchetti RPM vengono eseguite utilizzando il comando shell rpm.

Il più grande contendente a RPM è il formato del pacchetto DPKG di Debian. È tecnicamente superiore in molti modi, in particolare quando si tratta di dipendenze, tuttavia, solo Debian e poche altre distribuzioni lo usano. I comandi dpkg e deselect sono usati al prompt della shell per gestire i pacchetti Debian.

Un altro sistema di pacchettizzazione è Emerge di Gentoo, che è disponibile solo su Gentoo Linux. La più grande differenza tra Emerge e altri sistemi di pacchetti è che quasi tutti i pacchetti contengono codice sorgente, che viene compilato quando il pacchetto viene installato. Tutta l'installazione e la gestione dei pacchetti Gentoo viene eseguita utilizzando il comando emerge.

Anche se questi sistemi di pacchetti sono internamente diversi e utilizzano formati di file incompatibili, offrono tutti sostanzialmente le stesse funzionalità. Tutti consentono di combinare più file relativi allo stesso programma in un unico file di pacchetto per una facile installazione e rimozione e tutte le dipendenze di supporto. Sfortunatamente, una volta scelta la tua distribuzione Linux, è molto difficile passare a un altro sistema di pacchettizzazione, quindi sei bloccato con ciò che usa la distribuzione.

Sulla maggior parte delle distribuzioni che utilizzano RPM, i pacchetti vengono installati dal CD di distribuzione o scaricati da vari siti su Internet. Debian Linux tuttavia include un comando chiamato apt-get che può scaricare e installare automaticamente i pacchetti da un repository gestito dai manutentori della distribuzione. Se il pacchetto dipende da altri che non sono ancora installati sul tuo sistema, anche questi verranno automaticamente scaricati e installati. Poiché tutti i pacchetti nel repository vengono creati e gestiti dalle stesse persone, le incompatibilità tra di loro vengono ridotte e le dipendenze risolte facilmente. Il repository contiene anche un pacchetto per quasi tutti i programmi software gratuiti che potresti voler installare, quindi non è necessario cercare in Internet il pacchetto che desideri.

Il repository Debian può anche essere usato per aggiornare tutti i pacchetti sul tuo sistema all'ultima versione. Poiché le nuove versioni dei pacchetti escono frequentemente (soprattutto quando si usano le versioni unstable o testing di Debian), un aggiornamento è un modo semplice per assicurarsi di eseguire l'ultima versione di tutto. Ciò può richiedere molto tempo se non si dispone di una connessione veloce a Internet, poiché è possibile che molti nuovi pacchetti vengano scaricati per ogni aggiornamento.

Il sistema Emerge di Gentoo Linux ha anche un repository da cui i pacchetti possono essere scaricati e installati automaticamente usando il comando emerge. Come apt-get di Debian, scarica e installa automaticamente i pacchetti necessari per soddisfare le dipendenze quando necessario.

I sistemi Redhat hanno anche accesso a un repository di pacchetti come parte della Redhat Network. Ciò consente di selezionare i pacchetti aggiornati sul sito Web di Redhat e di installarli automaticamente o su richiesta su più sistemi. A differenza dei repository Debian e Gentoo, generalmente non viene utilizzato per l'installazione di nuovi pacchetti.

Il modulo Pacchetti software

Il modulo Pacchetti software fornisce un'interfaccia coerente per l'installazione, la ricerca e la rimozione di pacchetti, indipendentemente dal sistema di confezionamento effettivamente utilizzato. La sua icona si trova nella categoria Sistema e facendo clic su di essa si accede alla pagina principale mostrata di seguito.

La pagina principale del modulo Pacchetti software

A seconda della tua distribuzione Linux, la pagina potrebbe avere un aspetto leggermente diverso:potrebbero essere visibili pulsanti e campi aggiuntivi per l'installazione da un repository. Tuttavia, la sezione superiore per trovare i pacchetti, la sezione centrale per l'installazione di un pacchetto e la sezione inferiore per identificare un file sarà sempre presente.

Installazione di un nuovo pacchetto

Prima di poter installare un nuovo programma utilizzando questo modulo, devi prima individuare un file di pacchetto che sia nel formato corretto. Per le distribuzioni basate su RPM come Redhat, i posti migliori dove cercare sono i CD di distribuzione o il sito web rpmfind.net. Se stai usando Debian Linux, è meglio provare a installare dal repository APT poiché contiene quasi tutti i pacchetti disponibili. In entrambi i casi, i passaggi per l'installazione di un pacchetto sono simili:

  1. Nella pagina principale del modulo, scorrere fino al modulo *Installa un nuovo pacchetto* che verrà utilizzato per selezionare il pacchetto e avviare il processo di installazione.
  2. Se il file del pacchetto si trova sul sistema che esegue Webmin, seleziona Da file locale opzione e immettere il percorso completo del file del pacchetto. Se il tuo sistema utilizza pacchetti RPM, puoi inserire una directory contenente più file .rpm o un carattere jolly come /tmp/*.rpm anche. Questo può essere utilizzato per installare più pacchetti contemporaneamente. Se il pacchetto si trova sul computer su cui è in esecuzione il browser, seleziona Da file caricato opzione e fai clic su Sfoglia pulsante per selezionare il file del pacchetto. Se stai eseguendo il tuo browser sulla console del tuo sistema Webmin, non c'è differenza tra questa opzione e la precedente. Se il pacchetto si trova su un sito Web da qualche parte, seleziona Da ftp o URL http opzione e inserisci o incolla l'URL nel campo di testo accanto ad esso. Webmin eseguirà il download per te prima di iniziare l'installazione. Se il tuo sistema utilizza pacchetti RPM e hai installato il comando rpmfind, Cerca rpmfind.net è possibile fare clic sul pulsante accanto al campo dell'URL per visualizzare una finestra per la ricerca nel database RPM all'indirizzo http://rpmfind.net/. Se si esegue Debian Linux, è possibile selezionare l'opzione *Pacchetto da APT* e inserire il nome del pacchetto nel campo di testo accanto ad esso. Fai clic su Cerca APT pulsante per trovare il nome del pacchetto se non sai esattamente come si chiama. Se si esegue Redhat Linux, il Pacchetto da Redhat Network L'opzione può essere utilizzata per installare uno dei pacchetti disponibili per il download. Il RHN di ricerca è possibile utilizzare il pulsante per visualizzare tutti quelli disponibili. Se stai usando Gentoo Linux, il repository From Portage opzione e Cerca i pulsanti possono essere utilizzati per l'installazione dal repository. In effetti, al di fuori del repository si possono trovare pochissimi pacchetti Gentoo.
  3. Dopo aver inserito l'origine del pacchetto, fai clic su Installa pulsante. Se hai scelto di installare da un repository (come APT, Redhat Network o Portage), il processo di download e installazione inizierà immediatamente. Webmin visualizzerà l'output del comando install e, in caso di esito positivo, un elenco di pacchetti che sono stati installati. Non sono necessari altri passaggi per completare il processo di installazione. Se è stata scelta un'altra origine di installazione, il pacchetto verrà scaricato se necessario e verrà visualizzato il modulo delle opzioni di installazione.
  4. Le opzioni di installazione disponibili variano a seconda del sistema del pacchetto, ma le impostazioni predefinite funzioneranno correttamente per l'aggiornamento o l'installazione di un pacchetto senza problemi di dipendenza. I sistemi basati su RPM hanno diverse opzioni, le più utili delle quali sono:*Ignorare le dipendenze? *Se un pacchetto non viene installato a causa di errori di dipendenza che sai essere errati, imposta questa opzione su . Può anche essere utile se hai intenzione di installare pacchetti per risolvere i problemi di dipendenza in un secondo momento. *Sostituire la nuova versione con la vecchia? *Se desideri eseguire il downgrade di un pacchetto a una versione precedente, questa opzione deve essere impostata su . *Sovrascrivere i file? *Se non è possibile installare un pacchetto a causa di conflitti con i file di un altro pacchetto, abilitare questa opzione.
  5. Quando hai finito di selezionare le opzioni di installazione, fai clic su Installa pulsante. Se tutto va bene, verrà visualizzata una pagina che mostra i dettagli del nuovo pacchetto e tutti i file che contiene. Tuttavia, se l'installazione non riesce, verrà visualizzato un messaggio di errore che spiega il motivo. In tal caso, puoi utilizzare il pulsante Indietro del browser per tornare al modulo delle opzioni di installazione e riprovare con diverse scelte.
Struttura del pacchetto

Trovare e rimuovere un pacchetto

Un tipico sistema Linux ha centinaia di pacchetti installati, la maggior parte dei quali sono stati installati come parte del processo di installazione della distribuzione. Poiché ce ne sono così tanti, è difficile sfogliarli semplicemente per trovarne uno di cui desideri rimuovere o visualizzare i dettagli. Per trovare uno o più pacchetti, segui questi passaggi:

  1. Nella pagina principale del modulo, inserisci una parola chiave di ricerca in Cerca pacchetto campo. Questo verrà confrontato con i nomi e le descrizioni di tutti i pacchetti, quindi puoi inserire qualcosa come apache per trovare tutto ciò che è correlato ad Apache.
  2. Fai clic su Cerca pacchetto pulsante, che visualizzerà un elenco di tutti i pacchetti corrispondenti, ti porterà ai dettagli del pacchetto se ne viene trovato esattamente uno o mostrerà un messaggio di errore se non ne è stato trovato nessuno. Se viene visualizzato un elenco, fare clic su uno dei nomi dei pacchetti per visualizzarne tutti i dettagli.
  3. La pagina dei dettagli del pacchetto (mostrata di seguito) visualizzerà tutte le informazioni disponibili, inclusa una descrizione completa. Se vuoi vedere tutti i file che contiene, fai clic su Elenca file pulsante. Questo ti porterà a una pagina che mostra il percorso, il tipo, il proprietario e il gruppo e lo stato di convalida per ogni file. Lo stato è particolarmente utile, in quanto consente di vedere se un file è stato modificato manualmente dall'installazione del pacchetto.
La pagina dei dettagli del pacchetto

I pacchetti possono anche essere sfogliati manualmente facendo clic sul pulsante *Albero dei pacchetti* nella pagina principale. Sulla maggior parte dei sistemi operativi, ogni pacchetto è un membro di una classe come Sviluppo o Amministrazione/Rete . La pagina dell'albero dei pacchetti utilizza queste informazioni sulla classe per visualizzare tutti i pacchetti installati in una gerarchia, proprio come un albero di directory. Puoi aprire le classi facendo clic sulle icone delle loro cartelle fino ad arrivare al livello del pacchetto. Facendo clic sull'icona di un pacchetto si accede alla stessa pagina dei dettagli descritta nei passaggi precedenti.

Se conosci il nome di un comando o di un file e desideri trovare il pacchetto a cui appartiene, Identifica un file è possibile utilizzare il modulo nella pagina principale. Inserisci un percorso completo (come /etc/rc.d/init.d/httpd) o un comando (come apachectl) nella Cerca campo e premi il pulsante. Se il file o il comando è noto al sistema del pacchetto, le informazioni su di esso verranno visualizzate insieme a un elenco di pacchetti a cui appartiene. Cliccando su uno dei nomi dei pacchetti si accede alla pagina informativa sopra descritta.

Una volta che un pacchetto è stato trovato cercando o sfogliando l'albero, puoi eliminarlo dal tuo sistema seguendo questi passaggi:

  1. Nella pagina dei dettagli del pacchetto, fai clic su Disinstalla pulsante. Questo ti porterà a una pagina di conferma che mostra il numero di file nel pacchetto e la quantità di spazio su disco che occupano.
  2. Se si utilizza il sistema di pacchettizzazione RPM, Ignorare le dipendenze? l'opzione può essere impostata su per forzare una disinstallazione anche se alcuni altri pacchetti dipendono dalla rimozione di questo.
  3. Fai clic su Elimina pulsante per rimuovere il pacchetto. Se qualcosa va storto, verrà visualizzato un messaggio di errore. In caso di successo, il browser tornerà alla pagina principale del modulo o all'elenco dei risultati di ricerca del pacchetto se il pacchetto è stato trovato utilizzando una ricerca.
Risultato del pacchetto di ricerca


Aggiornamento su Debian Linux

Se stai usando Debian Linux, nella parte inferiore della pagina principale del modulo ci sarà un modulo intitolato Aggiorna tutti i pacchetti . Questo modulo ha tre opzioni, che sono:

Risincronizza l'elenco dei pacchetti
Se questa opzione è impostata su , il repository di pacchetti Debian verrà interrogato per recuperare l'ultimo elenco di pacchetti disponibili per il download. Questo dovrebbe essere fatto prima di qualsiasi aggiornamento in modo che il tuo sistema sappia da quali URL scaricare quando installi i pacchetti dal repository APT. Il comando effettivo utilizzato per sincronizzare l'elenco dei pacchetti è apt-get update.
Esegui l'aggiornamento della distribuzione
Quando questa opzione è impostata su , il tuo sistema Debian verrà aggiornato all'ultima versione di distribuzione quando il modulo viene inviato. Con l'impostazione predefinita No selezione, verrà semplicemente aggiornato in modo che tutti i pacchetti installati siano l'ultima versione. A meno che tu non abbia una connessione di rete veloce e desideri davvero eseguire l'aggiornamento, è consigliabile lasciare questa opzione impostata su No . Quando è selezionato, verrà eseguito il comando apt-get upgrade-dist. Per No , verrà invece utilizzato apt-get upgrade.
Mostra solo quali pacchetti verranno aggiornati
Se impostato su , non verrà effettivamente installato nulla al momento dell'invio del modulo, verrà invece visualizzato un elenco di pacchetti che verranno aggiornati o installati. Questo può essere utile se vuoi vedere esattamente cosa accadrebbe quando esegui un aggiornamento prima di procedere davvero.

Dopo aver effettuato le tue scelte, fai clic su Aggiorna ora pulsante. Webmin eseguirà i comandi apt-get appropriati e ne visualizzerà l'output, in modo che tu possa vedere quali pacchetti vengono scaricati e aggiornati.

Aggiornamento su Redhat Linux

Redhat offre un servizio agli utenti della sua distribuzione Linux, chiamato Redhat Network. Una delle sue funzionalità permette di avere pacchetti RPM aggiornati installati automaticamente sul proprio sistema, per correggere bug o falle di sicurezza che si trovano nei pacchetti forniti con la distribuzione. Se stai usando Redhat Linux, ci sarà un modulo in fondo alla pagina principale sotto il titolo Opzioni di rete Redhat che puoi utilizzare per configurare l'installazione automatica dei pacchetti aggiornati. Prima che possa essere utilizzato, devi esserti registrato con Redhat Network e registrato il sistema su cui stai eseguendo Webmin.

Il modulo in realtà ha due scopi:modificare le impostazioni per il demone di aggiornamento che verifica periodicamente la presenza di nuovi pacchetti e forzare un aggiornamento immediato. I campi del modulo sono:

Verificare automaticamente gli aggiornamenti?
Se questa opzione è impostata su , il demone <>ttrhnsd che controlla gli aggiornamenti verrà configurato per l'avvio all'avvio e, se necessario, verrà avviato quando il modulo viene inviato. Impostandolo su No arresterà il demone e ne impedirà l'avvio all'avvio.
Intervallo di controllo
When the automatic update daemon is enabled, the number of minutes between checks for new packages is determined by this option.
Proxy server URL for downloading
If your system cannot connect directly to the Redhat website, you will need to set this option to the URL of a web proxy server. It must be formatted like http://proxy.company.com:8000/ .
Skip packages matching
This option is for entering list of patterns for package names that you do not want automatically updated. By default it prevents kernel updates from being automatically installed.

The Save and Apply button will save your settings and start or stop the rhnsd daemon as necessary. The Save and Check Now button will do the same thing, but will also run the up2date command to immediately check for and download new packages. All output from the command will be displayed so that you can see which packages are being updated.

Other operating systems

Linux is not the only version of Unix that uses packages to simplify the process of installing and removing software. The operating systems listed below can also use the Software Packages module, with an almost identical user interface. However, each has its own packaging format that is incompatible with Linux or any other variety of Unix. The differences between each Unix's package system and RPM are explained below :

Sun Solaris, SCO OpenServer and SCO UnixWare

All of these operating systems use the same basic System V package format, but packages from one cannot be installed on any of the others.

Package files are usually named something .pkg or something .pkg.gz. If a package file is compressed, Webmin will uncompress it automatically.

Files can contain multiple packages, all of which will be installed when using Webmin. - No package repository or search service exists for System V packages. - Directories like /usr/bin are often shared between multiple system packages.

FreeBSD, NetBSD and OpenBSD

Package files have names like something .tgz, and are actually just specially formatted tar files.

Webmin does not support any repository for BSD packages.

HP/UX

HP/UX uses its own unique Depot package format Package files are usually named like something .depot or something .depot.gz. If a package is compressed, Webmin will automatically uncompress if for you.

Webmin does not support any repository for HP/UX packages.


Webmin
  1. L'evoluzione dei gestori di pacchetti

  2. Installa i pacchetti RPM su Ubuntu 11.10 e Ubuntu 11.04

  3. Come controllare il pacchetto scaricato su Openbsd 5.1?

  4. Nuovo pacchetto contro nuova versione?

  5. Crea/elimina pacchetti di hosting in CWP

Come installare i pacchetti RPM su CentOS 8

3 modi per installare il software dai pacchetti .deb in Ubuntu

Come eseguire il downgrade dei pacchetti su Ubuntu

Aggiornamenti del pacchetto software

Pacchetti software cluster

Configurazione di pacchetti cPanel/WHM