Se il tuo server Red Hat non è connesso ai repository ufficiali di RHN, dovrai configurare il tuo repository privato che potrai utilizzare in seguito per installare i pacchetti. La procedura di creazione di un repository Red Hat Linux è piuttosto semplice. In questo articolo, ti mostreremo come creare un repository Red Hat di file locali e un repository HTTP remoto.
In questo tutorial imparerai:
- Come utilizzare il DVD ufficiale di Red Hat come repository
- Come creare un repository Red Hat di file locali
- Come creare un repository Red Hat HTTP remoto
Utilizzo di un repository Red Hat personalizzato, in questo caso da un DVD Red Hat
Categoria | Requisiti, convenzioni o versione del software utilizzata |
---|---|
Sistema | Cappello Rosso |
Software | createrepo |
Altro | Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando. |
Convenzioni | # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato |
Utilizzo del DVD ufficiale Red Hat come repository
Dopo l'installazione predefinita e senza aver registrato il tuo server nei repository RHN ufficiali, non avrai alcuna possibilità di installare nuovi pacchetti dal repository Red Hat poiché il tuo elenco di repository mostrerà 0 voci:
# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. repolist: 0
A questo punto la cosa più semplice da fare è allegare il DVD di installazione di Red Hat come repository locale. Per farlo, assicurati innanzitutto che il tuo DVD RHEL sia montato:
# mount | grep iso9660 /dev/sr0 on /media/RHEL_6.4 x86_64 Disc 1 type iso9660 (ro,nosuid,nodev,uhelper=udisks,uid=500,gid=500,iocharset=utf8,mode=0400,dmode=0500)
La directory che più ci interessa al momento è /media/RHEL_6.4 x86_64 Disc 1/repodata
poiché questa è la directory che contiene informazioni su tutti i pacchetti trovati su questo particolare disco DVD.
Quindi dobbiamo definire il nostro nuovo repository che punta a /media/RHEL_6.4 x86_64 Disc 1/
creando una voce di repository in /etc/yum.repos.d/
. Crea un nuovo file chiamato:/etc/yum.repos.d/RHEL_6.4_Disc.repo
usando vi editor e inserisci il seguente testo:
[RHEL_6.4_Disc] name=RHEL_6.4_x86_64_Disc baseurl="file:///media/RHEL_6.4 x86_64 Disc 1/" gpgcheck=0
Una volta creato il file, il tuo repository DVD Red Hat locale dovrebbe essere pronto per l'uso:
# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. repo id repo name status RHEL_6.4_Disc RHEL_6.4_x86_64_Disc 3,648 repolist: 3,648
Creazione di un repository Red Hat di file locali
Normalmente, avere un repository Red Hat DVD sarà sufficiente per iniziare; tuttavia, l'unico svantaggio è che non sei in grado di alterare il tuo repository in alcun modo e quindi non puoi inserire pacchetti nuovi/aggiornati in esso. Per risolvere questo problema, possiamo creare un repository di file locale che si trova da qualche parte nel filesystem. Per aiutarci con questo piano useremo un createrepo
utilità.
- Inizia installando
createrepo
sul tuo sistema se non è già installato.# dnf install createrepo
- A questo punto siamo pronti per creare il nostro repository di file locale Red Hat. Crea una nuova directory chiamata
/rhel_repo
:# mkdir /rhel_repo
- Quindi, copia tutti i pacchetti dal tuo DVD RHEL montato nella tua nuova directory:
# cp /media/RHEL_6.4\ x86_64\ Disc\ 1/Packages/* /rhel_repo/
- Al termine della copia, eseguire il comando createrepo con un singolo argomento che è il nome della nuova directory del repository locale:
# createrepo /rhel_repo/ Spawning worker 0 with 3648 pkgs Workers Finished Gathering worker results Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete
- Come ultimo passaggio, creeremo una nuova voce del repository yum modificando questo file:
# vi /etc/yum.repos.d/rhel_repo.repo
E inserendo questo testo:
[rhel_repo] name=RHEL_6.4_x86_64_Local baseurl="file:///rhel_repo/" gpgcheck=0
- Il tuo nuovo repository dovrebbe ora essere accessibile:
# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. rhel_repo | 2.9 kB 00:00 ... rhel_repo/primary_db | 367 kB 00:00 ... repo id repo name status RHEL_6.4_Disc RHEL_6.4_x86_64_Disc 3,648 rhel_repo RHEL_6.4_x86_64_Local 3,648
Creazione di un repository Red Hat HTTP remoto
Se hai più server Red Hat, potresti voler creare un unico repository Red Hat accessibile da tutti gli altri server sulla rete. Per questo avrai bisogno del server web Apache. Se hai bisogno di aiuto per configurare Apache, consulta la nostra guida sull'installazione di Apache su RHEL.
Per rendere accessibile il tuo nuovo repository tramite http, configura il tuo Apache con /rhel_repo/
directory creata nella sezione precedente come directory radice del documento o semplicemente copiare l'intera directory in:/var/www/html/
(root del documento predefinito).
- In primo luogo, crea una nuova voce del repository yum sul tuo sistema client creando un nuovo file di configurazione del repository:
# vi /etc/yum.repos.d/rhel_http_repo.repo
con il seguente contenuto, dove l'host è un indirizzo IP o un nome host del tuo server di repository Red Hat:
[rhel_repo_http] name=RHEL_6.4_x86_64_HTTP baseurl="http://myhost/rhel_repo/" gpgcheck=0
- Conferma la correttezza del tuo nuovo repository eseguendo
dnf repolist
command.# dnf repolist Loaded plugins: product-id, refresh-packagekit, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. repo id repo name status rhel_repo_http RHEL_6.4_x86_64_HTTP 3,648 repolist: 3,648
Pensieri conclusivi
La creazione del tuo repository di pacchetti ti offre più opzioni su come gestire i pacchetti sul tuo sistema Red Hat anche senza un abbonamento RHN a pagamento. Quando utilizzi un repository Red Hat HTTP remoto potresti anche voler configurare GPGCHECK come parte del tuo repository per assicurarti che nessun pacchetto sia stato manomesso prima della loro installazione.