Eminim zaten biliyorsunuzdur, Linux’ta yazılım kurmanın pek çok yolu vardır: dağıtımınız tarafından sağlanan paket yönetim sistemini kullanmak (birkaç örnek vermek gerekirse aptitude, yum veya zypper), kaynaktan derleme (gerçi bir şekilde Bu günlerde nadiren, Linux’un ilk günlerinde mevcut olan tek yöntemdi) veya sırasıyla .deb ve .rpm bağımsız, önceden derlenmiş paketlerle dpkg veya rpm gibi düşük seviyeli bir araç kullanmak.
Bu yazıda size, farklı Linux paket formatları arasında dönüşüm sağlayan, en yaygın kullanım şekli .rpm’den .deb’e (ve tersi) olan bir araç olan Alien’i tanıtacağız.
Bu araç, yazarı artık onu geliştirmeye devam etmediğinde ve web sitesinde Alien’in muhtemelen her zaman deneysel durumda kalacağını belirttiğinde bile, belirli bir paket türüne ihtiyacınız varsa ancak o programı yalnızca başka bir paket biçiminde bulabiliyorsanız kullanışlı olabilir.
Bununla birlikte, dağıtımlar arasında farklı şekilde ayarlandıklarından, bu yardımcı programın önemli sistem dosyalarını ve kitaplıklarını değiştirmek için kullanılmaması gerektiğini açıklığa kavuşturmalıyız. Bu makalenin başında önerilen yükleme yöntemleri gerekli program için söz konusu değilse, yalnızca son çare olarak Alien’i kullanın.
Son olarak, bu yazıda CentOS ve Debian kullanacak olsak da, Alien’in ilk iki dağıtım ve ilgili ailelerinin yanı sıra Slackware ve hatta Solaris’te de çalıştığı bilindiğini belirtmeliyiz.
1. Adım: Alien ve Bağımlılıkları Yükleme
CentOS/RHEL 7’ye Alien yüklemek için EPEL ve Nux Dextop (evet, Masaüstü değil Dextop) depolarını şu sırayla etkinleştirmeniz gerekir:
# yum install epel-release # rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
Bu depoyu etkinleştiren paketin en son sürümü şu anda 0.5’tir (10 Ağustos 2015’te yayınlanmıştır). Devam etmeden önce daha yeni bir sürüm olup olmadığını görmek için http://li.nux.ro/download/nux/dextop/el7/x86_64/ adresini kontrol etmelisiniz:
# rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
Sonra şu komutu verelim,
# yum update && yum install alien
Fedora’da yalnızca son komutu çalıştırmanız gerekecek.
Debian ve türevlerinde şunları yapın:
# aptitude install alien
2. Adım: .deb’den .rpm Paketine Dönüştürme
Bu test için, büyük miktarda mali veriyle başa çıkmak için bir dizi tarih ve saat yardımcı programı sağlayan dateutils’i seçtik. .deb paketini CentOS 7 kutumuza indireceğiz, .rpm’ye çevireceğiz ve kuracağız:
# cat /etc/centos-release # wget http://ftp.us.debian.org/debian/pool/main/d/dateutils/dateutils_0.3.1-1.1_amd64.deb # alien --to-rpm --scripts dateutils_0.3.1-1.1_amd64.deb
Önemli: (Önemli olarak, Alien’in hedef paketin sürüm küçük sayısını nasıl artırdığına lütfen dikkat edin. Bu davranışı geçersiz kılmak istiyorsanız, –keep-version parametresini ekleyin).
Paketi hemen yüklemeye çalışırsak, küçük bir sorunla karşılaşırız:
# rpm -Uvh dateutils-0.3.1-2.1.x86_64.rpm
Bu sorunu çözmek için epel testi havuzunu etkinleştireceğiz ve yeniden oluşturulacak paketin ayarlarını düzenlemek için rpmrebuild yardımcı programını kuracağız:
# yum --enablerepo=epel-testing install rpmrebuild
Sonra bu komutu çalıştırın,
# rpmrebuild -pe dateutils-0.3.1-2.1.x86_64.rpm
Bu, varsayılan metin düzenleyicinizi açacaktır. %files bölümüne gidin ve hata mesajında belirtilen dizinlere başvuran satırları silin, ardından dosyayı kaydedin ve çıkın:
Dosyadan çıktığınızda yeniden oluşturma işlemine devam etmeniz istenecektir. Y’yi seçerseniz, dosya belirtilen dizine (geçerli çalışma dizininden farklı) yeniden oluşturulur:
# rpmrebuild –pe dateutils-0.3.1-2.1.x86_64.rpm
Artık paketi kurmaya ve her zamanki gibi doğrulamaya devam edebilirsiniz:
# rpm -Uvh /root/rpmbuild/RPMS/x86_64/dateutils-0.3.1-2.1.x86_64.rpm # rpm -qa | grep dateutils
Son olarak, dateutils’e dahil olan araçları tek tek listeleyebilir ve alternatif olarak ilgili kılavuz sayfalarını kontrol edebilirsiniz:
# ls -l /usr/bin | grep dateutils
Adım 3: .rpm’den .deb Paketine Dönüştürme
Bu bölümde .rpm’den .deb’ye nasıl dönüştürüleceğini göstereceğiz. 32-bit Debian Wheezy kutusunda, CentOS 6 OS deposundan zsh kabuğu için .rpm paketini indirelim. Bu kabuğun varsayılan olarak Debian ve türevlerinde mevcut olmadığını unutmayın.
# cat /etc/shells # lsb_release -a | tail -n 4
# wget http://mirror.centos.org/centos/6/os/i386/Packages/zsh-4.3.11-4.el6.centos.i686.rpm # alien --to-deb --scripts zsh-4.3.11-4.el6.centos.i686.rpm
Eksik bir imzayla ilgili mesajları güvenle göz ardı edebilirsiniz:
Birkaç dakika sonra .deb dosyası oluşturulmuş ve kuruluma hazır olmalıdır:
# dpkg -i zsh_4.3.11-5_i386.deb
Kurulumdan sonra, zsh’nin geçerli kabuklar listesine eklendiğini doğrulayabilirsiniz:
# cat /etc/shells
Yazının orijinalini buradan okuyabilirsiniz.
Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.