NASIL:Pardusman ile aromalı Pardus hazırlamak

PardusWiki, özgür ansiklopedi

Git ve: kullan, ara

Pardus 2007 resmi olarak bir kurulan ve bir de çalışan (live) CD olarak yayınlandı. Geliştiriciler Pardus'un geniş yazılım arşivinden sizin için seçtikleri, bir CD'ye sığdırabildikleri ile 13 Aralık 2006'da bu CD'leri oluşturdular.

Pardus geliştiricileri bu CD'leri yine kendi yaptıkları Pardusman isimli bir yazılım ile hazırlıyorlar. Kullanımı çok zor olmayan ancak geliştiriciler bu aracı kendi kullanımları için hazırladıklarından son kullanıcılara yönelik hata kontrolleri olmayan bir yazılım.

Bu belgede Pardusman'ı kullanarak, Pardus deposundan kendi seçtiğimiz yazılımları içeren bir CD kalıbını nasıl oluşturacağımızı göreceğiz. Pardusman ile 700 MB'lık standart bir CD'nin yanı sıra, DVD ya da istediğiniz boyutta bir medya (Mini-CD/DVD, vs) için de kalıp hazırlamanız mümkün.

Yalnız unutmamanız gereken nokta; kurulan bir kalıp hazırladığınız kalıbın içindeki yazılımların *tamamının* kurulum esnasında sisteme kurulacak olmasıdır. Pardus'un kurulum yazılımı Yalı, (henüz) kurulum esnasında herhangi bir bileşen/paket/kurulum tipi seçimi yapılmasını desteklemiyor. O nedenle örneğin 4.2 GB'lık bir DVD kalıbı hazırladığınızda, sisteme içindeki tüm yazılımlar sorgusuz sualsiz kurulacaktır. Farklı kurulum tipleri için farklı kalıplar hazırlayarak bu darboğazı aşabilirsiniz, ne de olsa yazılabilir medyalar çok ucuz :)

Konu başlıkları

[değiştir] Ön hazırlık

Pardus'un svn deposundan Pardusman'ı ve kalıp oluşturmak için gerekli dosyaları almak için eSvn grafik arabirimine gereksinimimiz olacak. Pardus'un paket yöneticisinden bu yazılımı yükleyebilirsiniz.

eSvn'i çalıştırdıktan sonra File menüsünden Browse Repository seçeneğine tıklayın.
eSvn'i çalıştırdıktan sonra File menüsünden Browse Repository seçeneğine tıklayın.


Açılan pencerede altta başında URL yazan kutuya http://svn.pardus.org.tr/uludag/trunk/ yazarak Browse düğmesine tıkladığınızda proje kapsamında geliştirilen yazılımların kaynak kodlarının bulunduğu depoya erişiyorsunuz. Karşımıza çıkan ağaçtan Pardusman dizinini seçerek Checkout düğmesine tıklıyoruz. Çıkan pencerede Local Path kutusunda Pardusman'ı kopyalamak istediğimiz dizini belirtiyoruz.
Açılan pencerede altta başında URL yazan kutuya http://svn.pardus.org.tr/uludag/trunk/ yazarak Browse düğmesine tıkladığınızda proje kapsamında geliştirilen yazılımların kaynak kodlarının bulunduğu depoya erişiyorsunuz. Karşımıza çıkan ağaçtan Pardusman dizinini seçerek Checkout düğmesine tıklıyoruz.
Çıkan pencerede Local Path kutusunda Pardusman'ı kopyalamak istediğimiz dizini belirtiyoruz.


Ok düğmesine tıkladığımızda, dosyalar aktarılmaya başlanıyor. Arka planda kalan eSvn'in ana penceresinde göreceğiniz successfully yazısı işlemin başarıyla tamamlandığını gösterecek.
Ok düğmesine tıkladığımızda, dosyalar aktarılmaya başlanıyor. Arka planda kalan eSvn'in ana penceresinde göreceğiniz successfully yazısı işlemin başarıyla tamamlandığını gösterecek.


Pardusman'ın yanı sıra kalıba girecek belgeleri de buradan alacağız. Aynı yukarıdaki yöntemle ağaçtan CD-image klasörünü seçiyoruz. Checkout düğmesine basarak, çıkan pencerede Local Path kutusunda dosyaları kopyalamak istediğimiz dizini belirtiyoruz.
Pardusman'ın yanı sıra kalıba girecek belgeleri de buradan alacağız. Aynı yukarıdaki yöntemle ağaçtan CD-image klasörünü seçiyoruz. Checkout düğmesine basarak, çıkan pencerede Local Path kutusunda dosyaları kopyalamak istediğimiz dizini belirtiyoruz.


Ok düğmesine tıkladığımızda, dosyalar aktarılmaya başlanıyor. Arka planda kalan eSvn'in ana penceresinde göreceğiniz successfully yazısı işlemin başarıyla tamamlandığını gösterecek.
Ok düğmesine tıkladığımızda, dosyalar aktarılmaya başlanıyor. Arka planda kalan eSvn'in ana penceresinde göreceğiniz successfully yazısı işlemin başarıyla tamamlandığını gösterecek.


Son olarak Pardusman, kalıbı oluştururken doğal olarak Pardus deposundaki pisi paketlerine gereksinim duyacak. Pardusman internet üzerindeki bir depoyu da kullanabiliyor ancak rahat rahat kurcalayabilmeniz için Pardus deposunun bir yerel diskinizde/ağınızda yansısını oluşturmanızı ısrarla öneririm.

Pardus deposunun yansısını alma ve güncelleme işlemini otomatikleştirmek ve yerel bir depo oluşturmak için Yerel Pisi Deposu Kurulumu belgesinden yararlanabilirsiniz.

[değiştir] Pardusman iş başında

Pardusman'ı kullanırken hatalı bilgi girdiğinizde (yanlış dizin/depo adı, vs), disk alanı bittiğinde ve benzeri hata durumlarında Pardusman arayüzü herhangi bir hata vermemiş ve kilitlenmiş gibi gözükür. Ancak hata mesajlarını aslında konsol çıktısı olarak verir. O nedenle Pardusman'ı biz de konsoldan çalıştıracağız ki, hata yaparsak hata mesajlarını okuyabilelim.

Konsoldan Pardusman'ı kopyaladığımız dizindeki /src klasörüne girdikten sonra ./pardusman.py komutunu vererek Pardusman'ı çalıştırıyoruz.
Konsoldan Pardusman'ı kopyaladığımız dizindeki /src klasörüne girdikten sonra ./pardusman.py komutunu vererek Pardusman'ı çalıştırıyoruz.


Pardusman arayüzünde File menüsü altında Open seçeneği ile daha önceden yapılıp kaydedilmiş bir kalıba ulaşabilirsiniz.
Pardusman arayüzünde File menüsü altında Open seçeneği ile daha önceden yapılıp kaydedilmiş bir kalıba ulaşabilirsiniz.


Pardusman ile beraber Kurulan ve Çalışan CD ürünlerinin kalıpları hazır gelmektedir. Pisi paket yönetim sistemi ve Pardus dağıtımının yapısı hakkında detaylı bilgi sahibi değilseniz, hazır kalıplardan birisini temel alarak çalışmaya başlamalısınız.
Pardusman ile beraber Kurulan ve Çalışan CD ürünlerinin kalıpları hazır gelmektedir. Pisi paket yönetim sistemi ve Pardus dağıtımının yapısı hakkında detaylı bilgi sahibi değilseniz, hazır kalıplardan birisini temel alarak çalışmaya başlamalısınız.


Kurulan CD kalıbını seçtiğinizde, Pardus ekibinin kalıbı hazırladıkları bilgisayardaki öntanımlı değerlere ulaşacaksınız. Bunları kendi bilgisayarımızda hazırladığımız düzeneğe göre değiştiriyoruz.

  • Title : Kalıba vermek istediğiniz isim, önyükleyici (grub) menüsünde bu isim ile yer alacak.
  • Work Folder : Pardusman'ın üzerinde çalışacağı geçici bir dizin. İşlemler tamamlandığında kalıp ISO dosyası olarak bu dizinde olacak. Bol boş alanı olmasına dikkat edin.
  • Repository : Pardusman'ın kullanacağı Pardus deposunun adresi. Eğer NASIL:Yerel Pisi deposu kurulumu belgesine göre yerel bir depo oluşturduysanız, deponun adresi file:///home/ftp/pardus-2007/pisi-index.xml.bz2 olacaktır.
  • Release Files : Yapılacak kalıbın kök dizininde yer alacak dosyaların bulunduğu, CD-image olarak svn'den daha önce indirdiğimiz dizin.
  • Media Type : Yapılacak kalıbın, kurulan (installation) bir Pardus sistemi mi çalışan (live system) bir Pardus sistemi mi olacağını belirliyoruz.
  • Media Size : Yapılacak kalıbın kaydedileceği medyanın boyutu. CD'ler için 700 MB, DVD'ler için 4.2 GB gibi standart boyutlar olduğu gibi; Custom Size seçerek kaydedeceğiniz özel bir medyaya (mini-cd/dvd, flash disk, vb) göre de ayarlayabilirsiniz.


Select Packages seçeneğine tıkladığımız zaman karşımıza depodan kalıba girmesini istediğimiz paketleri seçebileceğimiz bir arayüz geliyor.


Pardus 2007 Kurulan CD kalıbını temel alarak çalıştığımızdan, elinizdeki Pardus CD'sinde yer alan tüm paketler öntanımlı olarak seçili karşımıza geliyor. Kutusunda işaret olanlar, CD'ye girmesi için seçilmiş paketleri, işaretsiz ancak kırmızı renkli olanlar da işaretli (seçilmiş) başka bir paketin bağımlılığı olduğu için CD'ye giren yazılımları gösteriyor. İşaretsiz ve siyah renkli olan paketler CD'ye girmeyecek olan paketler.

Seçimleri paket bazlı yapabileceğiniz gibi sol pencere gözünde yer alan Components başlığındaki bileşenler ile o bileşendeki tüm paketleri de kalıba ekleyebilir ve çıkarabilirsiniz.

Herhangi bir paketin üzerine çift tıkladığımızda, ayrı bir pencerede paketle ilgili ayrıntılı bilgilere ulaşabiliyoruz.

En altta yer alan çubuktaki bilgiler, seçilmiş olan paketlerin sayısını, sıkıştırılmış olarak ne kadar yer kapladığını ve sisteme kurulduğu zaman ne kadar yer kaplayacağını belirtiyor. Aynı bilgilerin bağlı olduğunuz depodaki tüm paketler için olanını en üstte bulabilirsiniz.

Dikkat edilmesi gereken bir nokta, Pardusman çakışan paketler konusunda uyarmıyor ve yine de CD'ye ekliyor. Daha sonra kurulum sırasında problem yaşıyorsunuz. O nedenle nvidia ve nvidia-old gibi aynı anda kurulamayacak paketleri beraber CD'ye yerleştirmeyin.

Seçimlerimizi tamamladıktan sonra Use selected packages düğmesine tıklıyoruz.


Hazırladığımız kalıbı kaydetmek için Pardusman'ın File menüsünde Save As seçeneğine tıklıyoruz.
Hazırladığımız kalıbı kaydetmek için Pardusman'ın File menüsünde Save As seçeneğine tıklıyoruz.


Çıkan pencerede istediğimiz dizinde dosyaya bir isim vererek .xml uzantılı olarak kaydediyoruz. Artık hazırladığımız kalıba tıpkı Pardus 2007'nin orjinal kalıplarını kullandığımız gibi File menüsünden Open seçeneği ile istediğimiz zaman ulaşabiliriz.
Çıkan pencerede istediğimiz dizinde dosyaya bir isim vererek .xml uzantılı olarak kaydediyoruz. Artık hazırladığımız kalıba tıpkı Pardus 2007'nin orjinal kalıplarını kullandığımız gibi File menüsünden Open seçeneği ile istediğimiz zaman ulaşabiliriz.


Artık kalıbı yapmaya hazırız! Make ISO düğmesine basın.

Size root parolasını sorduğunda, root parolanızı yazarak Tamam düğmesine tıklayın.
Size root parolasını sorduğunda, root parolanızı yazarak Tamam düğmesine tıklayın.


Arkasından Pardusman bir konsol penceresi açarak uzuun sürecek bir kalıp hazırlama sürecine giriyor. Birçok paketin kurulduğunu, yapılandırıldığını ve kalıbın hazırlandığını görüyoruz. Tüm bu işlemler bittiğinde konsol penceresinin başlık kutusunda aşağıda olduğu gibi Tamamlandı yazısı ile karşılaşacaksınız.
Arkasından Pardusman bir konsol penceresi açarak uzuun sürecek bir kalıp hazırlama sürecine giriyor. Birçok paketin kurulduğunu, yapılandırıldığını ve kalıbın hazırlandığını görüyoruz. Tüm bu işlemler bittiğinde konsol penceresinin başlık kutusunda aşağıda olduğu gibi Tamamlandı yazısı ile karşılaşacaksınız.


Kalıp hazır! Pardusman'a Work Folder kutusunda belirttiğimiz çalışma dizininde kalıbımızı ISO dosya biçiminde pardus.iso ismiyle bulabiliriz.

UYARI! :). Pardusman ile kendi özel Pardus kalıbınızı hazırladığınız zaman, kurulumu ile ilgili yaşayacağınız sorunlarda kendi başınıza olacaksınız. Pardus geliştiricileri doğal olarak sadece kendi hazırladıkları Pardus kalıbına destek veriyorlar. Onları kendi kalıplarınızla ilgili hatalar için daraltmayın :)

[değiştir] Pardusman'ın çalışma yöntemi

Bu bölümde Pardusman'ın kalıp oluştururken arka planda yaptığı işlemlere göz atıyoruz. İlk adım grafik arayüzde Select packages seçildiğinde gerçekleşirken, diğer adımlar Make ISO düğmesine tıklandığında gerçekleştiriliyor.

  • Depo paket indeksini getirme : Verilen deponun paket listesi (pisi-index.xml.bz2) çekilerek çalışma dizini içindeki repo_cache dizinine kopyalanır.
  • Paketleri getirme : Kalıp (ISO) içine kurulacak paketler belirtilen depodan çekilerek çalışma dizini (Work Folder) içindeki repo_cache dizinine kopyalanır.
  • Geçici depolar oluşturulması : Çalışan CD ve kurulan CD'nin Yalı kurulum aracını içeren kurulum imajı için çalışma dizininde image_repo altında, kurulan CD'nin kurulacak paketleri için ise install_repo altında birer geçici depo oluşturulur. Bu depolar sadece kendi pisi-index.xml'lerini ve içlerindeki paketlerin repo_cache altından sabit bağlantılandırılmış (hard link) dosyalarını içermektedir. Bu iki depo dizini diskte çok az yer kaplar.
  • Çalışan Kalıp Kurulumu : Pisi ile çalışma dizinindeki image dizinine çalışan kalıp içinde yer alacak paketler kurulur. Bu paket listesi çalışan CD için arayüzde seçilen paketler, Kurulan CD için ise Yalı ve bağımlı olduğu paketlerden oluşur. Daha sonra bu dizin içinde chroot ile Çomar çalıştırılıp paketlerin yapılandırma işlemleri yapılır.
  • Çalışan Kalıbın Sıkıştırılması : Squashfs aracı ile image dizini altındaki çalışan sistem pardus.img dosyası haline getirilir. Bu CD'den çalışan çekirdek tarafından bağlanacak ve çalıştırılacak sıkıştırılmış bir dosya sistemidir.
  • Kalıp dosyalarının oluşturulması : Çalışma dizininde iso adlı bir dizin açılır. İçine arayüzden seçilen sürüm dosyaları Release files dizinindeki dosyalar kopyalanır. image dizininden çekirdek dosyaları kopyalanır, pardus.img sabit bağlantılandırılır. Eğer kurulum CD'si oluşturuluyorsa iso dizini içindeki repo dizinine install_repo dizini sabit bağlantılandırılır.
  • Kalıp (ISO) oluşturulması : Son adım olarak iso dizini içindeki dosyalar mkisofs komutuyla bir CD imajı haline getirilir.


[değiştir] Pardusman'ın komut satırından kullanımı

Pardusman bir önceki bölümde anlatılan adımları teker teker de yapabilmektedir. Böylece bir kere ISO hazırladıktan sonra, sadece sürüm dosyalarını değiştirmek için tüm işlemlerin baştan tekrarlanması da gerekmez.

pardusman <komut> proje.xml

  • make-repo : Geçici depoları oluştur
  • check-repo : Geçici depodaki paketlerin sha1sum kontrolü (grafik arayüzden yapılamıyor)
  • make-live : Çalışan CD kalıbı oluştur (paketleri kurarak)
  • pack-live : Çalışan CD kalıbından pardus.img dosyasını oluştur
  • make-iso : iso dizinini oluşturup mkisofs komutu ile ISO kalıbı oluştur
  • make : Tüm işlemleri yap


[değiştir] Pardusman'ın bilinen eksikleri

Genel kullanım için değil, Pardus dağıtım CD'lerini hazırlamak için geliştiricilere göre yazıldığından birkaç noktada eksikleri/elle müdahale gerektiren yönleri var :

  • Çeşitli hata durumları kontrol edilmiyor.
  • Birbiriyle çakışacak paketler olduğunda uyarıda bulunmuyor.
  • Çıkan Pardus kalıbını otomatik K3B'ye gönderme seçeneği yok.

[değiştir] Belgeye eklenecekler

Pardusman ile özel Pardus kalıbı hazırlanmasının pratik hayatta kullanım amaçlarından örnekler.

  • Meslek grupları için özel Pardus uyarlamaları hazırlamak.