Come installare un Repository Locale con Yum/DNF sul server RHEL 8 utilizzando un DVD o un file ISO

Recentemente Red Hat ha rilasciato il suo più atteso sistema operativo “RHEL 8”, nel caso abbiate installato RHEL 8 Server sul vostro sistema e vogliate configurare un repository locale usando il DVD di installazione o il file ISO la seguente guida vi sarò di aiuto.

In Redhat 8 abbiamo due repository da configurare:

  • BaseOS
  • Application Stream

Il repository BaseOS ha tutti i pacchetti necessari per il sistema operativo mentre il repository Application Stream sono contenuti tutti i pacchetti relativi alle applicazioni, strumenti per sviluppatori e database ecc. Utilizzando il repository quest’ultimo, possiamo avere più versioni delle stesse applicazioni.

Passo: 1) Montare il file ISO RHEL 8/DVD di installazione


Per montare il file ISO RHEL 8 all’interno del tuo server RHEL 8 usa il comando di mount sottostante,

 

[root@linux-rhel8 ~]# mount -o loop rhel-8.0-x86_64-dvd.iso /opt/


Nota: presumo che tu abbia già copiato il file ISO di RHEL 8 all’interno del tuo sistema,

Nel caso in cui tu abbia il DVD di installazione di RHEL 8, quindi usa il comando di mount sottostante per montarlo,

 

[root@linux-rhel8 ~]# mount /dev/sr0  /opt


Passaggio: 2) Copia il file media.repo dalla directory montata a /etc/yum.repos.d/


Nel nostro caso il DVD di installazione RHEL 8 o il file ISO sono montati nella cartella / opt, usare il comando cp per copiare il file media.repo nella directory /etc/yum.repos.d/,

 

[root@linux-rhel8 ~]# cp -v /opt/media.repo /etc/yum.repos.d/rhel8.repo
'/opt/media.repo' -> '/etc/yum.repos.d/rhel8.repo'
[root@linux-rhel8 ~]#


Imposta l’autorizzazione “644” su “/etc/yum.repos.d/rhel8.repo”

 

[root@linux-rhel8 ~]# chmod 644 /etc/yum.repos.d/rhel8.repo
[root@linux-rhel8 ~]#


Passaggio: 3) Aggiungere le voci del repository nel file “/etc/yum.repos.d/rhel8.repo”


Per impostazione predefinita, il file rhel8.repo avrà il seguente contenuto,


Modifica il file rhel8.repo e aggiungi i seguenti contenuti,

 

[root@linux-rhel8 ~]# vi /etc/yum.repos.d/rhel8.repo
[InstallMedia-BaseOS]
name=Red Hat Enterprise Linux 8 - BaseOS
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=file:///opt/BaseOS/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[InstallMedia-AppStream]
name=Red Hat Enterprise Linux 8 - AppStream
metadata_expire=-1
gpgcheck=1
enabled=1
baseurl=file:///opt/AppStream/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


rhel8.repo dovrebbe apparire come sopra una volta aggiunto il contenuto, nel caso in cui abbiate installato il DVD o ISO di installazione su una cartella diversa, cambiate il nome della posizione e della cartella nella riga di base per entrambi i repository e il resto del parametro lasciato così com’è.

Passaggio: 4) Pulisci Yum/DNF e Subscription Manager Cache

 

Utilizzare il seguente comando per cancellare yum o dnf e cache del gestore di sottoscrizioni,

root@linux-rhel8 ~]# dnf clean all
[root@linux-rhel8 ~]# subscription-manager clean
All local data removed
[root@linux-rhel8 ~]#


Passaggio: 5) Verificare se Yum/DNF sta ricevendo pacchetti da Local Repo


Utilizzare il comando dnf o yum repolist per verificare se questi comandi stanno ricevendo pacchetti da repository locali o meno.

 

[root@linux-rhel8 ~]# dnf repolist
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Last metadata expiration check: 1:32:44 ago on Sat 11 May 2019 08:48:24 AM BST.
repo id                 repo name                                         status
InstallMedia-AppStream  Red Hat Enterprise Linux 8 - AppStream            4,672
InstallMedia-BaseOS     Red Hat Enterprise Linux 8 - BaseOS               1,658
[root@linuxtechi-rhel8 ~]#

 

Nota: è possibile utilizzare il comando dnf o yum, se si utilizza il comando yum, la sua richiesta viene reindirizzata a DNF stesso poiché in RHEL 8 yum si basa sul comando DNF.

Se hai notato attentamente l’output del comando sopra riportato, riceviamo un messaggio di avviso “This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register “, se vuoi sopprimere o impedire questo messaggio mentre esegui il comando dnf/yum, modifica il file” /etc/yum/pluginconf.d/subscription-manager.conf “, cambia il parametro” enabled= 1 “a” enabled= 0 ”

 

[root@linux-rhel8 ~]# vi /etc/yum/pluginconf.d/subscription-manager.conf
[main]
enabled=0

 

salva e esci dal file.


Passaggio: 6) Installazione dei pacchetti utilizzando DNF/Yum


Supponiamo di voler installare il server Web nginx e quindi di eseguire il comando dnf,

 

[root@linux-rhel8 ~]# dnf install nginx


Allo stesso modo se si desidera installare stack LEMP sul proprio sistema RHEL 8, utilizzare il seguente comando dnf,

 

[root@linux-rhel8 ~]# dnf install nginx mariadb php -y


Ciò conferma che abbiamo configurato correttamente il repository yum/dnf locale sul nostro server RHEL 8 utilizzando il DVD di installazione o il file ISO.