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"
Pingback: Installare e aggiornare pacchetti software da Red Hat Network, da un repository remoto o dal file system locale - prometheusproject