Rlocate kurulumu

From Lapis Wiki

Jump to: navigation, search
Bu makale NASIL bölümü serisinin bir parçasıdır
MasaÜstü Donanım Dağıtımlar
Tarayıcılar Programlama Linux ve Oyunlar







Konu başlıkları

rlocate Nedir?

Heralde locate komutunun ne kadar kullanışlı olduğunu bilmeyen yoktur.Her ne kadar locate komutunu crontab ile zamanlı olarak güncelleyebiliyorsak ta heralde güncellemelerin anlık olması kadar iyi olamaz.Rlocate sistemimizde servis olarak çalışıyor ve bir nevi dinamik locate gibi oluyor.

Kernel Ayarları

Rlocate 2.6 kernele ihtiyaç duyuyor.Kernel ayarları da şöyle: "Security Options" altında "Enable different security models" seçeneğini işaretlemeniz gerekiyor."Default linux capabilities" seçili olmayacak ya da modül olarak seçili olacak.Bir de NSA SELinux(Ben bunu bulamadım ama Debian, Redhat, Suse gibi dağıtımlarda öntanımlı olduğunu söylüyor) seçilmemiş olacak.rlocate ve rlocate-utils paketleri normal depolarda yok bu paketleri aur vasıtasıyla kendimiz yapacağız.Bir notta şu: paketleri yeni kernelinizle boot etmeden derleyemezsiniz bu yüzden yeni kernelimizle sistemi yeniden başlatıyoruz.Bundan sonra paketlerimizi yapmaya geçebiliriz.

rlocate ve rlocate-utils paketlerinin yapımı

rlocate-utils pakedi için bir değişiklik yapmamıza gerek yok yeni kernelle sorunsuz bir şekilde bu pakedi yapabiliriz.makepkg komutu ile paketi derledikten sonra kuruyoruz.

 pacman -A paket-adı.pkg.tar.gz 

rlocate pakedine gelince eğer kernel26 kullanıyorsanız PKGBUILD de bi değişiklik yapmanıza gerek yok, eğer kendi kernelinizi kullanıyorsanız aur daki rlocate için bulunan PKGBUILD de ufak bir iki değişiklik yapacağız.

PKGBUILD'i Düzenlemek ve Derlemek

PKGBUILD içerisinde kernel26'yı bağımlılıklar(depends=) içerisinden silmelisiniz. PKGBUILD içerisinde _kernver=2.6.17-ARCH olan yeri _kernver=`uname -r` şeklinde değiştirmelisiniz.

Dosya: Örnek PKGBUILD
 
# Maintainer: Tom K <tom@archlinux.org>

pkgname=rlocate
pkgver=0.5.5
pkgrel=1
pkgdesc="The rlocate kernel module, for kernel26"
depends=('rlocate-utils')
conflicts=('rlocate-mod')
source=(http://dl.sourceforge.net/sourceforge/rlocate/rlocate-$pkgver.tar.gz)
url="http://rlocate.sourceforge.net/"
license="GPL"
install=rlocate.install

_kernver=`uname -r`

build() {
  cd $startdir/src/rlocate-$pkgver
  ./configure --with-kernel=/lib/modules/$_kernver/build \
  --with-moduledir=/lib/modules/$_kernver/misc
  cd src/rlocate-module
  make || return 1
  install -Dm755 rlocate.ko $startdir/pkg/lib/modules/$_kernver/misc/rlocate.ko
  sed -i -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" $startdir/rlocate.install
}
md5sums=('18a92b443575e15811b42db261393050')
  

Tekrar makepkg komutu ile paketi derledikten sonra kuruyoruz.Sırasıyla rlocate-utils ve rlocate paketlerini kurduk artık yapmamız gereken bir iki şey daha kaldı...

Kurulum Sonrası Ayarlar

Başlangıç için veritabanını güncelliyoruz.

 updatedb 

rlocate i kullanabilecek kullanıcıları rlocate grubuna ekliyoruz.Daha sonra /etc/rc.conf dosyamızı açıyoruz ve rlocate modülünü modüllerin arasına ekliyoruz.Bu arada capability modülünün yüklenmesini engellemek için onu da başında ünlem ile ekliyoruz.

 gpasswd -a kullanıcıadı rlocate 
 MODULES=(!capability rlocate) 

Daha sonra rlocate daemonu da başlangıç scriptlerinin arasına ekliyoruz.

 DAEMONS=(rlocate) 

Değişiklikleri bilgisayarı başlatmadan hemen uygulamak istiyorsanız.rlocate modülünü yükleyelim.Ardından rlocate daemonu çalıştıralım

 modprobe rlocate
/etc/rc.d/rlocate start

Şimdi test edelim.

 
[root@xor ~]# pwd
/root
[root@xor ~]# touch fgjk
[root@xor ~]# locate fgjk
/root/fgjk

Bağlantılar