Amministratore Linux: gestione dei pacchetti
La gestione dei pacchetti in CentOS può essere eseguita in due modi: dal terminale e dall'interfaccia utente grafica.
Il più delle volte la maggior parte del tempo di un amministratore di CentOS utilizzerà il terminale. L'aggiornamento e l'installazione dei pacchetti per CentOS non è diverso. Con questo in mente, esploreremo prima la gestione dei pacchetti nel terminale, quindi toccheremo l'utilizzo dello strumento grafico di gestione dei pacchetti fornito da CentOS.
Gestore pacchetti YUM
YUM è lo strumento fornito per la gestione dei pacchetti in CentOS. Abbiamo toccato brevemente questo argomento nei capitoli precedenti. In questo capitolo, lavoreremo da un'installazione CentOS pulita. Prima aggiorneremo completamente la nostra installazione e poi installeremo un'applicazione.
YUM ha portato l'installazione e la gestione del software in Linux molto lontano. YUM verifica "automaticamente" la presenza di dipendenze obsolete, oltre a pacchetti obsoleti, cosa che ha davvero tolto un carico all'amministratore di CentOS rispetto ai vecchi tempi di compilazione di ogni applicazione dal codice sorgente.
yum check-update
Verifica la presenza di pacchetti in grado di aggiornare i candidati. Per questo tutorial, supporremo che si tratti di un sistema di produzione che dovrà affrontare Internet senza applicazioni di produzione che devono essere testate da DevOps prima di aggiornare i pacchetti. Ora installiamo i candidati aggiornati nel sistema.
[root@localhost rdc]# yum check-update
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
NetworkManager.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-adsl.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-glib.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-libnm.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-team.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-tui.x86_64 1:1.4.0-19.el7_3 updates
NetworkManager-wifi.x86_64 1:1.4.0-19.el7_3 updates
audit.x86_64 2.6.5-3.el7_3.1 updates
vim-common.x86_64 2:7.4.160-1.el7_3.1 updates
vim-enhanced.x86_64 2:7.4.160-1.el7_3.1 updates
vim-filesystem.x86_64 2:7.4.160-1.el7_3.1 updates
vim-minimal.x86_64 2:7.4.160-1.el7_3.1 updates
wpa_supplicant.x86_64 1:2.0-21.el7_3 updates
xfsprogs.x86_64 4.5.0-9.el7_3 updates
[root@localhost rdc]#
aggiornamento yum
Questo installerà tutti i candidati aggiornati rendendo la tua installazione di CentOS corrente. Con una nuova installazione, questo può richiedere un po 'di tempo a seconda dell'installazione e della velocità della connessione Internet.
[root@localhost rdc]# yum update
vim-minimal x86_64 2:7.4.160-1.el7_3.1 updates 436 k
wpa_supplicant x86_64 1:2.0-21.el7_3 updates 788 k
xfsprogs x86_64 4.5.0-9.el7_3 updates 895 k
Transaction Summary
======================================================================================
Install 2 Packages
Upgrade 156 Packages
Total download size: 371 M
Is this ok [y/d/N]:
Installa il software tramite YUM
Oltre ad aggiornare il sistema CentOS, il gestore di pacchetti YUM è il nostro strumento di riferimento per l'installazione del software. Tutto, dagli strumenti di monitoraggio della rete, ai lettori video, agli editor di testo può essere installato da un archivio centrale con YUM .
Prima di installare alcune utilità software, diamo un'occhiata ad alcuni comandi YUM . Per il lavoro quotidiano, il 90% dell'utilizzo di YUM da parte di un amministratore di CentOS sarà con circa 7 comandi. Esamineremo ciascuno nella speranza di acquisire familiarità con il funzionamento di YUM a un livello competente per l'uso quotidiano. Tuttavia, come la maggior parte delle utilità Linux, YUM offre una vasta gamma di funzionalità avanzate che sono sempre fantastiche da esplorare tramite la pagina man. Usare man yum sarà sempre il primo passo per eseguire operazioni non familiari con qualsiasi utilità Linux.
Comandi YUM più comuni
Di seguito sono riportati i comandi YUM comunemente usati.
Comando | Azione |
---|---|
elenco installato | Elenca i pacchetti installati tramite YUM |
elenca tutto | Elenca tutti i pacchetti attualmente disponibili |
elenco dei gruppi | Elenca i pacchetti raggruppati |
Informazioni | Fornisce informazioni dettagliate su un pacchetto |
ricerca | Cerca descrizioni e nomi dei pacchetti |
installare | Installa un pacchetto |
localinstall | Installa un pacchetto rpm locale |
rimuovere | Rimuove e installa il pacchetto |
pulisci tutto | Pulisce / var / cache / yum per liberare spazio su disco |
uomo yum | Come tutti i comandi di Linux, il file della guida |
Installa il software con YUM
Ora installeremo un browser web basato su testo chiamato Lynx. Prima dell'installazione, dobbiamo prima ottenere il nome del pacchetto contenente il browser web Lynx. Non siamo nemmeno sicuri al 100% che il nostro repository CentOS predefinito fornisca un pacchetto per il browser Web Lynx, quindi cerchiamo e vediamo -
[root@localhost rdc]# yum search web browser
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
=================================================================
N/S matched: web, browser
==================================================================
icedtea-web.x86_64 : Additional Java components for OpenJDK - Java browser
plug-in and Web Start implementation
elinks.x86_64 : A text-mode Web browser
firefox.i686 : Mozilla Firefox Web browser
firefox.x86_64 : Mozilla Firefox Web browser
lynx.x86_64 : A text-based Web browser
Full name and summary matches only, use "search all" for everything.
[root@localhost rdc]#
Vediamo, CentOS offre il browser Web Lynx nel repository. Vediamo qualche informazione in più sul pacchetto.
[root@localhost rdc]# lynx.x86_64
bash: lynx.x86_64: command not found...
[root@localhost rdc]# yum info lynx.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Available Packages
Name : lynx
Arch : x86_64
Version : 2.8.8
Release : 0.3.dev15.el7
Size : 1.4 M
Repo : base/7/x86_64
Summary : A text-based Web browser
URL : http://lynx.isc.org/
License : GPLv2
Description : Lynx is a text-based Web browser. Lynx does not display any images,
: but it does support frames, tables, and most other HTML tags. One
: advantage Lynx has over graphical browsers is speed; Lynx starts and
: exits quickly and swiftly displays web pages.
[root@localhost rdc]#
Bello! La versione 2.8 è abbastanza attuale quindi installiamo Lynx.
[root@localhost rdc]# yum install lynx
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Resolving Dependencies
--> Running transaction check
---> Package lynx.x86_64 0:2.8.8-0.3.dev15.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
===============================================================================
===============================================================================
Package Arch
Version Repository Size
===============================================================================
===============================================================================
Installing:
lynx x86_64
2.8.80.3.dev15.el7 base 1.4 M
Transaction Summary
===============================================================================
===============================================================================
Install 1 Package
Total download size: 1.4 M
Installed size: 5.4 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for base
lynx-2.8.8-0.3.dev15.el7.x86_64.rpm
| 1.4 MB 00:00:10
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : lynx-2.8.8-0.3.dev15.el7.x86_64
1/1
Verifying : lynx-2.8.8-0.3.dev15.el7.x86_64
1/1
Installed:
lynx.x86_64 0:2.8.8-0.3.dev15.el7
Complete!
[root@localhost rdc]#
Quindi, assicuriamoci che Lynx sia stato effettivamente installato correttamente.
[root@localhost rdc]# yum list installed | grep -i lynx
lynx.x86_64 2.8.8-0.3.dev15.el7 @base
[root@localhost rdc]#
Grande! Usiamo Lynx per vedere come appare il Web senza "Mi piace" e belle immagini.
[root@localhost rdc]# lynx www.tutorialpoint.in
Ottimo, ora abbiamo un browser web per il nostro server di produzione che può essere utilizzato senza troppe preoccupazioni negli exploit remoti lanciati sul web. Questa è una buona cosa per i server di produzione.
Abbiamo quasi completato, tuttavia prima dobbiamo impostare questo server per consentire agli sviluppatori di testare le applicazioni. Quindi, assicuriamoci che abbiano tutti gli strumenti necessari per il loro lavoro. Potremmo installare tutto individualmente, ma CentOS e YUM lo hanno reso molto più veloce. Installiamo il pacchetto del gruppo di sviluppo .
[root@localhost rdc]# yum groups list
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Available Groups:
Compatibility Libraries
Console Internet Tools
Development Tools
Graphical Administration Tools
Legacy UNIX Compatibility
Scientific Support
Security Tools
Smart Card Support
System Administration Tools
System Management
Done
[root@localhost rdc]#
Questo è un elenco più piccolo di gruppi di pacchetti forniti da CentOS. Vediamo cosa include il "Gruppo di sviluppo".
[root@localhost rdc]# yum group info "Development Tools"
Loaded plugins: fastestmirror, langpacks
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirror.scalabledns.com
* extras: mirror.scalabledns.com
* updates: mirror.clarkson.edu
Group: Development Tools
Group-Id: development
Description: A basic development environment.
Mandatory Packages:
autoconf
automake
binutils
bison
La prima schermata di output è quella vista sopra. L'intero elenco è piuttosto completo. Tuttavia, questo gruppo sarà solitamente necessario per essere installato nella sua interezza col passare del tempo. Installiamo l'intero gruppo di sviluppo.
[root@localhost rdc]# yum groupinstall "Development Tools"
Questa sarà un'installazione più grande. Una volta completato, il tuo server avrà la maggior parte delle librerie di sviluppo e dei compilatori per Perl, Python, C e C ++.
Gestione grafica dei pacchetti in CentOS
Gnome Desktop fornisce uno strumento grafico di gestione dei pacchetti chiamato Software. È abbastanza semplice da usare e diretto. Software, lo strumento di gestione dei pacchetti Gnome per CentOS può essere trovato accedendo a: Applicazioni → Strumenti di sistema → Software.
Lo strumento di gestione dei pacchetti software è diviso in gruppi che consentono all'amministratore di selezionare i pacchetti per l'installazione. Sebbene questo strumento sia ottimo per la facilità d'uso e la semplicità per gli utenti finali, YUM è molto più potente e probabilmente verrà utilizzato di più dagli amministratori.
Di seguito è riportato uno screenshot dello strumento di gestione dei pacchetti software, non progettato per gli amministratori di sistema.