Come eseguire le operazioni preliminari in un server CentOS 7

Che si tratti di una macchina virtuale o di una macchina fisica, ogni volta che mi capita di installare un nuovo server, terminata l'installazione dal DVD o dall'immagine ISO, mi ritrovo sempre di fronte allo stesso problema: preparare l'ambiente di base per poter successivamente lavorare su un server CenttOS 7 in modo agevole e senza interruzioni per via della mancanza di questo o quel package.

Ho cercato e trovato un modo semplice per ovviare a questo, predisponendo un task che mi permettesse di fare tutte le attività preliminari per portare il sistema ad un livello operativo tale che mi permettesse di focalizzarmi sull'obbiettivo finale. Eliminando così tutte quelle distrazioni che qua e là interrompono le attività e distolgono l'attenzione.

Ne è venuta fuori una procedura semplice ed efficace, che ho deciso di condividere in questo post, affinché sia di aiuto a tutti coloro che, come me, preferiscono avere sempre a portata di mano la cassetta degli attrezzi da dove prendere lo strumento giusto senza perdere tempo a cercarlo e senza neanche distogliere lo sguardo da ciò che si sta facendo.

Il Contesto generale

Questa breve guida è riferita alla installazione di un server CentOS 7, ma può essere utile, con qualche ovvia differenza, anche per un server Debian (e suoi derivati). Questo soltanto perché mi trovo più spesso a contatto con sistemi basati su CentOS, quindi non voglio assolutamente qui entrare nella discussione di quale sia il server o il sistema operativo migliore.

Ciò che credo sia importante per lo scopo di questo post, è mettere in fila tutte le operazioni preliminari che ci renderanno il lavoro più semplice.

Anche se non credo sia necessario, va qui ricordato che tutte le operazioni descritte qui di seguito sono eseguite dalla console di sistema, o da remoto tramite una connessione ssh. Altrettanto ovvio che tutti i comandi dovranno essere eseguiti con i privilegi di root.

Definisco un Prompt personalizzato

Il prompt linux per il terminale non è solo il segnale che si può lanciare un comando; dovrebbe anche essere uno strumento utile a fornire quante più informazioni utili possibili a colpo d'occhio.

Quindi, faccio in modo che in quel piccolo brandello di testo, ci siano condensate le seguenti informazioni:

  1. Il login name: ossia lo username che ho utilizzato per il login;
  2. Il nome dell'host sul quale mi trovo: utilissimo se ho molte connessioni contemporanee dal mio client su diverse macchine.;
  3. La directory corrente: per capire "al-volo" in quale cartella mi trovo;
  4. Il numero di sequenza del prossimo comando;
  5. Il Colore del testo del prompt stesso: utilizzando colori diversi per distinguere l'account di root dagli altri account non privilegiati.

Definisco quindi il mio prompt con il comando export PS1='\[\e[31;1m\]\u@\[\e[31;1m\]\h:\W[\#]# \[\e[0m\]'.

# export PS1='\[\e[31;1m\]\u@\[\e[31;1m\]\h:\W[\#]# \[\e[0m\]'
root@centauro:~[7]#

Ovviamente lo aggiungo al file ~/.bashrc in modo che venga impostato automaticamente ad ogni nuovo login.

Assegno il nome host (Hostname)

Con le recenti distribuzioni Linux assegnare un nome host (hostname) al sistema è la cosa più semplice che si possa immaginare. Il comando hostnamectl è un eccellente tool per fare tutte le operazioni che servono sul nome host.

Invocato senza argomenti, ritorna molte utili informazioni sul sistema:

# hostnamectl
Static hostname: centauro
Icon name: computer-vm
Chassis: vm
Machine ID: b0adf2474c9302448393d03cf097f985
Boot ID: 007b4148734b404ca9821b307661318d
Virtualization: kvm
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-957.12.2.el7.x86_64
Architecture: x86-64

Questo comando può modificare alcuni parametri di setup "profondi" del sistema, ma per lo scopo di questo articolo, prenderò solo in considerazione la possibilità di cambiare il nome host del mio server.

Per cambiare/assegnare un nome al host utilizzare il comando hostnamectl set-hostname [NOMEHOST], dove "NOMEHOST è il nome che voglio assegnare al mio server, che deve rispettare le specifiche che puoi trovare a questo link (in inglese), oppure sfogliando le man pages: man 7 hostname (sempre in inglese).

Disabilito il Desktop Manager

Quando si lavora con i server, solitamente è cosa buona e giusta evitare di utilizzare il linux desktop manager; anzi, dovrebbe essere del tutto disattivato, se non addirittuta rimosso. Questo, non tanto per convinzioni da 'purista' o da fondamentalista Unix, quanto per il fatto che il Desktop manager (che sia Gnome, Mate, LXCE, o qualsiasi altro) di fatto rubano consistenti risorse di sistema. 

Quindi, per prima cosa, disabilito il desktop manager con il comando systemctl set-default multi-user.target, in modo che al prossimo avvio del sistema esso non verrà avviato.

# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.

Se poi per qualsiasi motivo avrò bisogno di riattivarlo, non mi resterà altro da fare che lanciare il comando systemctl set-default graphical.target.

# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

Ed avrò ripristinato all-occorrenza il Desktop Manager, al prossimo avvio del sistema.

Il lettore CD/DVD

Non sempre inserire il DVD nella macchina significa poterlo utilizzare subito; specialmente se è stata eseguite una installazione minimale del sistema operativo. Perciò, vale la pena preparare il sistema affinché montare un CD-ROM o un DVD sia una di quelle operazioni che non porti via neanche il tempo necessario a pensare a come fare.

Passo 1 - Preparo il mount point in una directory 'storicamente' nota: /mnt/cdrom.

Passo 2 - Aggiungo la seguente riga nel file : /etc/fstab.

/dev/sr0 /mnt/cdrom udf,iso9660 noauto,utf8 0 0

Ed il gioco è fatto.

Da questo momento in poi, posso montare il CD/DVD con il semplice comando: mount /mnt/cdrom,  oppure  : mount /dev/sr0.

# mount /mnt/cdrom
mount: /dev/sr0 is write-protected, mounting read-only

Che è proprio ciò che volevo ottenere.

Impostazioni preliminari di 'yum'

Che cosa è yum? Ebbene; yum, come recita la man page (comando: man yum) è il Yellowdog Updater Modified, in altre parole, è il gestore dei pacchetti della distribuzione GNU Linux CentOS. Lo strumento con il quale si possono installare, rimuovere ed aggiornare tutti i pacchetti software di questa distribuzione Linux.

Visto e considerato che ho già predisposto tutto il necessario per montare il CD/DVD, ora posso predisporre 'yum' a considerare questo come uno dei tanti repository di pacchetti.

Il punto è che ho un server appena installato, e magari posso avere ancora problemi nella configurazione di rete che non mi consente in questo momento di accedere ad internet. Quindi voglio che sia possibile poter installare fin da subito qualche utile pacchetto prima di procedere alla configurazione della rete.

Per istruire yum a considerare il CD/DVD come repository del software devo modificare il file /etc/yum.repos.d/CentOS-Media.repo, in modo che il suo contenuto sia simile a quello mostrato qui sotto.

baseurl=file:///mnt/cdrom/
     file:///media/CentOS/
     file:///media/cdrom/
     file:///media/cdrecorder/

Notare che ho evidenziato in rosso la parte che ho aggiunto io al file originale. Infatti CentOS assume che il CD/DVD sia automaticamente montato in almeno una delle directory standard del sistema; cosa che non possiamo dare per scontata, se abbiamo fatto, come già accennato, una installazione "minimale" del sistema.

Per poter sfruttare qualche utile funzionalità aggiuntiva di yum, a questo punto conviene installare subito il pacchetto software appropriato: yum-utils, con il seguente comando:

 yum --disablerepo=\* --enablerepo=c7-media install -y yum-utils 

Il quale installa il pacchetto yum-utils dal CD/DVD; in quanto, all'interno del comando c'è la direttiva che disabilita tutti i repository abilitando esclusivamente quello che fa riferimento al CD/DVD.

... E questo è il risultato, alquanto corposo, che si ottiene lanciando questo comando:

# yum --disablerepo=\* --enablerepo=c7-media install -y yum-utils
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* c7-media:
Resolving Dependencies
--> Running transaction check
---> Package yum-utils.noarch 0:1.1.31-34.el7 will be installed
--> Processing Dependency: python-kitchen for package: yum-utils-1.1.31-34.el7.noarch
--> Running transaction check
---> Package python-kitchen.noarch 0:1.1.1-5.el7 will be installed
--> Processing Dependency: python-chardet for package: python-kitchen-1.1.1-5.el7.noarch
--> Running transaction check
---> Package python-chardet.noarch 0:2.2.1-1.el7_1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================
Package Arch Version Repository Size
============================================================================================================================================
Installing:
yum-utils noarch 1.1.31-34.el7 c7-media 113 k
Installing for dependencies:
python-chardet noarch 2.2.1-1.el7_1 c7-media 227 k
python-kitchen noarch 1.1.1-5.el7 c7-media 267 k

Transaction Summary
============================================================================================================================================
Install 1 Package (+2 Dependent packages)

Total download size: 607 k
Installed size: 2.8 M
Downloading packages:
--------------------------------------------------------------------------------------------------------------------------------------------
Total 3.5 MB/s | 607 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : python-chardet-2.2.1-1.el7_1.noarch 1/3
Installing : python-kitchen-1.1.1-5.el7.noarch 2/3
Installing : yum-utils-1.1.31-34.el7.noarch 3/3
Verifying : python-kitchen-1.1.1-5.el7.noarch 1/3
Verifying : yum-utils-1.1.31-34.el7.noarch 2/3
Verifying : python-chardet-2.2.1-1.el7_1.noarch 3/3

Installed:
yum-utils.noarch 0:1.1.31-34.el7

Dependency Installed:
python-chardet.noarch 0:2.2.1-1.el7_1 python-kitchen.noarch 0:1.1.1-5.el7

Complete!

 

L'installazione di yum-utils,  rende finalmente disponibile alcune utility di yum come ad esempio il comando yum-config-manager, tramite il quale è possibile fare operazioni più complesse ed estese sui repository.

A tale proposito, utilizzeremo subito questo comando, proprio per abilitare il repository locale (quello relativo al CD/DVD), disabilitando temporaneamente tutti gli altri (quelli che risiedono in internet).

Ma prima di tutto vediamo quanti e quali repository sono al momento disponibili:

# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.tugraz.at
* c7-media:
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10,019
c7-media CentOS-7 - Media 3,723
repolist: 13,742

Bene! Sembra proprio che per il momento gli unici repository abilitati siano base e c7-media.

Per iniziare, disabilito tutti i repository con il comando yum-config-manager --disable \*.

# yum-config-manager --disable \*
Loaded plugins: fastestmirror
=========================================================== repo: C7.0.1406-base ===========================================================
[C7.0.1406-base]
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = http://vault.centos.org/7.0.1406/os/x86_64/
cache = 0
cachedir = /var/cache/yum/x86_64/7/C7.0.1406-base
check_config_file_age = True
compare_providers_priority = 80
cost = 1000
deltarpm_metadata_percentage = 100
deltarpm_percentage =
enabled = False
enablegroups = True
exclude =
failovermethod = priority
ftp_disable_epsv = False
gpgcadir = /var/lib/yum/repos/x86_64/7/C7.0.1406-base/gpgcadir
gpgcakey =
gpgcheck = True
gpgdir = /var/lib/yum/repos/x86_64/7/C7.0.1406-base/gpgdir
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
hdrdir = /var/cache/yum/x86_64/7/C7.0.1406-base/headers
http_caching = all
includepkgs =
ip_resolve =
keepalive = True
keepcache = False
mddownloadpolicy = sqlite
mdpolicy = group:small
mediaid =
metadata_expire = 21600
metadata_expire_filter = read-only:present
metalink =
minrate = 0
mirrorlist =
mirrorlist_expire = 86400
name = CentOS-7.0.1406 - Base
old_base_cache_dir =
password =
persistdir = /var/lib/yum/repos/x86_64/7/C7.0.1406-base
pkgdir = /var/cache/yum/x86_64/7/C7.0.1406-base/packages
proxy = False
proxy_dict =
proxy_password =
proxy_username =
repo_gpgcheck = False
retries = 10
skip_if_unavailable = False
ssl_check_cert_permissions = True
sslcacert =
sslclientcert =
sslclientkey =
sslverify = True
throttle = 0
timeout = 30.0
ui_id = C7.0.1406-base/x86_64
ui_repoid_vars = releasever,
   basearch
username =
..... [Listato omesso poiché molto lungo]...


... Ed abilito unicamente il repository c7-media con il comando yum-config-manager --enable c7-media.

# yum-config-manager --enable c7-media
Loaded plugins: fastestmirror
============================================================== repo: c7-media ==============================================================
[c7-media]
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7
baseurl = file:///mnt/cdrom/,
   file:///media/CentOS/,
   file:///media/cdrom/,
   file:///media/cdrecorder/
cache = 0
cachedir = /var/cache/yum/x86_64/7/c7-media
check_config_file_age = True
compare_providers_priority = 80
cost = 1000
deltarpm_metadata_percentage = 100
deltarpm_percentage =
enabled = 1
enablegroups = True
exclude =
failovermethod = priority
ftp_disable_epsv = False
gpgcadir = /var/lib/yum/repos/x86_64/7/c7-media/gpgcadir
gpgcakey =
gpgcheck = True
gpgdir = /var/lib/yum/repos/x86_64/7/c7-media/gpgdir
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
hdrdir = /var/cache/yum/x86_64/7/c7-media/headers
http_caching = all
includepkgs =
ip_resolve =
keepalive = True
keepcache = False
mddownloadpolicy = sqlite
mdpolicy = group:small
mediaid =
metadata_expire = 21600
metadata_expire_filter = read-only:present
metalink =
minrate = 0
mirrorlist =
mirrorlist_expire = 86400
name = CentOS-7 - Media
old_base_cache_dir =
password =
persistdir = /var/lib/yum/repos/x86_64/7/c7-media
pkgdir = /var/cache/yum/x86_64/7/c7-media/packages
proxy = False
proxy_dict =
proxy_password =
proxy_username =
repo_gpgcheck = False
retries = 10
skip_if_unavailable = False
ssl_check_cert_permissions = True
sslcacert =
sslclientcert =
sslclientkey =
sslverify = True
throttle = 0
timeout = 30.0
ui_id = c7-media
ui_repoid_vars = releasever,
   basearch
username =

Devo però ricordare che, quando avrò terminato, devo ripristinare i repository necessari; almeno quello del repository base per permettere gli aggiornamenti di sicurezza.

Considerazione su 'yum' per server senza accesso ad internet

Vale qui la pena di considerare alcuni aspetti che ruotano intorno all'aggiornamento del software installato nel sistema.

Il più delle volte ci si trova a lavorare con server che possono raggiungere i vari repository che si trovano in internet (dove effettivamente risiedono gli ultimi aggiornamenti software più recenti).

Tuttavia, a me personalmente capita spesso anche di dover lavorare con sistemi che, una volta installati, non possono più accedere ad internet per motivi di sicurezza. Questi sistemi sono condannati a restare isolati nella propria intranet per tutta la loro esistenza.

Ciò comporta che gli aggiornamenti possono essere fatti esclusivamente tramite CD/DVD.

È proprio per questo motivo che disabilito tutti i repository, lasciano esclusivamente quello relativo al CD/DVD così che possono essere aggiornati tramite questo device.

Aggiungo qualche pacchetto di uso comune

Prima di poter proseguire, installo alcuni pacchetti che mi saranno utili per poter procedere ai passi successivi.

Nella fattispecie, aggiuncerò i seguenti pacchetti, dal repository CD/DVD, utilizzando il solito comando yum.

  • bash-completion
  • net-tools
  • yum-utils
  • vim-enhanced
  • nmap

Questo è più o meno l'esito del comando sul mio terminale:

# yum install -y bash-completion net-tools yum-utils vim-enhanced nmap wget curl net-snmp
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.prometeus.net
 * c7-media:
c7-media                                                                                                             | 3.6 kB  00:00:00     
Package 1:bash-completion-2.1-6.el7.noarch already installed and latest version
Package net-tools-2.0-0.24.20131004git.el7.x86_64 already installed and latest version
Package curl-7.29.0-51.el7.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package net-snmp.x86_64 1:5.7.2-37.el7 will be installed
--> Processing Dependency: net-snmp-libs = 1:5.7.2-37.el7 for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: net-snmp-agent-libs = 1:5.7.2-37.el7 for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: perl(Term::ReadLine) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: perl(IO::File) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: perl(Getopt::Std) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: perl(File::Copy) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: perl(Data::Dumper) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: /usr/bin/perl for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: libsensors.so.4()(64bit) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: libperl.so()(64bit) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: libnetsnmptrapd.so.31()(64bit) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: libnetsnmpmibs.so.31()(64bit) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: libnetsnmpagent.so.31()(64bit) for package: 1:net-snmp-5.7.2-37.el7.x86_64
--> Processing Dependency: libnetsnmp.so.31()(64bit) for package: 1:net-snmp-5.7.2-37.el7.x86_64
---> Package nmap.x86_64 2:6.40-16.el7 will be installed
--> Processing Dependency: nmap-ncat = 2:6.40-16.el7 for package: 2:nmap-6.40-16.el7.x86_64
---> Package vim-enhanced.x86_64 2:7.4.160-5.el7 will be installed
--> Processing Dependency: vim-common = 2:7.4.160-5.el7 for package: 2:vim-enhanced-7.4.160-5.el7.x86_64
--> Processing Dependency: libgpm.so.2()(64bit) for package: 2:vim-enhanced-7.4.160-5.el7.x86_64
---> Package wget.x86_64 0:1.14-18.el7 will be installed
---> Package yum-utils.noarch 0:1.1.31-34.el7 will be updated
---> Package yum-utils.noarch 0:1.1.31-50.el7 will be an update
--> Processing Dependency: libxml2-python for package: yum-utils-1.1.31-50.el7.noarch

--> Running transaction check
---> Package gpm-libs.x86_64 0:1.20.7-5.el7 will be installed
---> Package libxml2-python.x86_64 0:2.9.1-6.el7_2.3 will be installed
---> Package lm_sensors-libs.x86_64 0:3.4.0-6.20160601gitf9185e5.el7 will be installed
---> Package net-snmp-agent-libs.x86_64 1:5.7.2-37.el7 will be installed
---> Package net-snmp-libs.x86_64 1:5.7.2-37.el7 will be installed
---> Package nmap-ncat.x86_64 2:6.40-16.el7 will be installed
---> Package perl.x86_64 4:5.16.3-293.el7 will be installed
--> Processing Dependency: perl(Socket) >= 1.3 for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Scalar::Util) >= 1.10 for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl-macros for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(threads::shared) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(threads) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(constant) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Time::Local) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Time::HiRes) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Storable) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Socket) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Scalar::Util) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Pod::Simple::XHTML) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Pod::Simple::Search) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Getopt::Long) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Filter::Util::Call) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(File::Temp) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(File::Spec::Unix) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(File::Spec::Functions) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(File::Spec) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(File::Path) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Exporter) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Cwd) for package: 4:perl-5.16.3-293.el7.x86_64
--> Processing Dependency: perl(Carp) for package: 4:perl-5.16.3-293.el7.x86_64
---> Package perl-Data-Dumper.x86_64 0:2.145-3.el7 will be installed
---> Package perl-libs.x86_64 4:5.16.3-293.el7 will be installed
---> Package vim-common.x86_64 2:7.4.160-5.el7 will be installed
--> Processing Dependency: vim-filesystem for package: 2:vim-common-7.4.160-5.el7.x86_64
--> Running transaction check
---> Package perl-Carp.noarch 0:1.26-244.el7 will be installed
---> Package perl-Exporter.noarch 0:5.68-3.el7 will be installed
---> Package perl-File-Path.noarch 0:2.09-2.el7 will be installed
---> Package perl-File-Temp.noarch 0:0.23.01-3.el7 will be installed
---> Package perl-Filter.x86_64 0:1.49-3.el7 will be installed
---> Package perl-Getopt-Long.noarch 0:2.40-3.el7 will be installed
--> Processing Dependency: perl(Pod::Usage) >= 1.14 for package: perl-Getopt-Long-2.40-3.el7.noarch
--> Processing Dependency: perl(Text::ParseWords) for package: perl-Getopt-Long-2.40-3.el7.noarch
---> Package perl-PathTools.x86_64 0:3.40-5.el7 will be installed
---> Package perl-Pod-Simple.noarch 1:3.28-4.el7 will be installed
--> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.28-4.el7.noarch
--> Processing Dependency: perl(Encode) for package: 1:perl-Pod-Simple-3.28-4.el7.noarch
---> Package perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 will be installed
---> Package perl-Socket.x86_64 0:2.010-4.el7 will be installed
---> Package perl-Storable.x86_64 0:2.45-3.el7 will be installed
---> Package perl-Time-HiRes.x86_64 4:1.9725-3.el7 will be installed
---> Package perl-Time-Local.noarch 0:1.2300-2.el7 will be installed
---> Package perl-constant.noarch 0:1.27-2.el7 will be installed
---> Package perl-macros.x86_64 4:5.16.3-293.el7 will be installed
---> Package perl-threads.x86_64 0:1.87-4.el7 will be installed
---> Package perl-threads-shared.x86_64 0:1.43-6.el7 will be installed
---> Package vim-filesystem.x86_64 2:7.4.160-5.el7 will be installed
--> Running transaction check
---> Package perl-Encode.x86_64 0:2.51-7.el7 will be installed
---> Package perl-Pod-Escapes.noarch 1:1.04-293.el7 will be installed
---> Package perl-Pod-Usage.noarch 0:1.63-3.el7 will be installed
--> Processing Dependency: perl(Pod::Text) >= 3.15 for package: perl-Pod-Usage-1.63-3.el7.noarch
--> Processing Dependency: perl-Pod-Perldoc for package: perl-Pod-Usage-1.63-3.el7.noarch
---> Package perl-Text-ParseWords.noarch 0:3.29-4.el7 will be installed
--> Running transaction check
---> Package perl-Pod-Perldoc.noarch 0:3.20-4.el7 will be installed
--> Processing Dependency: perl(parent) for package: perl-Pod-Perldoc-3.20-4.el7.noarch
--> Processing Dependency: perl(HTTP::Tiny) for package: perl-Pod-Perldoc-3.20-4.el7.noarch
---> Package perl-podlators.noarch 0:2.5.1-3.el7 will be installed
--> Running transaction check
---> Package perl-HTTP-Tiny.noarch 0:0.033-3.el7 will be installed
---> Package perl-parent.noarch 1:0.225-244.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================
 Package                                Arch                   Version                                           Repository            Size
============================================================================================================================================
Installing:
 net-snmp                               x86_64                 1:5.7.2-37.el7                                    base                 331 k
 nmap                                   x86_64                 2:6.40-16.el7                                     base                 3.9 M
 vim-enhanced                           x86_64                 2:7.4.160-5.el7                                   base                 1.0 M
 wget                                   x86_64                 1.14-18.el7                                       base                 547 k
Updating:
 yum-utils                              noarch                 1.1.31-50.el7                                     base                 121 k
Installing for dependencies:
 gpm-libs                               x86_64                 1.20.7-5.el7                                      base                  32 k
 libxml2-python                         x86_64                 2.9.1-6.el7_2.3                                   base                 247 k
 lm_sensors-libs                        x86_64                 3.4.0-6.20160601gitf9185e5.el7                    base                  42 k
 net-snmp-agent-libs                    x86_64                 1:5.7.2-37.el7                                    base                 705 k
 net-snmp-libs                          x86_64                 1:5.7.2-37.el7                                    base                 749 k
 nmap-ncat                              x86_64                 2:6.40-16.el7                                     base                 206 k
 perl                                   x86_64                 4:5.16.3-293.el7                                  base                 8.0 M
 perl-Carp                              noarch                 1.26-244.el7                                      base                  19 k
 perl-Data-Dumper                       x86_64                 2.145-3.el7                                       base                  47 k
 perl-Encode                            x86_64                 2.51-7.el7                                        base                 1.5 M
 perl-Exporter                          noarch                 5.68-3.el7                                        base                  28 k
 perl-File-Path                         noarch                 2.09-2.el7                                        base                  26 k
 perl-File-Temp                         noarch                 0.23.01-3.el7                                     base                  56 k
 perl-Filter                            x86_64                 1.49-3.el7                                        base                  76 k
 perl-Getopt-Long                       noarch                 2.40-3.el7                                        base                  56 k
 perl-HTTP-Tiny                         noarch                 0.033-3.el7                                       base                  38 k
 perl-PathTools                         x86_64                 3.40-5.el7                                        base                  82 k
 perl-Pod-Escapes                       noarch                 1:1.04-293.el7                                    base                  51 k
 perl-Pod-Perldoc                       noarch                 3.20-4.el7                                        base                  87 k
 perl-Pod-Simple                        noarch                 1:3.28-4.el7                                      base                 216 k
 perl-Pod-Usage                         noarch                 1.63-3.el7                                        base                  27 k
 perl-Scalar-List-Utils                 x86_64                 1.27-248.el7                                      base                  36 k
 perl-Socket                            x86_64                 2.010-4.el7                                       base                  49 k
 perl-Storable                          x86_64                 2.45-3.el7                                        base                  77 k
 perl-Text-ParseWords                   noarch                 3.29-4.el7                                        base                  14 k
 perl-Time-HiRes                        x86_64                 4:1.9725-3.el7                                    base                  45 k
 perl-Time-Local                        noarch                 1.2300-2.el7                                      base                  24 k
 perl-constant                          noarch                 1.27-2.el7                                        base                  19 k
 perl-libs                              x86_64                 4:5.16.3-293.el7                                  base                 688 k
 perl-macros                            x86_64                 4:5.16.3-293.el7                                  base                  44 k
 perl-parent                            noarch                 1:0.225-244.el7                                   base                  12 k
 perl-podlators                         noarch                 2.5.1-3.el7                                       base                 112 k
 perl-threads                           x86_64                 1.87-4.el7                                        base                  49 k
 perl-threads-shared                    x86_64                 1.43-6.el7                                        base                  39 k
 vim-common                             x86_64                 2:7.4.160-5.el7                                   base                 5.9 M
 vim-filesystem                         x86_64                 2:7.4.160-5.el7                                   base                  10 k

Transaction Summary
============================================================================================================================================
Install  4 Packages (+36 Dependent packages)
Upgrade  1 Package

Total download size: 25 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/41): gpm-libs-1.20.7-5.el7.x86_64.rpm                                                                             |  32 kB  00:00:01     
(2/41): libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm                                                                    | 247 kB  00:00:01     
(3/41): net-snmp-libs-5.7.2-37.el7.x86_64.rpm                                                                        | 749 kB  00:00:00     
(4/41): lm_sensors-libs-3.4.0-6.20160601gitf9185e5.el7.x86_64.rpm                                                    |  42 kB  00:00:01     
(5/41): net-snmp-5.7.2-37.el7.x86_64.rpm                                                                             | 331 kB  00:00:01     
(6/41): nmap-ncat-6.40-16.el7.x86_64.rpm                                                                             | 206 kB  00:00:00     
(7/41): perl-Data-Dumper-2.145-3.el7.x86_64.rpm                                                                      |  47 kB  00:00:00     
(8/41): nmap-6.40-16.el7.x86_64.rpm                                                                                  | 3.9 MB  00:00:02     
(9/41): perl-Exporter-5.68-3.el7.noarch.rpm                                                                          |  28 kB  00:00:00     
(10/41): perl-File-Path-2.09-2.el7.noarch.rpm                                                                        |  26 kB  00:00:00     
(11/41): perl-File-Temp-0.23.01-3.el7.noarch.rpm                                                                     |  56 kB  00:00:00     
(12/41): perl-Filter-1.49-3.el7.x86_64.rpm                                                                           |  76 kB  00:00:00     
(13/41): perl-Carp-1.26-244.el7.noarch.rpm                                                                           |  19 kB  00:00:02     
(14/41): perl-Getopt-Long-2.40-3.el7.noarch.rpm                                                                      |  56 kB  00:00:00     
(15/41): net-snmp-agent-libs-5.7.2-37.el7.x86_64.rpm                                                                 | 705 kB  00:00:04     
(16/41): perl-PathTools-3.40-5.el7.x86_64.rpm                                                                        |  82 kB  00:00:00     
(17/41): perl-Encode-2.51-7.el7.x86_64.rpm                                                                           | 1.5 MB  00:00:01     
(18/41): perl-Pod-Perldoc-3.20-4.el7.noarch.rpm                                                                      |  87 kB  00:00:00     
(19/41): perl-Pod-Usage-1.63-3.el7.noarch.rpm                                                                        |  27 kB  00:00:00     
(20/41): perl-Pod-Simple-3.28-4.el7.noarch.rpm                                                                       | 216 kB  00:00:00     
(21/41): perl-Scalar-List-Utils-1.27-248.el7.x86_64.rpm                                                              |  36 kB  00:00:00     
(22/41): perl-Socket-2.010-4.el7.x86_64.rpm                                                                          |  49 kB  00:00:00     
(23/41): perl-Text-ParseWords-3.29-4.el7.noarch.rpm                                                                  |  14 kB  00:00:00     
(24/41): perl-Storable-2.45-3.el7.x86_64.rpm                                                                         |  77 kB  00:00:00     
(25/41): perl-Time-HiRes-1.9725-3.el7.x86_64.rpm                                                                     |  45 kB  00:00:00     
(26/41): perl-Time-Local-1.2300-2.el7.noarch.rpm                                                                     |  24 kB  00:00:00     
(27/41): perl-constant-1.27-2.el7.noarch.rpm                                                                         |  19 kB  00:00:00     
(28/41): perl-libs-5.16.3-293.el7.x86_64.rpm                                                                         | 688 kB  00:00:00     
(29/41): perl-HTTP-Tiny-0.033-3.el7.noarch.rpm                                                                       |  38 kB  00:00:00     
(30/41): perl-macros-5.16.3-293.el7.x86_64.rpm                                                                       |  44 kB  00:00:00     
(31/41): perl-parent-0.225-244.el7.noarch.rpm                                                                        |  12 kB  00:00:00     
(32/41): perl-Pod-Escapes-1.04-293.el7.noarch.rpm                                                                    |  51 kB  00:00:01     
(33/41): perl-threads-shared-1.43-6.el7.x86_64.rpm                                                                   |  39 kB  00:00:00     
(34/41): perl-podlators-2.5.1-3.el7.noarch.rpm                                                                       | 112 kB  00:00:00     
(35/41): vim-enhanced-7.4.160-5.el7.x86_64.rpm                                                                       | 1.0 MB  00:00:00     
(36/41): vim-filesystem-7.4.160-5.el7.x86_64.rpm                                                                     |  10 kB  00:00:00     
(37/41): perl-threads-1.87-4.el7.x86_64.rpm                                                                          |  49 kB  00:00:00     
(38/41): wget-1.14-18.el7.x86_64.rpm                                                                                 | 547 kB  00:00:00     
(39/41): yum-utils-1.1.31-50.el7.noarch.rpm                                                                          | 121 kB  00:00:00     
(40/41): perl-5.16.3-293.el7.x86_64.rpm                                                                              | 8.0 MB  00:00:06     
(41/41): vim-common-7.4.160-5.el7.x86_64.rpm                                                                         | 5.9 MB  00:00:04     
--------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                       2.4 MB/s |  25 MB  00:00:10     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : lm_sensors-libs-3.4.0-6.20160601gitf9185e5.el7.x86_64                                                                   1/42
  Installing : 1:net-snmp-libs-5.7.2-37.el7.x86_64                                                                                     2/42
  Installing : 1:perl-parent-0.225-244.el7.noarch                                                                                      3/42
  Installing : perl-HTTP-Tiny-0.033-3.el7.noarch                                                                                       4/42
  Installing : perl-podlators-2.5.1-3.el7.noarch                                                                                       5/42
  Installing : perl-Pod-Perldoc-3.20-4.el7.noarch                                                                                      6/42
  Installing : 1:perl-Pod-Escapes-1.04-293.el7.noarch                                                                                  7/42
  Installing : perl-Encode-2.51-7.el7.x86_64                                                                                           8/42
  Installing : perl-Text-ParseWords-3.29-4.el7.noarch                                                                                  9/42
  Installing : perl-Pod-Usage-1.63-3.el7.noarch                                                                                       10/42
  Installing : 4:perl-macros-5.16.3-293.el7.x86_64                                                                                    11/42
  Installing : 4:perl-Time-HiRes-1.9725-3.el7.x86_64                                                                                  12/42
  Installing : perl-Exporter-5.68-3.el7.noarch                                                                                        13/42
  Installing : perl-constant-1.27-2.el7.noarch                                                                                        14/42
  Installing : perl-Time-Local-1.2300-2.el7.noarch                                                                                    15/42
  Installing : perl-Socket-2.010-4.el7.x86_64                                                                                         16/42
  Installing : perl-Carp-1.26-244.el7.noarch                                                                                          17/42
  Installing : perl-PathTools-3.40-5.el7.x86_64                                                                                       18/42
  Installing : perl-Scalar-List-Utils-1.27-248.el7.x86_64                                                                             19/42
  Installing : 1:perl-Pod-Simple-3.28-4.el7.noarch                                                                                    20/42
  Installing : perl-Storable-2.45-3.el7.x86_64                                                                                        21/42
  Installing : perl-File-Temp-0.23.01-3.el7.noarch                                                                                    22/42
  Installing : perl-File-Path-2.09-2.el7.noarch                                                                                       23/42
  Installing : perl-threads-shared-1.43-6.el7.x86_64                                                                                  24/42
  Installing : perl-threads-1.87-4.el7.x86_64                                                                                         25/42
  Installing : perl-Filter-1.49-3.el7.x86_64                                                                                          26/42
  Installing : 4:perl-libs-5.16.3-293.el7.x86_64                                                                                      27/42
  Installing : perl-Getopt-Long-2.40-3.el7.noarch                                                                                     28/42
  Installing : 4:perl-5.16.3-293.el7.x86_64                                                                                           29/42
  Installing : 1:net-snmp-agent-libs-5.7.2-37.el7.x86_64                                                                              30/42
  Installing : perl-Data-Dumper-2.145-3.el7.x86_64                                                                                    31/42
  Installing : 2:vim-filesystem-7.4.160-5.el7.x86_64                                                                                  32/42
  Installing : 2:vim-common-7.4.160-5.el7.x86_64                                                                                      33/42
  Installing : 2:nmap-ncat-6.40-16.el7.x86_64                                                                                         34/42
  Installing : libxml2-python-2.9.1-6.el7_2.3.x86_64                                                                                  35/42
  Installing : gpm-libs-1.20.7-5.el7.x86_64                                                                                           36/42
  Installing : 2:vim-enhanced-7.4.160-5.el7.x86_64                                                                                    37/42
  Updating   : yum-utils-1.1.31-50.el7.noarch                                                                                         38/42
  Installing : 2:nmap-6.40-16.el7.x86_64                                                                                              39/42
  Installing : 1:net-snmp-5.7.2-37.el7.x86_64                                                                                         40/42
  Installing : wget-1.14-18.el7.x86_64                                                                                                41/42
  Cleanup    : yum-utils-1.1.31-34.el7.noarch                                                                                         42/42
  Verifying  : perl-HTTP-Tiny-0.033-3.el7.noarch                                                                                       1/42
  Verifying  : 2:nmap-6.40-16.el7.x86_64                                                                                               2/42
  Verifying  : 2:vim-enhanced-7.4.160-5.el7.x86_64                                                                                     3/42
  Verifying  : perl-threads-shared-1.43-6.el7.x86_64                                                                                   4/42
  Verifying  : 4:perl-Time-HiRes-1.9725-3.el7.x86_64                                                                                   5/42
  Verifying  : perl-Exporter-5.68-3.el7.noarch                                                                                         6/42
  Verifying  : perl-constant-1.27-2.el7.noarch                                                                                         7/42
  Verifying  : perl-PathTools-3.40-5.el7.x86_64                                                                                        8/42
  Verifying  : 4:perl-macros-5.16.3-293.el7.x86_64                                                                                     9/42
  Verifying  : 1:perl-parent-0.225-244.el7.noarch                                                                                     10/42
  Verifying  : 1:net-snmp-libs-5.7.2-37.el7.x86_64                                                                                    11/42
  Verifying  : perl-File-Temp-0.23.01-3.el7.noarch                                                                                    12/42
  Verifying  : 1:perl-Pod-Simple-3.28-4.el7.noarch                                                                                    13/42
  Verifying  : perl-Time-Local-1.2300-2.el7.noarch                                                                                    14/42
  Verifying  : gpm-libs-1.20.7-5.el7.x86_64                                                                                           15/42
  Verifying  : 1:net-snmp-5.7.2-37.el7.x86_64                                                                                         16/42
  Verifying  : 1:perl-Pod-Escapes-1.04-293.el7.noarch                                                                                 17/42
  Verifying  : perl-Pod-Perldoc-3.20-4.el7.noarch                                                                                     18/42
  Verifying  : 2:vim-common-7.4.160-5.el7.x86_64                                                                                      19/42
  Verifying  : 1:net-snmp-agent-libs-5.7.2-37.el7.x86_64                                                                              20/42
  Verifying  : perl-Socket-2.010-4.el7.x86_64                                                                                         21/42
  Verifying  : perl-Carp-1.26-244.el7.noarch                                                                                          22/42
  Verifying  : perl-Data-Dumper-2.145-3.el7.x86_64                                                                                    23/42
  Verifying  : lm_sensors-libs-3.4.0-6.20160601gitf9185e5.el7.x86_64                                                                  24/42
  Verifying  : libxml2-python-2.9.1-6.el7_2.3.x86_64                                                                                  25/42
  Verifying  : wget-1.14-18.el7.x86_64                                                                                                26/42
  Verifying  : perl-Scalar-List-Utils-1.27-248.el7.x86_64                                                                             27/42
  Verifying  : 2:nmap-ncat-6.40-16.el7.x86_64                                                                                         28/42
  Verifying  : perl-Pod-Usage-1.63-3.el7.noarch                                                                                       29/42
  Verifying  : perl-Encode-2.51-7.el7.x86_64                                                                                          30/42
  Verifying  : perl-Storable-2.45-3.el7.x86_64                                                                                        31/42
  Verifying  : perl-podlators-2.5.1-3.el7.noarch                                                                                      32/42
  Verifying  : yum-utils-1.1.31-50.el7.noarch                                                                                         33/42
  Verifying  : 4:perl-5.16.3-293.el7.x86_64                                                                                           34/42
  Verifying  : perl-File-Path-2.09-2.el7.noarch                                                                                       35/42
  Verifying  : perl-threads-1.87-4.el7.x86_64                                                                                         36/42
  Verifying  : perl-Filter-1.49-3.el7.x86_64                                                                                          37/42
  Verifying  : perl-Getopt-Long-2.40-3.el7.noarch                                                                                     38/42
  Verifying  : perl-Text-ParseWords-3.29-4.el7.noarch                                                                                 39/42
  Verifying  : 4:perl-libs-5.16.3-293.el7.x86_64                                                                                      40/42
  Verifying  : 2:vim-filesystem-7.4.160-5.el7.x86_64                                                                                  41/42
  Verifying  : yum-utils-1.1.31-34.el7.noarch                                                                                         42/42

Installed:
  net-snmp.x86_64 1:5.7.2-37.el7      nmap.x86_64 2:6.40-16.el7      vim-enhanced.x86_64 2:7.4.160-5.el7      wget.x86_64 0:1.14-18.el7     

Dependency Installed:
  gpm-libs.x86_64 0:1.20.7-5.el7                                             libxml2-python.x86_64 0:2.9.1-6.el7_2.3                        
  lm_sensors-libs.x86_64 0:3.4.0-6.20160601gitf9185e5.el7                    net-snmp-agent-libs.x86_64 1:5.7.2-37.el7                      
  net-snmp-libs.x86_64 1:5.7.2-37.el7                                        nmap-ncat.x86_64 2:6.40-16.el7                                 
  perl.x86_64 4:5.16.3-293.el7                                               perl-Carp.noarch 0:1.26-244.el7                                
  perl-Data-Dumper.x86_64 0:2.145-3.el7                                      perl-Encode.x86_64 0:2.51-7.el7                                
  perl-Exporter.noarch 0:5.68-3.el7                                          perl-File-Path.noarch 0:2.09-2.el7                             
  perl-File-Temp.noarch 0:0.23.01-3.el7                                      perl-Filter.x86_64 0:1.49-3.el7                                
  perl-Getopt-Long.noarch 0:2.40-3.el7                                       perl-HTTP-Tiny.noarch 0:0.033-3.el7                            
  perl-PathTools.x86_64 0:3.40-5.el7                                         perl-Pod-Escapes.noarch 1:1.04-293.el7                         
  perl-Pod-Perldoc.noarch 0:3.20-4.el7                                       perl-Pod-Simple.noarch 1:3.28-4.el7                            
  perl-Pod-Usage.noarch 0:1.63-3.el7                                         perl-Scalar-List-Utils.x86_64 0:1.27-248.el7                   
  perl-Socket.x86_64 0:2.010-4.el7                                           perl-Storable.x86_64 0:2.45-3.el7                              
  perl-Text-ParseWords.noarch 0:3.29-4.el7                                   perl-Time-HiRes.x86_64 4:1.9725-3.el7                          
  perl-Time-Local.noarch 0:1.2300-2.el7                                      perl-constant.noarch 0:1.27-2.el7                              
  perl-libs.x86_64 4:5.16.3-293.el7                                          perl-macros.x86_64 4:5.16.3-293.el7                            
  perl-parent.noarch 1:0.225-244.el7                                         perl-podlators.noarch 0:2.5.1-3.el7                            
  perl-threads.x86_64 0:1.87-4.el7                                           perl-threads-shared.x86_64 0:1.43-6.el7                        
  vim-common.x86_64 2:7.4.160-5.el7                                          vim-filesystem.x86_64 2:7.4.160-5.el7                          

Updated:
  yum-utils.noarch 0:1.1.31-50.el7                                                                                                          

Complete!

A questo punto credo di avere tutto il materiale di base necessario.

Configuro la rete con 'ifconfig' e 'nmcli'

Ci sono molti modi per configurare la connessione di rete; quello preferito da molti è sicuramente il setup che si può fare tramite le app del Desktop Manager. Ma abbiamo già detto che non avremo nessun aiuto dal Desktop Manager, semplicemente perché non è installato. Quindi?

Ebbene, un sistema Linux "minimale" contiene almeno gli strumenti minimi indispensabili per le operazioni di base e tra questi c'è sicuramente NetworkManager.

NetworkManager è un tool che può fare più o mento tutto con le connessioni di rete; sia che si tratti di connessini ethernet, che WiFi, che VPN. Ma a me al momento interessa solo configurare la mia connessione Ethernet in modo che possa connettere il mio server almeno alla rete Intranet.

Per interagire con NetworkManager è disponibile una interfaccia a linea di comando nmcli, tramite la quale si può fare qualsiasi cosa con le connessioni di rete.

Voglio innanzi utto sapere se è in esecuzione con il comando systemctl status NetworkManager.

# systemctl status NetworkManager
● NetworkManager.service - Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since lun 2019-06-10 20:37:50 CEST; 1min 23s ago
Docs: man:NetworkManager(8)
Main PID: 4524 (NetworkManager)
CGroup: /system.slice/NetworkManager.service
├─4524 /usr/sbin/NetworkManager --no-daemon
└─4543 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eth0.pid -lf /var/lib/NetworkManager/dhclien...

giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.2586] device (eth0): state change: ip-config -> ip-check (reaso...ssume')
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.2604] device (eth0): state change: ip-check -> secondaries (rea...ssume')
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.2609] device (eth0): state change: secondaries -> activated (re...ssume')
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.2615] manager: NetworkManager state is now CONNECTED_LOCAL
giu 10 20:37:56 centauro dhclient[4543]: bound to 192.168.0.241 -- renewal in 2927 seconds.
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.2974] manager: NetworkManager state is now CONNECTED_SITE
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.2977] policy: set 'eth0' (eth0) as default for IPv4 routing and DNS
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.3136] device (eth0): Activation: successful, device activated.
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.3151] manager: NetworkManager state is now CONNECTED_GLOBAL
giu 10 20:37:56 centauro NetworkManager[4524]: [1560191876.3163] manager: startup complete
Hint: Some lines were ellipsized, use -l to show in full.

OK, questa è la conferma che è già in esecuzione!

Ovviamente, se così non fosse, utilizzo un paio di comandi per attivarlo subito:

# systemctl start NetworkManager

... E fare in modo che si avii ad ogni Boot del sistema.

# systemctl enable NetworkManager
Created symlink from /etc/systemd/system/dbus-org.freedesktop.NetworkManager.service to /usr/lib/systemd/system/NetworkManager.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/NetworkManager.service to /usr/lib/systemd/system/NetworkManager.service.
Created symlink from /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service to /usr/lib/systemd/system/NetworkManager-dispatcher.service.
Created symlink from /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service to /usr/lib/systemd/system/NetworkManager-wait-online.service.

Fin qui, tutto semplice.

Ora bisogna configurare la connessione Ethernet. Uso il comando ifconfig per vedere (installato con il pacchetto net-tools) per vedere lo stato attuale:

# ifconfig
eth0: flags=4163<up,broadcast,running,multicast> mtu 1500
inet 192.168.0.241 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::6093:33ff:fe22:c151 prefixlen 64 scopeid 0x20
ether 62:93:33:22:c1:51 txqueuelen 1000 (Ethernet)
RX packets 37353 bytes 36903755 (35.1 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 16687 bytes 1504809 (1.4 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<up,loopback,running> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Da questo ho la conferma che durante l'installazione del sistema è stata utilizzata l'interfaccia ethernet eth0, e che questa è configurata con in modo di acquisire un indirizzo IP della rete da un server DHCP.

Questo può essere determinato facilmente con il comando : grep -i BOOTPROTO /etc/sysconfig/network-scripts/ifcfg-eth0.

# grep BOOTPROTO /etc/sysconfig/network-scripts/ifcfg-eth0 
BOOTPROTO="dhcp"

Oppure utilizzo il comando: nmcli nmcli connection show eth0, che mi ritorna tutto (ma proprio tutti) i parametri dell'interfaccia, oltre ad altre preziose informazioni sull'utilizzo.

Per impostare un indirizo IP specifico della connessione ethernet eth0, il Dns la rotta predefinita (default route). utilizzo i seguenti comandi nmcli:

# nmcli connection modify eth0 connection.autoconnect yes
# nmcli connection modify eth0 ipv4.addresses 192.168.0.242
# nmcli connection modify eth0 ipv4.dns "192.168.0.253 8.8.8.8 8.8.4.4"

Infine attivo i parametri appena definiti per il profilo di questa connessione:

# nmcli con down eth0 ; nmcli con up eth0
Connection 'eth0' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/2)

Aggiungo repository 'Epel'

Osesei definirlo "Quel magico repository di cui non si può fare a meno".

EPEL (Extra Packages for Enterprise Linux) è un repository open source gratuito, alimentato dalla comunità e gestito e mantenuto dal Team di Fedora che fornisce pacchetti software di qualità per le distribuzioni Linux basate su RHEL (Red Hat Enterprise Linux), CentOS e Scientific Linux. Il progetto Epel non fa parte di RHEL/CentOS ma è espressamente pensato per fornire un gran numero di pacchetti software per queste distribuzioni.

Aggiungere il repository Epel di fatto si riduce alla installazione un pacchetto software come quasiasi altro; soltanto che, non facendo parte della distribuzione CentOS appena installata, dovremo prima scaricarlo dalla rete internet con il comando wget.

# wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
--2019-06-10 18:47:34-- http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Resolving dl.fedoraproject.org (dl.fedoraproject.org)... 209.132.181.23, 209.132.181.24, 209.132.181.25
Connecting to dl.fedoraproject.org (dl.fedoraproject.org)|209.132.181.23|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 15080 (15K) [application/x-rpm]
Saving to: ‘epel-release-latest-7.noarch.rpm’

100%[==================================================================================================>] 15,080 82.6KB/s in 0.2s

2019-06-10 18:47:40 (82.6 KB/s) - ‘epel-release-latest-7.noarch.rpm’ saved [15080/15080]

Ora posso installare il repository con yum come un qualsiasi pacchetto software

# yum localinstall -y epel-release-latest-7.noarch.rpm 
Loaded plugins: fastestmirror
Examining epel-release-latest-7.noarch.rpm: epel-release-7-11.noarch
Marking epel-release-latest-7.noarch.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package epel-release.noarch 0:7-11 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

============================================================================================================================================
Package Arch Version Repository Size
============================================================================================================================================
Installing:
epel-release noarch 7-11 /epel-release-latest-7.noarch 24 k

Transaction Summary
============================================================================================================================================
Install 1 Package

Total size: 24 k
Installed size: 24 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : epel-release-7-11.noarch 1/1
Verifying : epel-release-7-11.noarch 1/1

Installed:
epel-release.noarch 0:7-11

Complete!

 

Notare che ho utilizzato l'argomento localinstall, poiché sto installando direttamente da un file rpm locale.

Preparo qualche utilissimo 'alias' per i comandi semplificati

Per semplificare alcuni comandi, normalmente utilizzo degli alias della bash (l'interprete dei comandi predefinito di Linux). Questo perché alcuni comandi possono essere complessi ed avere un discreto numero di argomenti non sempre facili da ricordare.

Gli alias possono essere definiti 'on-the-fly' (al volo) nel proprio ambiente con il comando alias. Tuttavia questo è un modo poco efficace, in quanto vengono perduti alla disconnessione dalla bashad ed a ogni nuovo login dovremo ridefinirli.

Un efficace modo per avere i miei alias sempre disponibili consiste nel trascriverli nel file ~/.bashrc, ossia, nel file che viene eseguito ad ogni nuovo login.

Alcuni degli alias che amo portare sempre con me ed averli a portata di mano in qualsiasi momento, sono quelli riportati qui sotto ed aggiunti a quelli già esistenti nel file ~/.bashrc.

# Additional useful aliases by dpm in ~/.bashrc
alias ll='ls -o --color=never'
alias mv='mv -i'
alias cp='cp -i'
alias rm='rm -i'
alias less='less -Sr'
alias scp='scp -p'
alias ssh='ssh -2 -C'
alias yum='yum --disablerepo=\* --enablerepo=c7-media'
alias lesscon='less -S /var/log/messages'
alias tailcon='tail -f /var/log/messages'
alias tailjournal='journalctl -f'
alias tailsql='tail -f /var/log/mariadb/mariadb.log'
alias tailsys='journalctl -f'
alias dmesg='dmesg -wH -T'
alias vi=vim

Per aggiungere li alias descritti qui sopra, utilizzare l'editor di testi preferito: vi, nano, o qualsiasi altro editor di testi che non inserisca caratteri di formattazione all'interno del file.

Conclusioni

Il sistema è ora pronto per la fase successiva: ossia per installare tutti i servizi che questo server dovrà erogare.

Può sembrare banale, ma portare un server al questo livello è assai utile; soprattutto se questa procedura viene ripetuta in modo molto simile per tutti i server che si installano. In questo modo posso essere sicuro che un server che ho installato io avrà sempre tutto il necessario a portata di mano.

Mi auguro che questo post sia stato utile per coloro che, come me, si ritrovano a dover installare ed attivare molti server: poter disporre di un buon punto di partenza collaudato può essere un bun inizio.

E si sa: "Chi ben comincia è già a metà dell'opera".

Lascia un commento

Tutti i commenti dovranno essere verificati ed approvati dal webmaster, prima di essere pubblicati

 

Quote of the Day

Non sopporterei di morire due volte. È una cosa così noiosa.

Richard Feynman

Chi è online

Abbiamo 146 visitatori e nessun utente online

Newsletter

Per essere sempre aggiornato sulle ultime novità del sito.
Go to top