Home > Administrasi Linux > Repo Yum Lokal Fedora 8

Repo Yum Lokal Fedora 8


Tutorial ini memperlihatkan cara membuat repository lokal menggunakan Linux Fedora 8 yang berikutnya dapat digunakan oleh semua worsktation yang tersambung ke dalam jaringan. Ini cocok diterapkan pada suatu LAN yang biasanya menyediakan kecepatan tinggi sampai 100 Mbps atau 1 GBps. Administrator cukup mengupate satu server repo ini dan seluruh workstation dapat memanfaatkan update tersebut. Lebih hemat bandwidth bukan? Daripada setiap workstation melakukan update langsung ke Internet.

Oh ya, tutorial ini tidak menjamin apa yang anda coba terapkan berhasil dengan baik. Kemampuan dan pengalaman troubleshooting masih sangat diperlukan.

1. Contoh kasus
Dalam tutorial ini digunakan host bernama server1.example.com dengan IP address 192.168.0.100. Seting ini mungkin berbeda dengan kondisi di tempat anda, silakan disesuaikan.

Kita akan membuat repository yang dapat diakses melalui http; root dokumen default dari web server Apache pada Linux Fedora adalah /var/www/html, sehingga kita akan membuat repository di dalam direktori /var/www/html/yum. Jika anda menggunakan virtual host, vhost, silakan atur path tersebut secara tepat.

2. Menginstal Apache
Apache dapat diinstal sekaligus dengan Instalasi sistem Linux. Jika belum, lakukan dengan perintah berikut:

yum install httpd

Kemudian buat agar system startup menghubungi Apache sehingga Apache dimulai secara otomatis saay sistem boot:

chkconfig –levels 235 httpd on

Sekarang, jalankan Apache secara manual, tidak perlu restart:

/etc/init.d/httpd start

3. Membangun Repository
Pertama, instal tool bernama createrepo yang akan digunakan nanti:

yum install createrepo

Kita akan menempatkan paket-paket RPM dasar Fedora 8 untuk i386 dalam /var/www/html/yum/base/8/i386 dan paket-paket update dalam /var/www/html/yum/updates /8/i386, sehingga kita membuat direktori-direktori baru ini.:

mkdir -p /var/www/html/yum/base/8/i386
mkdir -p /var/www/html/yum/updates/8/i386

Sekarang, silakan isi direktori /var/www/html/yum/base/8/i386. Cara paling mudah adalah memanfaatkan DVD Fedora 8 yang digunakan untuk instalasi, dapat didownload di: http://mirrors.fedoraproject.org/mirrorlists/publiclist/Fedora/8, mount DVD tersebut, salin paket RPM kee /var/www/html/yum/base/8/i386:

mount /dev/cdrom /mnt
cd /mnt/Packages
cp -v * /var/www/html/yum/base/8/i386
cd /
umount /mnt

DVD tersebut hanya berisi paket-paket dasar. Jika anda ingin mempunyai semua paket Fedora 8 dalam direktori /var/www/html/yum/base/8/i386, silakan download paket (menggunakan rsync) dari folder Everything pada suatu mirror Fedora 8. Silakan akses http://mirrors.fedoraproject.org/mirrorlists/publiclist/Fedora/8, untuk mendapatkan dafatr mirror yang menawarkan rsync, dan download paket sebagai berikut (ini menghabiskan banyak waktu, so sabarlah):

rsync -avrt rsync://ftp-stud.hs-esslingen.de/fedora/linux/releases/8 \
/Everything/i386/os/Packages/ /var/www/html/yum/base/8/i386

Pastikan kita menggunakan semua slash (/) seperti di atas ā€“ harus ditulis rsync://ftp-stud.hs-esslingen.de/fedora/linux/releases/8/Everything/i386/os/Packages/, bukan rsync://ftp-stud.hs-esslingen.de/fedora/linux/releases/8/Everything/i386/os/Packages.
Kemudian jalankan perintah createrepo:

createrepo /var/www/html/yum/base/8/i386

Ini akan membuat direktori repodata di dalam direktpri /var/www/html/yum/base/8/i386. Isi direktori tersebut akan sebagai berikut:

ls -l /var/www/html/yum/base/8/i386/repodata/

[root@server1 /]# ls -l /var/www/html/yum/base/8/i386/repodata/
total 9268
-rw-r–r– 1 root root 2227275 2007-12-18 21:11 filelists.xml.gz
-rw-r–r– 1 root root 6487453 2007-12-18 21:11 other.xml.gz
-rw-r–r– 1 root root 747714 2007-12-18 21:11 primary.xml.gz
-rw-r–r– 1 root root 951 2007-12-18 21:11 repomd.xml
[root@server1 /]#

Sekarang adalah mengisi direktori updates /var/www/html/yum/updates/8/i386. Silakan akses http://mirrors.fedoraproject.org/mirrorlists/publiclist/Fedora/8 sekali lagi, temukan mirror yang menawarkan rsync, dan download paket sebagai berikut:

rsync -avrt rsync://ftp-stud.hs-esslingen.de/fedora/linux/updates/8/i386/ \
–exclude=debug/ /var/www/html/yum/updates/8/i386

Sekali lagi, pastikan anda menggunakan slash (/) seperti di atas!
Aar mirror lokal mendownload update terakhir secara otomais dari sejak on, kita dapat membuat suatu cron job. Sebagai contoh, sistem akan mendownload update terbaru setiap hari ke-2 (selasa?) pada jam 04:23h, kita memasukkan cron job berikut:

crontab -e23 4 */2 * * /usr/bin/rsync \
-avrt rsync://ftp-stud.hs-esslingen.de/fedora/linux/updates/8/i386/ \
–exclude=debug/ /var/www/html/yum/updates/8/i386

Mirror yum lokal hasil karya sendiri sudah siap digunakan.

4. Konfigurasi Client
Agar sistem Fedora 8 kita menggunakan repository yum lokal yang baru, lakukan perubahan terhadap /etc/yum.conf pada setiap sistem Fedora 8 (pertama, lakukan pada server yang dijadikan mirror, bukahkah juga mengunakan Fedora 8?). Buka file /etc/yum.conf:

vi /etc/yum.conf

Temukan dua baris berikut

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

Dan tambahkan baris-baris berikut, di bawahnya:

[base-local]
name=Fedora $releasever – $basearch
failovermethod=priority
baseurl=http://192.168.0.100/yum/base/$releasever/$basearch
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=0

[updates-local]
name=Fedora $releasever – $basearch – Updates
failovermethod=priority
baseurl=http://192.168.0.100/yum/updates/$releasever/$basearch/
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
enabled=1
gpgcheck=0

Isi lengkap dari file ini menjadi:

[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
metadata_expire=1800
installonly_limit=2

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d

[base-local]
name=Fedora $releasever – $basearch
failovermethod=priority
baseurl=http://192.168.0.100/yum/base/$releasever/$basearch
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
enabled=1
gpgcheck=0

[updates-local]
name=Fedora $releasever – $basearch – Updates
failovermethod=priority
baseurl=http://192.168.0.100/yum/updates/$releasever/$basearch/
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
enabled=1
gpgcheck=0

Sekarang, kapanpun anda menggunakan yum dan repository lokal dapat melayani paket yang diminta, maka paket-paket akan didownload dan diinstal dari repository yum lokal tersebut.

5. Link
Fedora: http://fedoraproject.org

  1. tika
    19 December 2008 at 8:38 am

    thx

  2. ahmad zakyi
    1 June 2009 at 10:20 am

    mass klo di CentOS 5.3 gmn konfigurasi server repo n client reponya sama aja y file CentOS-Base.repo-nya di edti truus yg di repo.conf juga d edit ya mas,,,??? pleas bgt pencerahannya ya mas….

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: