Linux'ta Snap'ler İçin Yeni Başlayanlar Kılavuzu - Bölüm 1


Geçtiğimiz birkaç yılda, Linux topluluğu, özellikle evrensel veya çapraz dağıtım yazılım paketleme ve dağıtımı söz konusu olduğunda, Linux sistemlerinde paket yönetimi alanında bazı dikkate değer ilerlemelerle kutsandı. Bu tür ilerlemelerden biri, popüler Ubuntu Linux'un yaratıcıları Canonical tarafından geliştirilen Snap paket formatıdır.

Snap Paketleri Nedir?

Snap'ler tüm büyük Linux dağıtımlarında çalışacak şekilde tüm bağımlılıklarıyla birlikte paketlenmiş, çapraz dağıtımlı, bağımlılıksız ve kurulumu kolay uygulamalardır. Tek bir derlemeden, masaüstünde, bulutta ve IoT'de desteklenen tüm Linux dağıtımlarında bir snap (uygulama) çalışacaktır. Desteklenen dağıtımlar arasında Ubuntu, Debian, Fedora, Arch Linux, Manjaro ve CentOS/RHEL yer alır.

Snap'ler güvenlidir; tüm sistemi tehlikeye atmayacak şekilde sınırlandırılmış ve korumalı alana alınmıştır. Farklı sınırlama seviyeleri altında çalışırlar (bu, temel sistemden ve birbirlerinden izolasyon derecesidir). Daha da önemlisi, her snap'in, ağ erişimi, masaüstü erişimi ve daha fazlası gibi sınırlamaları dışındaki belirli sistem kaynaklarına erişim sağlamak için snap'in yaratıcısı tarafından snap'in gereksinimlerine göre dikkatlice seçilmiş bir arayüzü vardır.

Snap ekosistemindeki bir diğer önemli kavram da Kanallar'dır. Kanal, bir snap'in hangi sürümünün yüklendiğini ve güncellemeler için izlendiğini belirler ve parçalar, risk seviyeleri ve dallardan oluşur ve bunlara göre alt bölümlere ayrılır.

Snap paket yönetim sisteminin ana bileşenleri şunlardır:

  • snapd – bir Linux sisteminde snap'lerinizi yöneten ve bakımını yapan arka plan hizmeti.
  • snap – hem uygulama paketi formatı hem de snap'leri yüklemek ve kaldırmak ve snap ekosistemindeki diğer birçok şeyi yapmak için kullanılan komut satırı arayüz aracı.
  • snapcraft – snap'ler oluşturmaya yönelik çerçeve ve güçlü komut satırı aracı.
  • snap mağazası – geliştiricilerin snap'lerini paylaşabilecekleri ve Linux kullanıcılarının bunları arayıp yükleyebilecekleri bir yer.

Ayrıca anlık görüntüler de otomatik olarak güncellenir. Güncellemelerin ne zaman ve nasıl gerçekleşeceğini yapılandırabilirsiniz. Varsayılan olarak snapd arka plan programı, güncellemeleri günde dört defaya kadar kontrol eder: her güncelleme kontrolüne yenileme adı verilir. Ayrıca yenileme işlemini manuel olarak da başlatabilirsiniz.

Linux'ta Snapd Nasıl Kurulur

Yukarıda açıklandığı gibi, snapd arka plan programı, sınırlama politikalarını uygulayarak ve snaps'ların çalışmasına izin veren arayüzleri kontrol ederek bir Linux sistemindeki snap ortamınızı yöneten ve sürdüren arka plan hizmetidir. belirli sistem kaynaklarına erişim. Ayrıca snap komutunu da sağlar ve başka birçok amaca hizmet eder.

snapd paketini sisteminize yüklemek için Linux dağıtımınıza uygun komutu çalıştırın.

------------ [On Debian and Ubuntu] ------------ 
sudo apt update 
sudo apt install snapd

------------ [On Fedora Linux] ------------
dnf install snapd			

------------ [On CentOS and RHEL] ------------
yum install epel-release 
yum install snapd		

------------ [On openSUSE - replace openSUSE_Leap_15.0 with the version] ------------
sudo zypper addrepo --refresh https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_15.0 snappy
sudo zypper --gpg-auto-import-keys refresh
sudo zypper dup --from snappy
sudo zypper install snapd

------------ [On Manjaro Linux] ------------
pacman -S snapd

------------ [On Arch Linux] ------------
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si

Sisteminize snapd'yi yükledikten sonra, aşağıdaki gibi systemctl komutlarını kullanarak ana snap iletişim soketini yöneten systemd birimini etkinleştirin.

Ubuntu ve türevlerinde bunun paket yükleyicisi tarafından otomatik olarak tetiklenmesi gerekir.

sudo systemctl enable --now snapd.socket

snapd.socket çalışmıyorsa snap komutunu çalıştıramayacağınızı unutmayın. Etkin olup olmadığını ve sistem önyüklemesinde otomatik olarak başlatılacak şekilde etkinleştirilip etkinleştirilmediğini kontrol etmek için aşağıdaki komutları çalıştırın.

sudo systemctl is-active snapd.socket
sudo systemctl status snapd.socket
sudo systemctl is-enabled snapd.socket

Daha sonra /var/lib/snapd/snap ve /snap arasında aşağıdaki gibi sembolik bir bağlantı oluşturarak klasik snap desteğini etkinleştirin.

sudo ln -s /var/lib/snapd/snap /snap

Sisteminizde yüklü olan snapd ve snap komut satırı aracının sürümünü kontrol etmek için aşağıdaki komutu çalıştırın.

snap version 

Linux'ta Snaps Nasıl Kurulur

snap komutu, snap'leri yüklemenize, yapılandırmanıza, yenilemenize ve kaldırmanıza ve daha büyük snap ekosistemiyle etkileşime girmenize olanak tanır.

Bir snap yüklemeden önce snap deposunda mevcut olup olmadığını kontrol edebilirsiniz. Örneğin, uygulama "sohbet sunucuları" veya "medya oynatıcılar" kategorisine aitse, uygulamayı aramak için bu komutları çalıştırabilirsiniz; bu, mağazayı sorgular kararlı kanaldaki mevcut paketler için.

snap find "chat servers"
snap find "media players"

Bir snap hakkında ayrıntılı bilgi göstermek için (örneğin, roket sohbet sunucusu), adını veya yolunu belirtebilirsiniz. Adların hem Snap Store'da hem de yüklü Snap'lerde arandığını unutmayın.

snap info rocketchat-server

Sisteminize bir snap (örneğin, rocketchat-server) yüklemek için aşağıdaki komutu çalıştırın. Hiçbir seçenek sağlanmazsa, sıkı güvenlik kısıtlamasıyla "kararlı" kanalı izleyen bir anlık yüklenir.

sudo snap install rocketchat-server

kullanarak farklı bir kanaldan yükleme yapmayı seçebilirsiniz: edge, beta veya aday. --edge, --beta veya --candidate seçenekleri sırasıyla. Veya --channel seçeneğini kullanın ve kurulum yapmak istediğiniz kanalı belirtin.

sudo snap install --edge rocketchat-server        
sudo snap install --beta rocketchat-server
sudo snap install --candidate rocketchat-server

Linux'ta Snap'leri Yönetme

Bu bölümde Linux sisteminde snap'lerin nasıl yönetileceğini öğreneceğiz.

Yüklü Snap'leri Görüntüleme

Sisteminizde yüklü olan anlık görüntülerin bir özetini görüntülemek için aşağıdaki komutu kullanın.

snap list

Kullanılan bir geçişin geçerli revizyonunu listelemek için adını belirtin. Ayrıca --all seçeneğini ekleyerek mevcut tüm revizyonlarını da listeleyebilirsiniz.

snap list mailspring
OR
snap list --all mailspring

Snap'leri Güncelleme ve Geri Döndürme

Belirtilen bir snap'i veya eğer belirtilmemişse sistemdeki tüm snap'leri aşağıdaki gibi güncelleyebilirsiniz. Refresh komutu, snap tarafından izlenen kanalı kontrol eder ve mevcutsa snap'in daha yeni bir sürümünü indirip yükler.

sudo snap refresh mailspring
OR
sudo snap refresh		#update all snaps on the local system

Bir uygulamayı yeni bir sürüme güncelledikten sonra geri döndür komutunu kullanarak daha önce kullanılmış bir sürüme geri dönebilirsiniz. Yazılımla ilişkili verilerin de geri alınacağını unutmayın.

sudo snap revert mailspring

Artık mailspring'in tüm revizyonlarını kontrol ettiğinizde, en son revizyon devre dışı bırakılır, daha önce kullanılan bir revizyon artık etkindir.

snap list --all mailspring

Snap'leri Devre Dışı Bırakma/Etkinleştirme ve Kaldırma

Kullanmak istemiyorsanız bir enstantaneyi devre dışı bırakabilirsiniz. Devre dışı bırakıldığında, snap'in ikili dosyaları ve hizmetleri artık kullanılamayacak, ancak tüm veriler hala orada olacaktır.

sudo snap disable mailspring

Snap'i tekrar kullanmanız gerekirse onu tekrar etkinleştirebilirsiniz.

sudo snap enable mailspring

Bir snap'i sisteminizden tamamen kaldırmak için kaldır komutunu kullanın. Varsayılan olarak bir snap'in tüm revizyonları kaldırılır.

sudo snap remove mailspring

Belirli bir revizyonu kaldırmak için --revision seçeneğini aşağıdaki gibi kullanın.

sudo snap remove  --revision=482 mailspring

Bir snap'i kaldırdığınızda, içindeki verilerin (dahili kullanıcı, sistem ve yapılandırma verileri gibi) snapd (sürüm 2.39 ve üzeri) tarafından kaydedildiğini unutmamak önemlidir. anlık görüntü olarak alınır ve 31 gün boyunca sistemde saklanır. Snap'i 31 gün içinde yeniden yüklemeniz durumunda verileri geri yükleyebilirsiniz.

Çözüm

Snap'ler, herhangi bir Linux dağıtımına yazılım yüklemenin kolay bir yolunu sağladıklarından Linux topluluğu içinde daha popüler hale geliyor. Bu kılavuzda, Linux'ta snap'lerin nasıl kurulacağını ve bunlarla nasıl çalışılacağını gösterdik. Snapd'in nasıl kurulacağını, snap'lerin nasıl kurulacağını, yüklü snap'lerin nasıl görüntüleneceğini, snap'lerin nasıl güncelleneceğini ve geri alınacağını ve snaps'ların nasıl devre dışı bırakılacağını/etkinleştirileceğini ve kaldırılacağını ele aldık.

Aşağıdaki geri bildirim formunu kullanarak bize soru sorabilir veya bize ulaşabilirsiniz. Bu kılavuzun bir sonraki bölümünde Linux'ta anlık görüntüleri (komutlar, takma adlar, hizmetler ve anlık görüntüler) yönetmeyi ele alacağız.