GNU/Linux >> Linux Esercitazione >  >> Linux

Creazione di un repository di pacchetti Redhat

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
Requisiti software e convenzioni della riga di comando Linux
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à.

  1. Inizia installando createrepo sul tuo sistema se non è già installato.
    # dnf install createrepo
    
  2. 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
    
  3. 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/
    
  4. 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
    
  5. 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
    
  6. 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).

  1. 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
    
  2. 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.


Linux
  1. Configura il repository di pacchetti Redhat della rete locale con vsftpd

  2. Installa i repository EPEL e IUS su CentOS e Red Hat

  3. Come escludere un repository specifico per l'aggiornamento di Yum in CentOS/Red Hat

  4. Gestione avanzata dei pacchetti in Kali Linux

  5. Come sapere da quale repository yum è stato installato un pacchetto?

Abilita i repository di gestione delle sottoscrizioni su Redhat 8 Linux

Come aggiungere un repository a Debian

Come aggiungere un repository a Debian

Aggiunta di un repository EPEL 8 a Red Hat Satellite 6

Esempi di comandi 12 RPM (Red Hat Package Manager).

Come abilitare Remi Repository su Fedora/Red Hat per installare LAMP Stack