SUSE Linux (openSUSE, SUSE Enterprise ve türevleri) söz konusu olduğunda, zypper ve YaST paket yöneticileridir. YaST (Yine başka bir Kurulum Aracı) SUSE Linux'u yönetmek, kurmak ve yapılandırmak için olsa da, zypper ZYpp paket yöneticisinin CLI arayüzüdür. ZYpp, hem zypper hem de YaST'nin merkezinde yer alır.
Bu yazıda, her türlü amaç için zypper kullanımına derin bir dalış yapacağız.
Not: zypper komutları sistem genelinde değişiklikler yaptığından, bu komutlar root olarak çalıştırılmalıdır. Aksi takdirde, komutlar başarısız olur.
Lafı fazla uzatmadan başlayalım! Tüm bu örnekler openSUSE Tumbleweed'de gösterilmektedir. Ancak, bu komutlar zypper paket yöneticisi için evrenseldir.
Zypper yardım
Herhangi bir komut olmadan zypper çalıştırmak, mevcut tüm komutların bir listesini yazdıracaktır.
$ zypper
Bu büyük bir liste! Belirli bir komutla ilgili yardıma ihtiyacınız varsa, aşağıdaki komutu çalıştırın.
$ zypper yardım
Zypper veritabanını güncelleme
Bu, yerel paket veritabanını paket sunucusuyla güncel tutmak için zypper'ın en yaygın işlevlerinden biridir.
$ sudo zypper yenileme
“Refresh” yerine “ref” kısaltmasını da kullanabilirsiniz.
$ sudo zypper ref
Ayrıca zypper'ı yerel veritabanını yeniden oluşturmaya zorlamak da mümkündür. Bu, örneğin veritabanının bozuk olduğu durumlarda yararlı olabilir.
$ sudo zypper yenileme -fdb
Sistem paketlerini güncelle
openSUSE'den en son paket güncellemelerini alıp yüklemek için aşağıdaki komutu çalıştırın.
$ sudo zypper güncellemesi
Ancak maksimum fayda için aşağıdaki yapıyı kullanmanızı tavsiye ederim.
$ sudo zypper taze && sudo zypper güncellemesi
Mevcut güncellemeleri olan paketleri kontrol etmekle ilgileniyorsanız, aşağıdaki komutu çalıştırın. Zypper sizin için mevcut güncellemelerin bir listesini oluşturacaktır.
$ zypper liste güncellemeleri --hepsi
Paket yükleme
Bir paket yüklemek için aşağıdaki komutu kullanın.
$ sudo zypper vlc'yi kurun
zypper komutlarının bazı ilginç kısaltmaları var. Bu durumda aşağıdaki komut da geçerlidir ve aynı işi yapacaktır.
vlc'de $ sudo zypper
Aynı anda birden fazla paket kurmanız gerekiyorsa, paket adını birbiri ardına boşlukla ayırarak eklemeniz yeterlidir.
$ sudo zypper kurulumu
Bir eylem gerçekleştirirken, zypper onay isteyecektir. Etkileşimli modu kapatmak için “-interaktif olmayan” veya “-n” bayrağı ekleyin.
$ sudo zypper -- vlc'de etkileşimli değilvlc'de sudo zypper -n
Joker karakter özelliği zypper tarafından da desteklenmektedir. Örneğin, isimle başlayan tüm paketleri yüklemeyi deneyelim
piton.$ sudo zypper 'python*' içinde
Kaynak bir paket kurun
Not: Aşağıdaki adımları gerçekleştirmeden önce kaynak havuzun aktif olup olmadığını kontrol etmeyi unutmayınız. Aksi takdirde, kaynak yüklemeleri başarılı olmaz. “YaST Yazılım Depolarından” kaynak deposunu etkinleştirin.
Belirli bir paketin kaynak paketini kurmanız gerekiyorsa, "kaynak-kurulum" bayrağını kullanın.
$ sudo zypper kaynak yükleme vlc
Varsayılan olarak, bu komut ayrıca tüm yapı bağımlılıklarını yüklemenizi ister. Yapı bağımlılıklarından kaçınmak için “-D” bayrağını ekleyin.
$ sudo zypper kaynak yükleme -D vlc
Yalnızca derleme bağımlılıklarını yüklemek istiyorsanız, bunun yerine "-d" kullanın.
$ sudo zypper kurulum kaynağı-kurulum -d vlc
Paket arama
openSUSE deposunda binlerce paket var. zypper kullanarak arama yapmak için aşağıdaki yapıyı kullanın.
$ zypper aramaÖrneğin, üzerinde “python” terimi bulunan tüm paketleri arayalım.
$ zypper arama pitonu
Bu tür arama, UZUN bir paket listesi yazdırabilir. Böyle bir durumda, "grep" kullanmak veya sonucu dışa aktarmak ve ardından gerçekleştirmek biraz rahatlık sağlayabilir.
"Arama" seçeneği ayrıca "se" kısaltmasına sahiptir.
$ zypper -n se
Arama için başlangıçta “sudo” kullanmak zorunda olmadığımızı unutmayın. Bunun nedeni, zypper'ın sistem genelinde herhangi bir değişiklik yapmamasıdır.
Bir paketi kaldırma
Belirli bir paketten kurtulmak istiyorsanız, “kaldır” seçeneğini kullanın.
$ sudo zypper kaldırÖrneğin, VLC'yi sistemden kaldıralım.
$ sudo zypper vlc'yi kaldır
“Kaldır” yerine “rm” kullanalım. "Kaldır" teriminin kısaltmasıdır.
$ sudo zypper rm vlc
Etkileşimli modu atlamak istiyorsanız, “-interaktif olmayan” veya “-n” işaretini kullanın.
$ sudo zypper -- etkileşimli olmayan rm vlc$ sudo zypper -n rm vlc
Aynı anda yükleme ve kaldırma
Aynı anda paketlerin yüklenmesine ve kaldırılmasına izin veren ilginç bir zypper özelliğidir! Hadi kontrol edelim.
Örneğin, Python'u kaldırırken VLC'yi kuralım. Bu örnekte, zypper'ın ana görevi yüklemektir, kaldırmak değil. Burada kolaylık olması için “-n” bayrağı kullanılmıştır.
$ sudo zypper -n vlc -python'da
Yama
Bu, openSUSE ekosisteminin ilginç bir parçasıdır. her ikisi de iken yama ve Güncelleme aynı şekilde çalışır, ikisi de temelde farklıdır. Şaşkın?
"Güncelleme" durumunda, openSUSE'nin şartlarında, paketi depodan mevcut olan en son sürüme güncelleyecektir. Ancak "yama" durumunda, yalnızca hata ve güvenlik düzeltmeleri için olan paket güncellemelerini yükleyecektir.
Sadece yüklerseniz yamalar, tüm paketleri güncelleyebilir veya güncellemeyebilir. Ancak, güncellemelerin gerçekleştirilmesi, en son paketlerin hepsinin yüklendiğinden emin olacaktır.
Bunun dışında, hadi başlayalım!
İlk başta, yamayı yüklemek. Aşağıdaki komut, resmi olarak yayınlanan tüm yamaları yükleyecektir.
$ sudo zypper yaması
Benim durumumda, yapacak bir şey yok. En son yama varsa, komut onu yükleyecektir.
Kullanılabilir yamaların listesini görmek için bunu kullanın. gerektirmez kök koşma izni.
$ zypper yamaları
Zypper, şu anda yüklü olmayan tüm yamaları listeleyebilir. Aşağıdaki komutu çalıştırın.
$ zypper liste yamaları
"Liste yamaları", kısaltılmış "lp" biçiminde de mevcuttur.
$ zypper lp
Yalnızca güvenlik düzeltmeleri olarak işaretlenen yamaları listelemekle ilgileniyor?
$ zypper lp -- kategori güvenliğiGerekli yama sayısını kontrol etmek için bu komutu çalıştırın.
$ sudo zypper yama kontrolü
Depo yönetimi
Zypper, tüm depoları yönetmek için kusursuz yöntemler sunar. İşte birçok durumda gerçekten kullanışlı olan bazı komutlar.
Tüm depoların yerel veritabanının nasıl güncelleneceğini zaten ele aldık.
$ sudo zypper yenileme
Tüm depoların hızlı bir listesine ihtiyacınız var?
$ zypper depoları"Repos"un kısaltılmış hali olan "lr"yi de kullanabiliriz.
$ zypper lr
Depoların URI'sine ihtiyacınız var? "lr" veya "repos"tan sonra "-u" bayrağını eklemeniz yeterli.
$ zypper lr -u
Bilmiyorsanız, openSUSE depoları bir hiyerarşide sıralanmıştır. Depoları önceliklerine göre listelemek için “-p” bayrağını kullanın.
$ zypper lr -p
"Yenileme" çalıştırıldığında, Zypper tüm depolar için yerel veritabanını güncelleyecektir. Belirli bir depoyu güncellemek için aşağıdaki komutu çalıştırın.
$ sudo zypper yenileme
Repolar, silinmeden etkinleştirilebilir/devre dışı bırakılabilir. Belirli bir depoyu devre dışı bırakmak için aşağıdaki komutu çalıştırın. Depo listesinden repo numarasına ihtiyacımız olduğunu unutmayın.
$ sudo zypper bay -d
Devre dışı bırakılmış bir depoyu etkinleştirmeniz gerekiyor? Aşağıdaki komutu çalıştıralım.
$ sudo zypper bay -e
Yeni bir depo eklemek de çok basittir. Bu örnekte, Packman'i ekleyeceğim. Ek openSUSE paketleri sunan harici bir depodur. Hangi openSUSE sürümünü çalıştırdığınıza bağlı olarak, repo URI'si değişecektir. Ancak, komut yapısı aynı kalacak. Packman hakkında daha fazla bilgi edinin
$ sudo zypper eklentisiopenSUSE Tumbleweed durumunda, komut şöyle görünecek. Burada “ar”, “addrepo”nun kısaltılmış halidir.
$ sudo zypper ar -cfp 90 http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/paketçi
Bir depoyu kaldırmak için depo takma adına ihtiyacınız var. Repo takma adını repo listesinden alın ve aşağıdaki komutu kullanın.
$ sudo kaldırKısaltılmış şekli olan “rr” ile “removerepo”yu değiştirebilirsiniz.
$ sudo rr
önbellek yönetimi
Önbelleğe alma, zypper'ın internetten aldığı tüm RPM paketlerinin bir kopyasını belirli bir konumda tutabildiği kullanışlı bir mekanizmadır. zypper'dan aynı paketi yüklemesini istediğinizde, önce önbelleğe bakar. Önbellekteyse, zypper yüklemeyi gerçekleştirmek için önbellekten RPM paketini kullanır. Bu şekilde kurulumu hızlandırabilir ve zamandan ve bant genişliğinden tasarruf sağlayabilir.
Önbellek aşağıdaki konumda saklanır. Her repo, dizinin altında kendi özel klasörüne sahiptir.
$ ağaç /var/önbellek/zypp/paketler
Önbelleği temizlemek için aşağıdaki komutu çalıştırın.
$ sudo zypper temiz
Bu, depolanan tüm RPM paketlerini önbellekten temizleyecektir. Depolama alanı tarafından bir şekilde kısıtlanmadığınız sürece önbelleğe almayı etkinleştirmenizi öneririm. Aşağıdaki komut, sistemdeki tüm depolar için önbelleğe almayı etkinleştirecektir.
$ sudo zypper bay -ka
Son düşünceler
Zypper bir ton özellik içerir. Bu zypper kullanım yöntemleri normal kullanıcılar için fazlasıyla yeterli olsa da, burada yer almayan birçok gelişmiş özellik vardır.
Tam zypper belgeleri için man sayfasına bakın.
$ adam zypper
Zevk almak!