Kamis, 04 Desember 2008

MEMBUAT SENDIRI LOCAL REPOSITORY untuk BASE paket Fedora

By Henry Saptono


Apakah itu YUM ?
------------------
Tools untuk manajemen software (Add, Remove dan Update software) di linux tergantung dari jenis paket
yang akan diinstall, umumnya pengguna linux menggunakan jenis paket binary RPM , maklumlah kebanyakan
distribusi linux menganut paket manajemen RPM (Redhat Package Manager) apalagi memang pengguna linux
lebih banyak mengenal distribusi RedHat dan Turunannya. Tool rpm digunakan untuk melakukan aktifitas
Add, Remove dan Update software RPM. Contoh jika Anda akan menginstal software maka perintah yang Anda
gunakan adalah sbb:
# rpm -ivh nama-software-versi.arch.rpm

Untuk menguninstal :
# rpm -e nama-software

Untuk mengupgrade:
# rpm -Uvh nama-software-versi.arch.rpm

catatan:
arch artinya arsitektur processor misal i386, i586, x86_64 dan lain-lain

Ada satu yang merepotkan dalam melakukan instalasi software binary rpm ketika menggunakan tool rpm,
yaitu ketika suatu software yang akan kita install ternyata membutuhkan beberapa atau banyak software
lainnya yang terlebih dulu harus diinstall , dalam bahasa kerennya ini adalah masalah "Dependency program".
nah jika Anda memaksakan tetap menggunakan tool rpm saja maka akan memakan waktu dan repot.
Untuk masalah dan kondisi seperti ini maka disediakanlah tool manajemen paket yang lebih advance yang
disebut dengan "yum".

# man yum
yum(8) yum(8)

NAME
yum - Yellowdog Updater Modified

SYNOPSIS
yum [options] [command] [package ...]

DESCRIPTION
yum is an interactive, automated update program which can be used
for maintaining systems
using rpm

command is one of:
* install package1 [package2] [...]
* update [package1] [package2] [...]
* check-update
* upgrade [package1] [package2] [...]
* remove | erase package1 [package2] [...]
* list [...]
* info [...]
* provides | whatprovides feature1 [feature2] [...]
* clean [ packages | headers | metadata | cache | dbcache | all ]
* makecache
* groupinstall group1 [group2] [...]
* groupupdate group1 [group2] [...]
* grouplist [hidden]
* groupremove group1 [group2] [...]
* groupinfo group1 [...]
* search string1 [string2] [...]
* shell [filename]
* resolvedep dep1 [dep2] [...]
* localinstall rpmfile1 [rpmfile2] [...]
* localupdate rpmfile1 [rpmfile2] [...]
* deplist package1 [package2] [...]

...........................................................................................

Bagaimana cara menginstall program/software menggunakan YUM ?
-------------------------------------------------------------------------

Sebagaimana terlihat dalam "man yum" , jika Anda akan menginstall suatu
software/program maka Anda dapat menjalankan perintah sbb:

# yum install heartbeat

Perintah tersebut akan menginstall paket software dengan nama software
heartbeat. Dan proses yang terjadi adalah yum akan melookup kedalam file
konfigurasi daftar server-server repositori paket-paket binary RPM. yang
umumnya file tersebut berlokasi di direktori /etc/yum.repos.d/, bisa jadi
didalam direktori tersebut terdapat banyak file yang mencerminkan daftar
repositori. Dan selanjutnya tool yum akan mengecek satu-perstau daftar paket
yang tersedia pada masing-masing repository yang aktif (enable=1). Tool yum
akan mengupdate database rpm pd local mesin dengan membaca database daftar paket pada
repository (dalam direktori "repodata"). Selanjutnya jika paket yang akan
diinstall terdapat pada repository maka software akan didownloade kemudian
diinstall.


Bagaimana cara menghapus/menguninstal program/software menggunakan YUM ?
-----------------------------------------------------------------------------------
Sebagaimana terlihat dalam "man yum" , jika Anda akan menguninstall suatu
software/program maka Anda dapat menjalankan perintah sbb:

# yum remove heartbeat


Lalu bagiamanakah membuat Yum Repositori sendiri ?
-------------------------------------------------------------------

Tentunya tool yum ini memang didesain untuk manajemen software
yang fleksibel karena lokasi (repository) sumber software bisa
disebuah komputer dalam jaringan (bahakan di Internet). Dan tentunya
akan lebih cepat proses instal software jika repositorynya adalah
komputer kita sendiri atau komputer dalam jaringan lokal kita sendiri.
Berikut ini langkah-langkah membuat repository paket BASE rpm linux Fedora
Core 4.

Skenario 1: Local repository pada PC sendiri
------------------------------------------------------------
- Buatlah direktori khusus untuk meletakkan paket-paket rpm base fedora
core 4 Anda, sbb:

# mkdir /opt/repo

- Masukkan CD ke-1 Fedora core 4 kedalam CDROM Drive pada PC Anda kemudian Copy seluruh
isi CD ke-1 Fedora Core 4 Anda kedalam direktori /opt/repo/

# cp -rf /media/cdrom/* /opt/repo/

- Lanjutkan seterusnya untuk CD ke-2, ke-3, dan ke-4.

- Jika pada sistem linux Anda belum terinstal tool "createrepo" maka
sebaiknya segera Anda install.

- Selanjutnya membuat "repodata" yang berisi file database paket rpm berupa
file xml,untuk itu lakukan perintah berikut ini:

# createrpo /opt/repo/

-Hasil dari perintah "createrepo akan membuatkan direktori "repodata"
didalam direktori /opt/repo/ , coba Anda buktikan dengan melihat kedalam
direktori /opt/repo/

-Nah sampai disini berarti kita sudah berhasil membuat repository paket RPM
fedora core 4 sendiri.


Lalu agar setiap kali ketika menginstal atau mengupgrade BASE paket/software
Fedora core 4 dengan menggunakan tool yum selalu mengakses/lookup ke repositori lokal
yang telah kita buat sendiri maka, Anda harus mengedit atau membuat file konfigurasi repository
sendiri ke dalam direktori /etc/yum.repos.d, Sebaiknya Anda cukup mengedit
file /etc/yum.repos.d/fedora.repo ,lalu rubahlah menjadi sbb:

-----------------------------------------------------------------------------------------------
[base]
name=Fedora Core $releasever - $basearch - Base
baseurl=file:///opt/repo/
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/
#mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
------------------------------------------------------------------------------------------------

Trik:
-----
Secara default konfigurasi repository yum menyertakan banyak daftar server repository
untuk berbagai section/kategori paket software seperti paket base, extra,
extra-development, update dan-lain-lain.
nah meskipun untuk paket Base nya Anda sudah menggunakan local repository
namun untuk paket-paket kategori extra, dan lain-lain masih mengakses/lookup
ke server-server repository fedora di internet. Nah jika Anda tidak terhubung
dengan jaringan internet maka ketika Anda menginstall software yang ada dalam
BASE paket di lokal repository maka yum tetap mencoba berulang-ulang untuk
melookup juga ke server-server repository di internet , ini akan menggangu
proses instalasi karena menjadi lama, untuk itu Anda dapat mengedit seluruh
file (kecuali file "fedora.repo") yang terdapat dalam direktori /etc/yum.repos.d/
dan mengedit parameter "enable=1" menjadi "enable=0" , yang tujuan agar yum
tidak menggunakan atau melookup repository lain kecuali ke local repository.


Skenario 2: Local repository pada PC Anda dapat diakses dari jaringan
----------------------------------------------------------------------------------

Jika Anda juga ingin menjadikan local repository Anda dapat diakses/lookup
oleh komputer Linux Fedora 4 lainnya dalam jaringan maka Komputer Anda perlu
diinstall/diaktifkan service http, ataupu FTP. Jika menggunakan HTTP service
maka Anda harus install Apache web server lalu arahkan default DocumentRoot
ke Lokasi direktori repository fedora Anda yaitu ke /opt/repo. Kemudian pada
setiap komputer linux fedora lainnya dalam jaringan harus diedit file
konfigurasi repository nya, sebaiknya edit saja file /etc/yum.repos.d/fedora.repo ,
lalu rubahlah menjadi sbb:

-----------------------------------------------------------------------------------------------
[base]
name=Fedora Core $releasever - $basearch - Base
baseurl=http://192.168.1.1/
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/$releasever/$basearch/os/
#mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-core-$releasever
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora
------------------------------------------------------------------------------------------------

catatan:
IP server repository local diasumsikan 192.168.1.1
Jika Anda mau Anda dapat mendisable repository lainnya, (enable=0) seperti pd
bagaian "Trik" diatas.


selamat mencoba.

Tidak ada komentar:

Posting Komentar