Repository Server (Fedora 17)
Repository Server
Repository Server adalah server yang
menyimpan berbagai aplikasi maupun update aplikasi dari sistem operasi.
Ini memungkinkan sebuah sistem operasi melakukan instalasi sistem itu
sendiri, penambahan aplikasi maupun update aplikasi/system tanpa bantuan
media CD atau DVD. Sistem operasi akan mendownload file-file source
dari software yang dibutuhkan dari repository server.
Pada sistem Linux, repository server
sangat membantu, terutama untuk instalasi aplikasi yang membutuhkan
dependency dengan paket aplikasi lainnya. Repository server akan secara
otomatis memberikan semua paket-paket aplikasi yang dibutuhkan selama
proses instalasi.
Di Internet, Repository Server untuk
sistem Linux disebar diberbagai lokasi negara. Ini ditujukan untuk
kecepatan akses dan pemerataan beban (load) dan backup server
(mirroring). Terkadang Repository Server juga dibangun pada jaringan
lokal, sehingga akan menghemat penggunaan bandwidth Internet. Sistem
Linux tidak akan lagi mencari file instalasi pada Repository Server di
Internet. Repository Server pada jaringan lokal juga dapat
dikonfigurasikan untuk selalu meng-update paket-paket software yang
dimilikinya dengan paket yang ada pada Repository Server induk yang ada
di Internet.
Konfigurasi Repository Server
Repository Server yang akan dibangun
akan menggunakan interface web, pastikan service httpd telah terinstall
dan berjalan dengan baik. Perintah yang dapat digunakan adalah sebagai
berikut.
[root@repo ~]# rpm -q httpd
httpd-2.2.22-4.fc17.i686
Instalasi aplikasi createrepo dengan perintah sebagai berikut :
[root@repo ~]# yum install createrepo
[root@repo ~]# rpm -q createrepo
createrepo-0.9.9-11.fc17.noarch
Selanjutnya, membuat direktori pada /var/www/html
untuk menempatkan software-software yang akan dimiliki oleh Repository
Server. Perintah yang dapat digunakan adalah sebagai berikut :
[root@repo ~]# mkdir /var/www/html/yum/base/17/i386 [root@repo ~]# mkdir /var/www/html/yum/updates/17/i386
Copy semua paket aplikasi yang ada di DVD Fedora ke dalam direktori /var/www/html/yum/base/17/i386. Perintah yang dapat digunakan adalah sebagai berikut.
[root@repo ~]# mount /dev/cdrom /mnt[root@repo ~]# cd /mnt/Packages
[root@repo ~]# cp -avr * /var/www/html/yum/base/17/i386
[root@repo ~]# cd /
[root@repo ~]# umount /mnt
Selain menggunakan media DVD untuk
membangun Repository Server, paket-paket aplikasi yang ingin dikumpulkan
bisa didapatkan dengan mendownload dari Repository di Internet. Untuk
mendowload, dapat digunakan tool rsync.
[root@repo ~]# rpm -q rsync
rsync-3.0.9-2.fc17.i686
[root@repo ~]# rsync -avrt rsync://kambing.ui.ac.id/fedora/linux/releases/17/Everything/i386/os/Packages/ \ /var/www/html/yum/base/17/i386
[root@repo yum]# rsync -avrt
rsync://ftp-stud.hs-esslingen.de/fedora/linux/releases/17/Everything/i386/os/Packages/ \ /var/www/html/yum/base/17/i386
Welcome to the ftp-stud.hs-esslingen.de archives.
If have any unusual problems, please report them via e-mail to
rsync@ftp-stud.hs-esslingen.de.
All transfers are logged.
If you don’t like this policy, then disconnect now.
This server does not support –checksum (-c)
This server does not support –compress (-z)
receiving incremental file list
./
0/
0/0xFFFF-0.3.9-6.fc17.i686.rpm
3/
3/389-admin-1.1.29-1.fc17.i686.rpm
Periksa aplikasi yang telah berhasil dimasukkan ke dalam Repository Server dengan menggunakan perintah.
[root@repo ~]# ls -la /var/www/html/yum/base/17/i386/
total 324
drwxrwxr-x. 33 406 75 4096 May 25 21:27 .
drwxr-xr-x. 3 root root 4096 Oct 11 08:52 ..
drwxrwxr-x 2 406 75 4096 May 25 21:27 0
drwxrwxr-x 2 406 75 4096 Oct 14 15:53 3
drwxrwxr-x 2 406 75 4096 May 25 21:27 4
drwxrwxr-x 2 406 75 4096 May 25 21:27 9
drwxrwxr-x. 2 406 75 20480 May 25 22:14 a
drwxrwxr-x. 2 406 75 12288 May 25 22:14 b
drwxr-sr-x. 2 root 101737 12288 May 23 04:36 c
drwxr-sr-x. 2 root 101737 4096 May 23 04:36 d
Setelah semua file aplikasi yang dibutuhkan dimasukkan ke dalam Repository Server, langkah berikut adalah menjalankan tool createrepo, perintah yang dapat digunakan adalah sebagai berikut.
[root@repo ~]# createrepo /var/www/html/yum/base/17/i386
Perintah tersebut akan menghasilkan
beberapa file yang diperlukan untuk operasional Repository Server.
File-file tersebut dapat dilihat dengan menggunakan perintah sebagai
berikut.
[root@repo ~]# ls /var/www/html/yum/base/17/i386/repodata/
0cf9bcd92b0860a0f9694cef4e9ac61b3451016c485e6a84ead6308e5f452bbc-primary.xml.gz
10388cb545e7f1e0c7010c6d54cb0f962d95b9819c092dea40894a452c92caec-other.xml.gz
8542a2b995d0a870d003ef033a4547bb7243ed48d67f7bccec534c5b9416ea3f-primary.sqlite.bz2
ba0e0de25ddd9200cbf8aee1c15190712eb797becb3f101db3fd64a31f266291-filelists.xml.gz
f79e375a0ce83249ae35d6bc4ee965f8af5d640efe7fc6725e3b5d11768bb194-other.sqlite.bz2
fae8f896b1c073c68472c0374dc78bff6e2109ab8b2bf4ef1f41e7f87b056d2b-filelists.sqlite.bz2
repomd.xml
Sedangkan untuk direktori update, aplikasi-aplikasi dapat dimasukkan dengan menggunakan tool rsync. Perintah yang dapat digunakan adalah sebagai berikut.
[root@repo ~]# rsync -avrt
rsync://ftp-stud.hs-esslingen.de/fedora/linux/updates/17/i386/ –exclude=debug/ \ /var/www/html/yum/updates/17/i386
Welcome to the ftp-stud.hs-esslingen.de archives.
If have any unusual problems, please report them via e-mail to
rsync@ftp-stud.hs-esslingen.de.
All transfers are logged.
If you don’t like this policy, then disconnect now.
This server does not support –checksum (-c)
This server does not support –compress (-z)
receiving incremental file list
./
0ad-data-0.0.11-3.fc17.noarch.rpm
Konfigurasi Client
Untuk menggunakan Repository Server
lokal yang sudah dibangun (dengan IP Address 20.1.1.4), maka pada Client
Linux perlu dilakukan konfigurasi untuk mengarahkan pencarian aplikasi
pada Repository lokal, tidak lagi menuju Internet.
Perlu dilakukan penambahan beberapa parameter pada file /etc/yum.conf, sehingga file tersebut dapat dilihat sebagai berikut.
[root@repo ~]# cat /etc/yum.conf
[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://20.1.1.4/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://20.1.1.4/yum/updates/$releasever/$basearch/
#mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
enabled=1
gpgcheck=0
Parameter enable=1 harus dirubah menjadi enable=0 pada beberapa file, seperti berikut.
[root@repo ~]# cat /etc/yum.repos.d/fedora.repo
[fedora]
name=Fedora $releasever – $basearch
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/os/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
[fedora-debuginfo]
name=Fedora $releasever – $basearch – Debug
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/$basearch/debug/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-debug-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
[fedora-source]
name=Fedora $releasever – Source
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/releases/$releasever/Everything/source/SRPMS/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=fedora-source-$releasever&arch=$basearch
enabled=0
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
[root@repo ~]# cat /etc/yum.repos.d/fedora-updates.repo
[updates]
name=Fedora $releasever – $basearch – Updates
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/$basearch/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
[updates-debuginfo]
name=Fedora $releasever – $basearch – Updates – Debug
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/$basearch/debug/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-debug-f$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
[updates-source]
name=Fedora $releasever – Updates Source
failovermethod=priority
#baseurl=http://download.fedoraproject.org/pub/fedora/linux/updates/$releasever/SRPMS/
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-source-f$releasever&arch=$basearch
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$basearch
[root@repo ~]#
{ 0 komentar... Views All / Send Comment! }
Posting Komentar