GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare i pacchetti sul sistema Linux RHEL 8 / CentOS 8

Tutte le moderne distribuzioni linux organizzano il software in pacchetti che contengono binari delle applicazioni, file, metadati e informazioni sulle dipendenze del pacchetto, possibili conflitti con altri pacchetti ecc. Il gestore di pacchetti di base di Rhel è chiamato rpm stesso, ed è lo strumento utilizzato anche da dnf , il gestore di pacchetti di livello superiore, in grado di gestire le dipendenze. Una tecnologia relativamente recente, flatpak , installiamo anche le applicazioni sandbox insieme ai loro runtime.

In questo tutorial imparerai:

  • I tre modi principali per installare un pacchetto utilizzando rpm
  • Come installare i pacchetti usando dnf
  • Come installare le applicazioni graficamente dall'utilità gnome-software
  • Come installare applicazioni sandbox con flatpak


Il manuale del gestore di pacchetti rpm

Requisiti e convenzioni software utilizzati

Requisiti software e convenzioni della riga di comando Linux
Categoria Requisiti, convenzioni o versione del software utilizzata
Sistema RHEL 8 / CentOS 8
Software Le utilità utilizzate in questo tutorial sono installate per impostazione predefinita, non è necessario alcun software aggiuntivo.
Altro Autorizzazione a eseguire il comando con privilegi di root.
Convenzioni # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando
$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Cos'è un pacchetto?

In RHEL 8 / CentOS 8, come in tutte le moderne distribuzioni Linux, il software è organizzato in repository, sotto forma di pacchetti. Ma cos'è esattamente un pacchetto? Un pacchetto è fondamentalmente un archivio compresso che contiene i file associati a un software specifico, come binari e librerie compilati, oltre a metadati e istruzioni su dove e come tali file devono essere installati sul sistema, le dipendenze esterne di cui il software ha bisogno per funzionare correttamente e Di Più. RHEL e CentOS usano il rpm formato di pacchetto inventato dalla stessa Red Hat:in questo tutorial vedremo come installare e gestire i pacchetti rpm su Red Hat Enterprise Linux 8.

RPM:Red Hat Package Manager e yum/dnf

Per facilitare la gestione dei pacchetti rpm, il rpm package manager è stato creato. Sebbene sia molto potente, è focalizzato su singoli pacchetti, quindi non è in grado di risolvere le dipendenze. Per gestire le relazioni tra i pacchetti ed evitare il famigerato inferno delle dipendenze, prima yum gestore di pacchetti (Yellow Updater Modified) e poi la sua evoluzione, dnf (Dandified YUM), sono stati adottati. Dnf è stato introdotto per la prima volta in Fedora 18 e sostituisce yum nell'ultima versione di Red Hat Enterprise Linux.

Installazione di un pacchetto con rpm

Una delle operazioni più basilari che possiamo eseguire con rpm è l'installazione di un pacchetto. Come detto prima, funzionerà solo se il pacchetto non ha dipendenze esterne, poiché rpm non è in grado di gestirlo. Ci sono fondamentalmente tre modi per installare un pacchetto con rpm:corrispondono rispettivamente a -i , -U e -F opzioni.

Per installare un nuovo pacchetto possiamo eseguire rpm con -i opzione (abbreviazione di --install ). La sintassi è molto semplice:

$ sudo rpm -i packagename.rpm

Quando eseguiamo il comando sopra, il pacchetto specificato viene installato solo se non è già installato sul sistema. Se proviamo a installare un pacchetto già installato (gedit in questo caso), riceviamo un errore:

$ sudo rpm -i gedit-3.28.1-3.el8.x86_64.rpm
package gedit-2:3.28.1-3.el8.x86_64 is already installed

Si noti che qui per lo stesso "pacchetto" si intende la stessa versione esatta. Questo metodo di installazione è quello consigliato da usare quando si esegue l'installazione di un nuovo kernel:in tali situazioni, il nuovo kernel coesisterà con il/i vecchio/i, quindi nel caso qualcosa non funzioni come previsto, sarà possibile usarli come ripiego.

Le cose vanno diversamente quando usiamo il -U opzione, che è l'abbreviazione di --upgrade . In questo caso se un pacchetto non esiste già nel sistema, viene installato; se esiste una versione precedente del pacchetto, il pacchetto viene aggiornato. Ciò significa che dopo l'installazione della versione più recente del pacchetto, le versioni precedenti vengono rimosse. Come abbiamo detto sopra, l'aggiornamento di un software fondamentale come il kernel in essere è altamente sconsigliato:è meglio essere assolutamente sicuri che il nuovo kernel funzioni come previsto prima di rimuovere le versioni precedenti.

Il -F (o –freshen) fa qualcosa di diverso. Quando viene utilizzato, vengono aggiornati solo i pacchetti già esistenti. Se una versione precedente del pacchetto che stiamo cercando di installare non esiste già nel nostro sistema, non è installata.

Installazione di un pacchetto da una posizione remota

Con rpm è anche possibile installare un pacchetto che non è sul nostro filesystem locale. Supponiamo ad esempio di voler installare un pacchetto accessibile tramite il protocollo ftp; il comando da eseguire sarebbe il seguente:

$ sudo rpm -i ftp://ftp.someaddress.com/package.rpm

È anche possibile fornire un nome utente e una password se è richiesta l'autenticazione, includendo tali informazioni nell'indirizzo:

$ sudo rpm -i ftp://username:[email protected]/package.rpm

Installazione di un pacchetto con dnf

Sebbene dnf opera su rpm, fornisce funzionalità molto utili come la gestione delle dipendenze software e la possibilità di installare software dai repository di distribuzione. I metadati archiviati in un pacchetto rpm, tra le altre cose, specificano quali altri pacchetti devono essere installati affinché il software funzioni e, eventualmente, quali pacchetti potrebbero entrare in conflitto con esso. Dnf, ovvero si occupa di eseguire tutte le operazioni necessarie, dopo aver ricevuto la conferma dell'utente. Supponiamo ad esempio di voler installare vim pacchetto utilizzando dnf; correremmo:

$ sudo dnf install vim

Dopo aver eseguito il comando precedente, sullo schermo vengono visualizzate le operazioni da eseguire e l'elenco delle dipendenze da installare:

Dependencies resolved.
================================================================================
  Package    Arch   Version          Repository                             Size
================================================================================
Installing:
  vim-enhanced
            x86_64 2:8.0.1763-7.el8 rhel-8-for-x86_64-appstream-beta-rpms  1.4 M
Installing dependencies:
  gpm-libs   x86_64 1.20.7-15.el8    rhel-8-for-x86_64-appstream-beta-rpms  39 k
  vim-filesystem
            noarch 2:8.0.1763-7.el8 rhel-8-for-x86_64-appstream-beta-rpms   47 k
  vim-common x86_64 2:8.0.1763-7.el8 rhel-8-for-x86_64-appstream-beta-rpms 6.3 M

Transaction Summary
================================================================================
Install  4 Packages

Total download size: 7.8 M
Installed size: 30 M
Is this ok [y/N]:

Se si esegue dnf da uno script destinato all'esecuzione automatica, -y opzione (forma abbreviata di --assumeyes ) può essere utilizzato:in questo modo tutte le risposte riceveranno automaticamente un "sì" e sarà richiesta l'interazione dell'utente.

Come rpm, dnf ci consente di installare un pacchetto che si trova su un URL remoto; non ci resta che specificare quest'ultimo:

$ sudo dnf install http://path/to/package.rpm

Installazione grafica di un pacchetto

Quando si esegue GNOME ambiente desktop, è anche possibile installare un pacchetto graficamente, utilizzando il gnome-software applicazione. Se il pacchetto esiste nei repository di distribuzione possiamo semplicemente eseguire una ricerca dell'applicazione che vogliamo installare utilizzando il campo di ricerca:



Interfaccia di ricerca del software Gnome

Successivamente, possiamo fare clic sul pulsante "Installa" per installare effettivamente l'applicazione:



Interfaccia di installazione del software Gnome

Quando si installa un pacchetto con questo metodo viene utilizzata una procedura diversa. Le applicazioni software gnome sono un frontend per packagekit che è esso stesso un frontend di alto livello che funziona come un'astrazione sul gestore di pacchetti nativo di una distribuzione:il suo obiettivo principale è uniformare le installazioni su diverse distribuzioni. È anche importante notare che i pacchetti installati in questo modo non appariranno nella cronologia dnf, poiché packagekit non usa quest'ultimo sotto il cofano.

Installazione di software con flatpack

Su RHEL 8 / CentOS 8, un altro modo possibile per installare il software, sia dall'applicazione gnome-software, sia dalla riga di comando, è utilizzare i flatpack. I flatpack forniscono ambienti sandbox all'interno dei quali viene fornito un software insieme a tutte le sue dipendenze:questo rende possibile eseguire una specifica versione di un programma su tutte le distribuzioni che supportano questa tecnologia, indipendentemente dalle librerie native. Il repository principale dei flatpack è flathub. Installare un flatpack da questo sito con il software gnome è davvero semplice. Tutto quello che dobbiamo fare è cercare l'applicazione che vogliamo installare e fare clic su install pulsante.



Flathub è il repository principale utilizzato per i flatpak

Il software Gnome dovrebbe avviarsi automaticamente:in caso contrario, basta aprire il file scaricato con esso. Dopo aver fatto clic sul pulsante di installazione e fornito la nostra password amministrativa, se richiesta, il pacchetto verrà installato.



Installazione del software Gnome flatpak

Una volta installato un flatpak in questo modo, il repository flathub viene automaticamente aggiunto come sorgente flatpak, quindi diventa possibile cercare altre applicazioni in esso contenute, direttamente dall'interfaccia gnome-software center.

È possibile eseguire le stesse operazioni che abbiamo visto sopra dalla riga di comando usando il comando flatpak. Quando si utilizza il flatpak utility, è possibile decidere se l'installazione deve essere globale o solo per un utente specifico. In quest'ultimo caso non sono richiesti i privilegi di amministratore e il --user l'opzione deve essere fornita al comando. Per aggiungere il repository flathub a livello globale eseguiamo semplicemente:

$ sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

Ora possiamo installare il nostro pacchetto. Dobbiamo fornire il percorso completo del pacchetto e anche il nome del repository remoto da cui vogliamo installare. Ad esempio per installare neovim eseguiremmo:

$ sudo flatpak install flathub io.neovim.nvim
Required runtime for io.neovim.nvim/x86_64/stable (runtime/org.freedesktop.Sdk/x86_64/18.08) found in remote flathub
Do you want to install it? [y/n]:

Se rispondiamo affermativamente il pacchetto e il suo runtime verranno scaricati e installati nel nostro sistema. Se vuoi saperne di più sulla tecnologia flatpak, puoi consultare il nostro articolo più dettagliato sull'argomento

Conclusioni

In questo tutorial abbiamo visto vari modi per installare il software sui sistemi Linux RHEL 8 / CentOS 8. Il software è organizzato in pacchetti, che a basso livello sono gestiti dal gestore di pacchetti rpm che non può risolvere automaticamente le dipendenze. Per fornire questa funzionalità e altro, viene utilizzato il programma dnf, che funziona su rpm. Alla fine abbiamo imparato a installare il software sandbox utilizzando una tecnologia relativamente recente, flatpak.


Cent OS
  1. Come installare un file RPM su sistema operativo Linux (CentOS, RHEL e Fedora)

  2. Come installare redmine su RHEL 8 / CentOS 8 Linux

  3. Come installare e configurare R sul sistema Linux RHEL 8 / CentOS 8

  4. Come installare un pacchetto RPM in una directory diversa in CentOS/RHEL/Fedora

  5. Come installare i pacchetti usando dnf in CentOS/RHEL 8

Come installare file RPM (pacchetti) su CentOS Linux

Come installare RPM su CentOS

Come installare Cockpit su CentOS 8 / RHEL 8

Come installare e gestire i pacchetti su CentOS utilizzando RPM

Come installare i pacchetti RPM su CentOS 8

Come installare i pacchetti RPM in CentOS, RHEL e Fedora