Linux Altında Paket Yönetimi

PourLa

Uzman üye
27 Mar 2016
1,659
30
Linux altında paket yönetimi, paketin kurulması, yapılandırılması, güncellenmesi, kaldırılması gibi işlemleri kapsar.

Paket kurulumu 2 şekilde gerçekleştirilebilir;
1. Kaynak kodunu derleyerek kurmak.
2. Önceden derlenerek oluşturulmuş pakedi bir paket yöneticisi ile kurmak.



İlk yöntem bazı avantajlarına rağmen fazla tercih edilmemektedir. Bir pakedi kaynak kodundan derlerken, derleyici parametrelerini değiştirip eldeki işlemciye özel, daha hızlı çalışabilir, ikili (binary) programlar oluşturulabilir veya özel isteklere göre yapılandırılıp derlenebilir. Ancak kod derlemek, yeni başlayanlar için zor bir işlem olabilir.



İkinci yöntemde, kullanıcı hazır paketi alıp, paket yöneticisi yardımı ile derlemeden doğrudan kendi sistemine açıp, tek bir komutla kurulum yapabilmesidir.



Paket Yönetim Sistemleri:


RPM (Red Hat Package Manager)


Red Hat paket yönetim programıdır.



RPM paketleri genellikle işletim sistemi platformlarına (i386, i586, i686, ia64, alpha, noarch,..) göre hazırlanmış paketlerdir. Bir Linux dağıtımı için veya bir platforma uygun hazırlanmış RPM paketi diğer bir Linux dağıtımında kurulmayacaktır. Kurulsa bile hatalı kurulacaktır. Bu nedenle RPM paketlerinin isimlerinin yanında açıklayıcı ekler bulunur.



i386 : 386,486 ve daha yukarısı işlemciler için
i586 : Pentium I ve daha yukarısı işlemciler için
i686 : Pentium II ve daha yukarısı işlemciler için
src : Kaynak kodlarını içeren halidir. Program geliştiricileri çoğunlukla kullanır.
ia64 : 64 bit işlemci mimarisine ait işlemciler için
alpha : Alpha mimarisine ait işlemciler için
noarch : Herhangi bir işlemci mimarisine bağlı olmadan kurulabilen.
gcc-c++-4.1.1-1.fc5.i386.rpm
örneğinde olduğu gibi versiyon numarasından sonraki kısım açıklayıcı bölümdür.


RPM paket yönetimi ile sistemde olan paket listesi görülebilir, paket hakkında bilgi okunabilir, güncelleme yapılabilir ve paket kaldırılabilir.


Konsol’da RPM kurulumu:


postfix-2.2.2-2.i386.rpm paketinin sisteme kuruluşu örnek olarak anlatılacaktır.



Kod:
 1.Adım: rpm -qa |grep postfix
Kod:
 ya da rpm -q postfix
komutları kullanılarak paketin kurulu olup olmadığı kontrol edilir. Paket kurulu değil ise 2. adıma geçilir.




Kod:
 2.Adım: rpm -ivh postfix-2.2.2-2.i386.rpm
komutunu yürütülerek kurulum gercekleştirilir.




365_00001.jpg



Kurulum gerçekleştikten sonra tekrar 1. Adımdaki komut yürütülürse paketin makinaya kurulmuş olduğu görülebilir.


365_00002.jpg



Kurulu Olan ve Kurulacak Paketler Hakkında Bilgi Alma


Sistemde yüklü olan bir paket hakkında özet bilgi almak için
Kod:
 rpm -qi paket_ismi
komutu yürütülür.


365_00003.jpg



2. Kurulmuş bir paket sisteme yüklenirken oluşturulan dosyaları görmek için
Kod:
 rpm -ql paket_ismi
komutu çalıştırılır.


365_00009.jpg



3. Sisteme kurulu olan paketlerin listesini görmek için
Kod:
 rpm -qa
komutu yürütülür.

365_00010.jpg



Kurulu Paketi Sistemden Kaldırmak:

Bunun için –e parametresi kullanılır.
Kod:
 rpm -e postfix
komutu yürütülür.

365_00004.jpg


Bu komut yürütüldükten sonra paketin sistemden kalkıp kalmadığını kontrol etmek için yine kurulum 1. adımdaki komutlar kullanılabilir.

YUM ( Yellowdog Updater Modifier )

YUM basitçe RPM paket yönetim sistemi olarak tanımlanabilir. Fedora'da gerekli olan paketleri yüklemek, kaldırmak ve güncellemek amacıyla Yum kullanılabilir. Yum’u kullanmaya başlamadan önce birkaç yapılandırma işlemine tabi tutulması ve programın güncellenmesi gerekir. Bu işlem için aşağıdaki komutları yürütmek yeterlidir.
Kurulum:

1. Paket yüklemek için

Kod:
 yum install paket_adı
komutu kullanılır.



365_00005.jpg




2. Paket güncellemek için

Kod:
 yum update paket_adı
komutu kullanılır.

365_00006.jpg



3. Paket kaldırmak için
Kod:
 yum remove paket_adı
komutu kullanılır.


365_00007.jpg



4. Paket aramak için
Kod:
 yum search paket_adı
komutu kullanılır.


365_00008.jpg



5. Yeni güncellemeleri görmek için
Kod:
 yum check-update
komutu yürütülür.


365_00012.jpg




Sıkıştırılmış Arşivlerden Program Kurulumu: tar.gz


İnternet'te birçok sayfadan RPM dosyasi ile birlikte tar.gz formatında sıkıştırılmış arşiv dosyası da edinilebilir. Bu dosyalar programın kaynak kodlarını içermektedir. Genelde kaynak kodlarının bulunduğu arşiv dosyasını bir dizin içerisinde kurulur. Arşivlenmiş dosyaları açarken belli bir strateji izlenmelidir. Genelde kurulacak paketler /usr/local dizinin içine açılır ve bu dizin içersinde kurulur. Paketlerin bazıları açıldıklarında kendilerine bir dizin yaratarak o dizin içerisine kurulurlar; fakat bu bir genelleme değildir. Bu yüzden paketi açmadan önce kaynak arşiv dosyasını /usr/src dizini içersine taşımak gerekir. Bunun için;

Kod:
[COLOR=Lime][COLOR=Cyan][COLOR=Orange]mv dosya-adi.tar.gz /usr/local  [/COLOR][/COLOR][/COLOR]



komutu ile paketin çekildiği dizinden /usr/local dizinine paketin aktarımı gerçekleştirilir. Bu aşamadan sonra aşağıdaki komut ile

Kod:
[COLOR=Orange]tar -ztvf paket-adı  [/COLOR]


arşiv dosyasının bir dizin yaratıp yaratmadığı kontrol edilir. Kontrolden sonra eğer dizin yaratılmıyorsa, mkdir komutu ile bir dizin yaratılarak kaynak kodları bu dizin içersine açılır. Kaynak kodlarının bir dizin içersine koyulduğu tespit ediliyorsa artık arşiv güvenle açılabilir. Aksi taktirde paket, yaratılan dizine taşındıktan sonra kaynak kodun açılmasını sağlanır. Arşivi açmak için;


Kod:
[COLOR=Orange]tar -xvfz paket-adı     [/COLOR]


komutu kullanılır. Buradaki tar komutundan sonraki x parametresi dosyaları çıkarmak için, v parametresi dosyalar çıkartılırken yol isimlerini görüntülemek için, f parametresi direk işlem yapılması için kullanilır. Ayrıca bu parametrelere bir z parametresi de eklenerek açma ve çıkarma işlemleri tek bir tar komutunda birleştirilebilir. Ayrıca eğer dosyanın uzantısı tar.gz değil de tar.z ise parametre olarak -Zvf girilmelidir.


Yazılımın derlenmesi


Kaynak kodlarının açıldığı dizin içersinde genel olarak README veya INSTALL şeklinde bir dosya mevcuttur. Bu dosyalar içersinde paketin kurulumu sırasında izlenecek yollar tarif edilmiştir. Genelde bu kurulum notlarının bulunduğu dizinde "configure" adında bir program mevcuttur. Bu program makinenin konfigurasyonu hakkında bilgi toplayarak bu bilgilere göre bir makefile oluşturur. Oluşturulan bu "makefile", programın makineye gore kurulumunu sağlar. Örneğin; bazı makinelerde C derleyicisi olarak gcc yerine cc kullanılmaktadır. "configure" programcığı makinenin kendine has özelliklerine göre bir makefile oluşturur. configure programcığı;

Kod:
  ./configure


komutu ile çalıştırılır. Program çalıştıktan sonra o dizinde makefile dosyası oluşur. Bu dosyayı;

Kod:
 make

komutu ile derlemek üzere kurulum başlatılır. Bu komut ile birlikte o dizindeki kurulumla ilgili dosyalar bir düzene sokulur bir liste oluşturulur. make komutu ile makefile dosyasındaki yapıya göre kurulum dosyaları hazırlanır. Bu noktadan sonra hazırlanan kurulum dosyalrının bilgisayarda gerekli yerlere kurulması kısmının gerçekleştirilmesi için


Kod:
 make install
komutu yürütülür. Programın kurulacağı dizinlerin ve kurulum dosyalarının gönderileceği dizinlerin değişimi isteniyorsa, makefile dosyasını düzenleyerek bu amaca kolayca ulaşılabilir. Bu komuttaki kurulumun gerçekleştirilmesini sağlayan install script (kurulum komut dosyası) ‘inde kurulum işlemini adım adım gerçekleştirecek olan komutlar yer almaktadır. Bu şekilde program makinenin konfigürasyon bilgilerine göre, programın kaynak kodlarından kurulmuş olur.


(ALINTIDIR.)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.