• Sonuç bulunamadı

Slackware Linux Esasları

N/A
N/A
Protected

Academic year: 2022

Share "Slackware Linux Esasları"

Copied!
8
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Slackware Linux Esasları

İkinci Basım

(Bölüm 18 Slackware Paket Yönetimi)

Alan Hicks Chris Lumens David Cantrell Logan Johnson Çeviri: İsmail Demiral

(2)

Bölüm 18

Slackware Paket Yönetimi

Bir  yazılım  paketi,  sizin için kurulmaya hazır  ilgili programlar  demetidir. Bir kaynak kodu arşivi  indirdiğinizde, onu elinizle yapılandırmalı, derlemeli ve yüklemelisiniz. Bir yazılım paketiyle bu sizin  için zaten yapılmıştır. Tüm yapmanız gereken paketi kurmaktır. Yazılım paketlerini kullanmanın diğer  hazır ve kolay özelliği, eğer arzu ederseniz, programı kaldırma ve yükseltmenin çok kolay olmasıdır. 

Slackware, kurulduğunda  tüm paket yönetimi ihtiyaçlarınız  için gerekli programlarla birlikte  gelir. 

Paketleri çok kolay kurabilir, kaldırabilir, yükseltebilir, yapabilir ve gözden geçirebilirsiniz.

Ta Red Hat' ın Red Hat paket yöneticisini ilan ettiği yıllara dek giden yanlış bir inanış vardır, o da  Slackware' in paket yönetim aracına sahip olmadığı inanışıdır. Bu basit bir biçimde hiç de doğru  değildir. Slackware herzaman paket yöneticisi içerdi, hatta Red Hat' ın varlığından bile önce. pkgtool ve onun bileşen programları, rpm kadar tam özellikli ve heryerde rastlanan değil iken, paket kurmada  en az rpm kadar iyiydi.  pkgtool  hakkındaki gerçek onun var olmaması değil, bağımlılık denetimi  yapmamasıdır.

Açıkça, Linux çatısı altındaki birçok insan bir paketleyici yöneticisinin bağımlılık denetimini içerecek  şekilde tanımlı olması gerektiğini düşünmektedirler. Bağımlılık denetimi Slackware’nin kesin olarak  yapmadığı bir durumdur. Bu Slackware paketlerinin bağımlılıklarının olmadığı demek değil, Slackware'  in   paket   yöneticisinin   bağımlılıkları   denetlemediği   demektir.   Bağımlılık   yönetimi   sysadmin'   e  bırakılmıştır ve bu bizim sevdiğimiz yoldur.

18.1 Paket Biçimine Bakış

Araçları öğrenmeden önce, Slackware paketlerinin biçimine aşina olmalısınız. Slackware' de bir paket  basitçe gzip ile sıkıştırılmış tar arşiv dosyasıdır. Paketler kök dizinine açılmış olarak inşa edilirler.

Uydurma bir program ve örnek paketi:

./

usr/

usr/bin/

usr/bin/makehejaz usr/doc/

usr/doc/makehejaz 1.0/-

usr/doc/makehejaz 1.0/COPYING- usr/doc/makehejaz 1.0/README- usr/man/

usr/man/man1

usr/man/man1/makehejaz.1.gz install/

install/doinst.sh

(3)

Paket sistemi bu dosyayı kök dizinine açacak ve kuracaktır. Paket veri tabanında bu paketin içeriğini  kapsayan bir girdi oluşturulacak, böylece daha sonra bu paket yükseltilebilecek ve kaldırılabilecektir.

install/  alt dizinine dikkat edin. Bu dizin, kurulum sonrası  doinst.sh olarak adlandırılan betiği  içeren, özel bir dizindir. Eğer paket sistemi bu dosyayı bulursa, paketi kurduktan sonra bu dosyayı  çalıştıracaktır.

Diğer   betikler   paketin   içine   gömülebilirler,   fakat   bunlar   daha   ayrıntılı   olarak   bölüm   18.3.2'   de  işlenecektir.

18.2 Paket Araçları

Paket   yönetimi   için   dört   tane   ana   araç   vardır.   Bu   araçlar   paketlerin   yüklenmesi,   kaldırılması   ve  yükseltilmesi işlemlerini yaparlar.

pkgtool

pkgtool (8) paketlerin yüklenmesi ve kaldırılmasına izin veren, menülerle çalıştırılan bir programdır. 

Ana menü Şekil 18­1 de gösterilmiştir.

Şekil 18­1. Pkgtool’ un ana menüsü

Yükleme işlemi geçerli dizinden, bir başka dizinden yada disketten ileri sürülür. Basitçe hangi metodla  yükleme yapmak istediğinizi seçin sonra  pkgtool yükleme yapmak için geçerli paketlerin yerlerini  tarayacaktır. 

Şekil 18­2’ de gösterilen kurulan paketlerin listesine de bakmalısınız.

(4)

Şekil 18­2 pkgtool Görüntüleme Kipi 

Eğer   paketleri   kaldırmak   isterseniz,   kaldır   seçeneğini   seçin   sonra   size   bütün   kurulan   paketler   bir  denetleme listesi ile sunulacaktır. Kaldırmak istediginiz paketleri işaretleyin ve OK’ i seçin, pkgtool bu paketleri kaldıracaktır.

Bazı kullanıcılar bu aracı komut satırı araçlarına tercih ederler. Buna rağmen, komut satırı araçlarının  daha   fazla   seçenek   sunduğu   unutulmamalıdır.   Paketleri   yükseltme   olanağı   da   sadece   komut   satırı  araçları ile sunulur.

installpkg

installpkg (8) sistem üzerine yeni paketlerin kurulumunu idare eder. Söz dizimi şu şekildedir;

# installpkg seçenek paket_ismi

installpkg için üç seçenek sağlanır. Bir defada sadece bir seçenek kullanılabilir.

Tablo 18­1. installpkg Seçenekleri Seçenek Etki

-m Geçerli dizin üzerinde bir makepkg işlemi yapar.

-warn Eğer belirlenmiş paketi kurarsanız ne olacağını gösterir. Bu üretim sistemleri için  kullanışlıdır, böylece birşey kurmadan önce ne olacağını kesin olarak görebilirsiniz. 

-r Bütün paketleri geçerli dizine ve alt dizinlere özyineli olarak yükler. Paket isimleri joker  işaretleri kullanabilirler, joker işaretler özyineli yükleme sırasında tarama maskesi olarak  kullanılacaktır.

Eğer installpkg' den önce ROOT ortamı değişkenine geçerseniz, bu yol kök dizini için kullanılacaktır  ve bu işlem yeni sürücüleri kök dizininiz için ayarlamada kullanışlıdır. Bu sürücüler mesela /mnt veya  /’ dan başka bir yere bağlanacaklardır.

(5)

Kurulan paket veritabanı girdileri, /var/log/packages adresinde saklanırlar. Girdi gerçekten sadece  her paket için sade bir metin dosyasıdır. Eğer paketin kurulum sonrası betiği varsa, bu betik 

/var/log/scripts/ adresine yazılır.

Paket ismi için çeşitli paketleri belirtebilir yada joker işaretleri kullanabilirsiniz. Eğer kurulan bir paket  üstüne   yeniden   yükleme   yapıyorsanız,  installpkg  sizi   uyarmayacaktır,   bu   konuda   dikkatli   olun. 

installpkg  eskisinin   üzerine   yeni   proğramı   basitçe   ve   doğru   bir   biçimde   yükleyecektir.   Önceki  paketten kalan eski dosyaların güvenlice kaldırıldığını garanti altına almak istiyorsanız, upgradepkg’ 

yi kullanın.

removepkg

removepkg  (8)  yüklenen   paketlerin   sistemden   kaldırılması   işini   yürütür.   Söz   dizimi   aşağıdaki  gibidir:

# removepkg seçenek paket_ismi

removepkg için dört seçenek sağlanır. Bir defada sadece bir seçenek kullanılabilir.

Tablo 18­2. removepkg Seçenekleri Seçenek Etki

­copy Paket korunan paketlerin dizinine kopyalanır. Bu işlem asıl paketi kaldırmadan onun bir  ağacını oluşturur.

­keep Kaldırma sırasında oluşturulan geçici dosyaları kaydeder. Aslında sadece hata ayıklama  amaçları için kullanışlıdır.

­preserve Paket kaldırılır, fakat aynı zamanda, korunan paketlerin dizinine kopyalanır.

­warn Eğer paket kaldırılırsa, ne olacağını gösterir.

Eğer paketi kaldırmadan önce kök ortamı değişkenine geçerseniz, bu yol kök dizini için kullanılacaktır. 

Bu işlem yeni sürücülerinizi kök dizininiz için ayarlamada kullanışlıdır. Onlar tipik olarak /mnt yada  /’ dan  başka  bir yere bağlanacaklardır.  removepkg  diğer  kurulan paketlere de bakar  ve sadece  belirttiğiniz pakete özgü dosyaları kaldırır. 

removepkg belirtilen   paket   için   kurulum   sonrası   betiği   de   tarayacak   ve   paket   tarafından  oluşturulmuş sembolik bağlantıları da kaldıracaktır.

Kaldırma işlemi sırasında bir durum raporu gösterilir. Kaldırma işlemi sonrasında paket veritabanı  girdileri /var/log/removed_packages adresine, kurulum sonrası betik ise 

/var/log/removed_scripts adresine taşınır. 

Sadece installpkg ile birçok paket belirtebilir veya paket isimleri için joker işaretler kullanabilirsiniz.

(6)

upgradepkg

upgradepkg (8) kurulan bir Slackware paketini yükseltecektir. Söz dizimi aşağıdaki gibidir:

# upgradepkg paket_ismi

veya

# upgradepkg eski_paket_ismi%yeni_paket_ismi

upgradepkg ilk olarak yeni paketi kurar ve sonra eski paketi kaldırır, böylece eski paketler sistem  üzerinde daha fazla durmamış olurlar. Eğer yükseltilen paketlerin ismi değiştiyse, yüzde işaretini eski  paketi ve yeni paketi belirtmek için kullanın.

Eğer  upgradepkg’   den   önce   kök   ortamı   değişkenine   geçerseniz,   bu   yol   kök   dizini   için  kullanılacaktır. Bu işlem kök dizininiz için yeni sürücüleri ayarlamada kullanışlıdır. Onlar tipik olarak  /mnt’ ye yada /’ dan başka bir yere bağlanacaktır.

upgradepkg  kusursuz   değildir.   Herzaman   yapılandırma   dosyalarınızı   yedeklemelisiniz.   Eğer  yapılandırma dosyalarınız kaldırılır yada üstüne yazılırsa, herhangi bir ihtiyaç duyulan onarım işi için  asıllarını geri kopyalamak isteyeceksiniz.

Nitekim  installpkg  ve  removepkg  ile birçok paketi belirtebilir yada paket isimleri için joker  işaretler kullanabilirsiniz.

rpm2tgz/rpm2targz

Bugün Red Hat paket yöneticisi kullanışlı ve piyasada tutulan bir paketleme sistemidir. Birçok yazılım  dağıtıcısı ürünlerini RPM biçiminde sunarlar. Bu bizim kendi öz biçimimiz olmadığı için, Slackware  işletim sisteminde bu paketlere tam olarak güvenmeyin. Buna rağmen bazı şeyler sadece RPM olarak  elde mecuttur (hatta kaynak bile).

Size RPM paketlerini kendi öz paketlerimize dönüştüren bir paket sunuyoruz. Bu sizin paketi geçici bir  dizine açmanızı (muhtemelen explodepkg ile) ve içeriğini gözden geçirmenizi sağlayacaktır.

rpm2targz programı .tar.gz uzantılı bir arşiv oluştururken, rpm2tgz   programı .tgz uzantılı bir  Slackware paketi oluşturmanızı sağlar.

18.3 Paket Yapımı

Slackware paket yapımı hem kolay hem de zordur. Paket inşa etmek için belirli bir yöntem yoktur. Paket  oluşturmak için tek gereksinim, paketin  .tar.gz  dosyası olması ve kurulum sonrası bir betik varsa,  onun /install/doinst.sh olmasıdır.

Eğer kendi sisteminiz veya yönettiğiniz ağınız için paket yapmakla ilgiliyseniz, Slackware’ in kaynak  ağacındaki değişik inşa betiklerine bakmalısınız.

(7)

explodepkg

explodepkg (8) paketi açarak, installpkg’ nin yaptığı işin aynısını yapacaktır, fakat explodepkg aslında paketi kurmaz ve onu paket veri tabanına kaydetmez, paketi basitçe geçerli dizine açar.

Eğer Slackware’ in kaynak ağacına bakarsanız, bu komutu belli bir programa ait iskelet paketleri için  nasıl kullandığımızı göreceksiniz. Bu paketler en son paketin nasıl olacağına dair bir iskelet içerirler ve  bütün   gerekli   dosya   adları   (sıfır­uzunluk),   sahiplikleri   ve  izinleri   tutarlar.   İnşa   edilen   betik,   paket  içeriklerini kaynak dizinden paket inşa dizinine taşıyacaktır.

makepkg

makepkg  (8)  geçerli   dizini   doğru   bir   Slackware   paketinin   içine   paketleyecektir   ve   sembolik  bağlantılar için ağacı tarayacak ve de kurulum sonrası betiğe sembolik bağlantıları paket kurulumu  sırasında oluşturmak için bir oluşturma parseli ekleyecektir. 

Bu komut tipik olarak sizin paket ağacınızı oluşturmanızdan sonra çalışır.

SlackBuild Betikleri

Slackware paketleri  gereksinime  göre  çok  farklı  yollarla  inşa  edilebilirler.  Bütün yazılım  paketleri  programcıları tarafından aynı yolu derlemeye yazılmamışlardır. Birçoğu Slackware’ in kullandığı paket  içerisinde tamamıyla içerilmeyen zaman seçeneklerini derlerler. Belki bu işlevselliklerden bazılarına  ihtiyaç duyup, daha sonra kendi paketinizi derlemeye ihtiyaç duyacaksınız. Birçok Slackware paketi  için, SlackBuild betiklerini paketin kaynak kodunda bulabilirsiniz.

Pekala, SlackwareBuild betiği nedir? SlackBuild betikleri yürütülebilir kabuk betikleridir, bu betikleri  root  olarak yapılandırmak, derlemek ve Slackware paketleri oluşturmak için çalıştırırsınız. Kaynak  dizini içerisinde betikleri özgürce değiştirebilir ve varsayılan Slackware paketlerinin kendinize has  sürümlerini oluşturmak için değiştirdiğiniz betikleri çalıştırabilirsiniz.

18.4 Etiket Yapımı ve Etiket Dosyaları (kurulum için)

“Slackware   kurulum   programı”   sisteminiz   üzerinde   yazılım   paketlerinin   kurulumunu   işler.   Bazı  dosyalar vardır ve bu dosyalar kurulum programına program tarafından hangi paketlerin kurulması  gerektiğini, hangilerinin isteğe bağlı olduğunu, hangilerinin varsayılan olarak seçildiğini söylerler.

Bir etiket dosyası birinci yazılım serisindedir ve etiket dosyası olarak adlandırılır ve de etiket dosyası  belirli disk takımlarındaki paketleri ve onların durumlarını listeler. Durumlar:

(8)

Tablo 18­3. Etiket Dosyası Durum Seçenekleri Seçenek Anlam

ADD Paket doğru sistem işlemi için gereklidir.

SKP Paket otomatik olarak atlanacaktır.

REC Paket gerekli değildir, fakat önerilir.

OPT Paket isteğe bağlıdır.

Biçim basitçe;

paket_ismi: durum

Her satıra bir paket gelir. Her yazılım serisi için asıl etiket dosyaları, tagfile.org olarak saklanır.  Bu  yüzden kendinizinkileri bozarsanız, asıl olanlarından geri yükleyebilirsiniz.

Birçok   yönetici,   yükleyiciyi   başlatıp,   “full”   seçeneğini   seçerek,   kendi   etiket   dosyalarını   kendileri  yazmayı   tercih   ederler.   Kurulum   programı   etiket   dosyalarını   okuyacak   ve   kendi   içeriklerine   göre  kurulumu gerçekleştirecektir. Eger REC veya OPT seçeneklerini kullanırsanız, kullanıcıya belirli bir  paketi  isteyip  istemediğini  soran  bir  diyalog  kutusu  sunulacaktır. Bundan  dolayı  etiket dosyalarını  özdevinimli yükleme için yazarken, ADD ve SKP ile çakmanız önerilir. 

Etiket   dosyalarınızın   asılları   ile   aynı   yere   yazıldığından   emin   olun   veya   özel   etiket   dosyalarına  sahipseniz, özel bir etiket dosyası yolu belirtebilirsiniz.

Referanslar

Benzer Belgeler

Ergun, ÝYÝ Parti Grup Baþkanvekili Müsavat Dervi- þoðlu, ÝYÝ Parti Genel Sekreteri Uður Poyraz, ÝYÝ Partili bazý vekiller, CHP Çorum Milletvekili Tufan Köse, CHP

* yukarıdaki fiyatlara KDV dâhil değildir Ödemeler banka havalesi, elektronik havale, PayPal veya BitCoin ile

Gerekli bilgi ve belgelerin eksiksiz şekilde sigortacıya ulaşmasından itibaren mevzuat ve Yangın Sigortası Genel Şartları, Hırsızlık Sigortası Genel Şartları, Hukuksal

Bu komut ilk kez imaj ortamını oluşturmak için kullanılırken, daha sonraki çalıştırmalar sırasında ortam hazır olduğu için doğrudan chroot yapma işlevini üstlenir..

ORTAM (Araç-gereç, ekipman ve koşullar ) : Büro, Bilgisayar, Yazıcı, Internet, Sigortacılık paket programı, STANDART : Türkiye Sigorta Reasürans Şirketleri

Çorum Belediyesi tarafýndan düzenlenen sanal kon- ser için kente gelen Azerbaycanlý sanatçý Azerin, Beledi- ye Baþkaný Halil Ýbrahim Aþgýn’ý makamýnda ziyaret etti..

Çorum Çalýþma ve Ýþ Kurumu olarak özellikle üniversite tercihi döneminde (5-20 Aðustos 2021) Mes- lek Danýþmanlarýmýz tarafýndan gerçekleþtirilecek olan bireysel

Baþkan Aþgýn, Çorum Belediyesi Buhara Kül- tür Merkezi Spor salonunda düzenlenen ‘Belediye- mize Emek Verenlere Vefa Gecesi’ programýnda yaptýðý konuþmada