Impara a gestire gruppi di pacchetti

By | Agosto 19, 2018

Presentazione

I gruppi di pacchetti sono una funzionalità ben nota del comando yum per raggruppare più pacchetti sotto un singolo nome.

Anche se yum verrà sostituito con dnf nelle versioni future di RHEL, la sintassi e le caratteristiche rimarranno le stesse (almeno questo è il caso in Fedora 22 dove puoi sostituire yum con dnf senza alcun problema).

Esistono tre tipi di gruppi di pacchetti:

i gruppi di pacchetti di ambiente (enviroment) descrivono un tipo di configurazione globale contenente altri gruppi di pacchetti: installazione minima, nodo di calcolo, server infrastruttura, desktop GNOME, ecc.
i gruppi di pacchetti di livello superiore (top-level) portano una serie di gruppi di pacchetti appartenenti allo stesso dominio: strumenti di sicurezza, strumenti di sviluppo, strumenti di amministrazione del sistema, ecc.
i gruppi di pacchetti semplici (simple) contengono pacchetti su un argomento particolare: web-server, network-file-system-client, ecc.

Inoltre, all’interno di un gruppo di pacchetti, ci sono potenzialmente tre diverse categorie:

gruppi/pacchetti di pacchetti obbligatori (mandatory)sono sempre installati.
i pacchetti/gruppi di pacchetti predefiniti(default) vengono normalmente installati tranne se specificato diversamente.
gruppi/pacchetti di pacchetti opzionali(optional) sono installati solo su richiesta.

Nota: mentre prima alcuni sottocomandi yum come groupinfo, grouplist e groupinstall erano stati scritti con una sola parola in RHEL 6,in RHEL 7 ora sono accettate una o due parole: yum groupinfo/yum group info, yum grouplist/yum group list, yum groupinstall/yum group install, eccetera.

Gestione del gruppo di pacchetti

Per ottenere l’elenco di tutto l’ambiente e i gruppi di pacchetti di livello superiore, digitare:

# yum group list ids
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
...
Available environment groups:
 Minimal Install (minimal)
 Compute Node (compute-node-environment)
 Infrastructure Server (infrastructure-server-environment)
 File and Print Server (file-print-server-environment)
 Basic Web Server (web-server-environment)
 Virtualization Host (virtualization-host-environment)
 Server with GUI (graphical-server-environment)
 GNOME Desktop (gnome-desktop-environment)
 KDE Plasma Workspaces (kde-desktop-environment)
 Development and Creative Workstation (developer-workstation-environment)
Available Groups:
 Compatibility Libraries (compat-libraries)
 Console Internet Tools (console-internet)
 Development Tools (development)
 Graphical Administration Tools (graphical-admin-tools)
 Legacy UNIX Compatibility (legacy-unix)
 Scientific Support (scientific)
 Security Tools (security-tools)
 Smart Card Support (smart-card)
 System Administration Tools (system-admin-tools)
 System Management (system-management)
Done

Nota 1: Specificando l’opzione ids, si ottiene il nome di sistema di ciascun gruppo di pacchetti tra parentesi. Questo nome, chiamato Group ID, è più facile da usare perché generalmente più corto e senza spazi. È anche il nome usato da Kickstart durante l’installazione.
Nota 2: per ottenere l’elenco di tutti i gruppi di pacchetti, è necessario aggiungere l’argomento nascosto: ## yum group list ids hidden
Nota3: Con l’ID di gruppo(Group ID), non è più necessario utilizzare il sottocomando del group, almeno per le opzioni di installazione e rimozione:

  • yum install @security-tools = yum group install security-tools
  • yum remove @^web-server-environment = yum group remove web-server-environment
  • il @^ prefisso è riservato al gruppo environment.

Per elencare i pacchetti in un gruppo di ambienti (qui “Minimal Install“), digitare:

# yum group info "Minimal Install"
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
...
Environment Group: Minimal Install
 Environment-Id: minimal
 Description: Basic functionality.
 Mandatory Groups:
   +core
 Optional Groups:
   +debugging

Nota 1: il gruppo di pacchetti principale contiene l’installazione più piccola possibile, detta anche installazione minima.
Nota 2: il gruppo di pacchetti di base(base), con l’aiuto del gruppo di pacchetti principale(core), consente di creare un’installazione di base, chiamata anche Infrastructure Server.

Per ottenere l’elenco dei pacchetti appartenenti a un gruppo di pacchetti (qui “Web Server“), digitare:

# yum group info "Web Server"
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
...
Group: Web Server
 Group-Id: web-server
 Description: Allows the system to act as a web server, and run Perl and Python web applications.
 Mandatory Packages:
   +httpd
 Default Packages:
   +crypto-utils
   +httpd-manual
   +mod_fcgid
   +mod_ssl
 Optional Packages:
   certmonger
   libmemcached
   memcached
   mod_auth_kerb
   mod_auth_mellon
   mod_nss
   mod_revocator
   mod_security
   mod_security_crs
   perl-CGI
   perl-CGI-Session
   python-memcached
   squid

Nota: il + indica quali pacchetti verranno installati.

Per installare un gruppo di pacchetti (qui “Web Server”), digitare:

# yum group install "Web Server"

Ora, se richiediamo alcune informazioni sul gruppo di pacchetti Web Server, otteniamo:

# yum group info "Web Server"
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
...
Group: Web Server
 Group-Id: web-server
 Description: Allows the system to act as a web server, and run Perl and Python web applications.
 Mandatory Packages:
   =httpd
 Default Packages:
   =crypto-utils
   =httpd-manual
   =mod_fcgid
   =mod_ssl
 Optional Packages:
   certmonger
   libmemcached
   memcached
   mod_auth_kerb
   mod_auth_mellon
   mod_nss
   mod_revocator
   mod_security
   mod_security_crs
   perl-CGI
   perl-CGI-Session
   python-memcached
   squid

Nota: il simbolo = indica i pacchetti installati come parte del gruppo di pacchetti.

Per installare tutti i pacchetti appartenenti a un gruppo di pacchetti (qui “Web Server”), digitare:

# yum --setopt=group_package_types=mandatory,default,optional groupinstall "Web Server"

Fonte:RHEL 7 System Administrator’s guide.

One thought on “Impara a gestire gruppi di pacchetti

  1. Pingback: Installare e aggiornare pacchetti software da Red Hat Network, da un repository remoto o dal file system locale - prometheusproject

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.