Cara Membuat Repositori HTTP Yum/DNF Lokal di RHEL 8


Repositori perangkat lunak atau “repo” adalah lokasi pusat untuk menyimpan dan memelihara paket perangkat lunak RPM untuk distribusi Redhat Linux, tempat pengguna dapat mengunduh dan menginstal paket di server Linux mereka.

Repositori umumnya disimpan di jaringan publik, yang dapat diakses oleh banyak pengguna di internet. Namun, Anda dapat membuat repositori lokal Anda sendiri di server Anda dan mengaksesnya sebagai pengguna tunggal atau mengizinkan akses ke mesin lain di LAN lokal Anda (Jaringan Area Lokal) menggunakan server web HTTP.

Keuntungan membuat repositori lokal adalah Anda tidak memerlukan koneksi internet untuk menginstal paket atau pembaruan perangkat lunak.

YUM (Yellowdog Updater Modified) atau DNF (Dandified YUM) adalah utilitas manajemen paket perangkat lunak yang banyak digunakan untuk sistem Linux berbasis RPM (RedHat Package Manager), yang memudahkan instalasi perangkat lunak di Red Hat/CentOS Linux.

Dalam artikel ini, kami akan menjelaskan cara menyiapkan repositori YUM/DNF lokal di RHEL 8 menggunakan DVD instalasi atau file ISO. Kami juga akan menunjukkan kepada Anda cara menemukan dan menginstal paket perangkat lunak pada mesin klien RHEL 8 menggunakan server Nginx HTTP.

Lingkungan Pengujian Kami

Local Repository Server: RHEL 8 [192.168.0.106]
Local Client Machine: RHEL 8 [192.168.0.200]

Langkah 1: Instal Server Web Nginx

1. Pertama, instal server Nginx HTTP menggunakan manajer paket DNF sebagai berikut.

dnf install nginx

2. Setelah Nginx diinstal, Anda dapat memulai, mengaktifkan layanan untuk memulai otomatis saat boot, dan memverifikasi status menggunakan perintah berikut.

systemctl start nginx
systemctl enable nginx
systemctl status nginx

3. Selanjutnya, Anda perlu membuka port Nginx 80 dan 443 di firewall Anda.

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-service=https
firewall-cmd --reload

4. Sekarang Anda dapat memverifikasi bahwa server Nginx Anda aktif dan berjalan dengan membuka URL berikut di browser web Anda, halaman web default Nginx akan ditampilkan.

http://SERVER_DOMAIN_NAME_OR_IP

Langkah 2: Memasang File DVD/ISO Instalasi RHEL 8

5. Buat titik pemasangan repositori lokal di bawah direktori akar dokumen Nginx /var/www/html/ dan pasang RHEL 8 yang diunduh Gambar DVD ISO di direktori /mnt.

mkdir /var/www/html/local_repo
mount -o loop rhel-8.0-x86_64-dvd.iso /mnt  [Mount Download ISO File]
mount /dev/cdrom /mnt                       [Mount DVD ISO File from DVD ROM]

6. Selanjutnya, salin file ISO secara lokal di direktori /var/www/html/local_repo dan verifikasi isinya menggunakan perintah ls.

cd /mnt
tar cvf - . | (cd /var/www/html/local_repo/; tar xvf -)
ls -l /var/www/html/local_repo/

Langkah 3: Mengonfigurasi Repositori Lokal

7. Sekarang saatnya mengkonfigurasi repositori lokal. Anda perlu membuat file konfigurasi repositori lokal di direktori /etc/yum.repos.d/ dan mengatur izin yang sesuai pada file seperti yang ditunjukkan.

touch /etc/yum.repos.d/local-rhel8.repo
chmod  u+rw,g+r,o+r  /etc/yum.repos.d/local-rhel8.

8. Kemudian buka file untuk diedit menggunakan editor teks baris perintah favorit Anda.

vim /etc/yum.repos.d/local.repo

9. Salin dan tempel konten berikut ke dalam file.

[LocalRepo_BaseOS]
name=LocalRepo_BaseOS
metadata_expire=-1
enabled=1
gpgcheck=1
baseurl=file:///var/www/html/local_repo/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[LocalRepo_AppStream]
name=LocalRepo_AppStream
metadata_expire=-1
enabled=1
gpgcheck=1
baseurl=file:///var/www/html/local_repo/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

Simpan perubahan dan keluar dari file.

10. Sekarang Anda perlu menginstal paket yang diperlukan untuk membuat, mengonfigurasi, dan mengelola repositori lokal Anda dengan menjalankan perintah berikut.

yum install createrepo  yum-utils
createrepo /var/www/html/local_repo/

Langkah 4: Menguji Repositori Lokal

11. Pada langkah ini, Anda harus menjalankan pembersihan file sementara yang disimpan untuk repositori dengan menggunakan perintah berikut.

yum clean all
OR
dnf clean all

12. Kemudian verifikasi bahwa repositori yang dibuat muncul dalam daftar repositori yang diaktifkan.

dnf repolist
OR
dnf repolist  -v  #shows more detailed information 

13. Sekarang coba instal paket dari repositori lokal, misalnya instal alat baris perintah Git sebagai berikut:

dnf install git

Melihat output dari perintah di atas, paket git sedang diinstal dari repositori LocalRepo_AppStream seperti yang ditunjukkan pada tangkapan layar. Ini membuktikan bahwa repositori lokal diaktifkan dan berfungsi dengan baik.

Langkah 5: Siapkan Repositori Yum Lokal di Mesin Klien

14. Sekarang di mesin klien RHEL 8 Anda, tambahkan repo lokal Anda ke konfigurasi YUM.

vi /etc/yum.repos.d/local-rhel8.repo 

Salin dan tempel konfigurasi di bawah ini ke dalam file. Pastikan untuk mengganti baseurl dengan alamat IP server atau domain Anda.

[LocalRepo_BaseOS]
name=LocalRepo_BaseOS
enabled=1
gpgcheck=0
baseurl=http://192.168.0.106

[LocalRepo_AppStream]
name=LocalRepo_AppStream
enabled=1
gpgcheck=0
baseurl=http://192.168.0.106

Simpan file dan mulai gunakan mirror YUM lokal Anda.

15. Selanjutnya, jalankan perintah berikut untuk melihat repo lokal Anda dalam daftar repo YUM yang tersedia, di mesin klien.

dnf repolist

Itu saja! Pada artikel ini, kami telah menunjukkan cara membuat repositori YUM/DNF lokal di RHEL 8, menggunakan DVD instalasi atau file ISO. Jangan lupa menghubungi kami melalui formulir umpan balik di bawah untuk pertanyaan atau komentar apa pun.