Gwida għall-Bidu għal Snaps fil-Linux - Parti 1


Fl-aħħar ftit snin, il-komunità Linux ġiet mbierka b'xi avvanzi notevoli fil-qasam tal-ġestjoni tal-pakketti fuq sistemi Linux, speċjalment fejn jidħlu l-ippakkjar u d-distribuzzjoni ta 'softwer universali jew ta' distribuzzjoni inkroċjata. Wieħed minn dawn l-avvanzi huwa l-format tal-pakkett Snap żviluppat minn Canonical, dawk li jfasslu l-popolari Ubuntu Linux.

Snaps huma applikazzjonijiet ta 'distribuzzjoni inkroċjata, ħielsa mid-dipendenza, u faċli biex jiġu installati ppakkjati bid-dipendenzi kollha tagħhom biex jaħdmu fuq id-distribuzzjonijiet ewlenin kollha tal-Linux. Minn bini wieħed, snap (applikazzjoni) se taħdem fuq id-distribuzzjonijiet kollha tal-Linux appoġġjati fuq id-desktop, fil-cloud, u l-IoT. Distribuzzjonijiet appoġġjati jinkludu Ubuntu, Debian, Fedora, Arch Linux, Manjaro, u CentOS/RHEL.

Snaps huma sikuri - huma ristretti u sandboxed sabiex ma jikkompromettux is-sistema kollha. Huma jimxu taħt livelli ta 'konfinament differenti (li huwa l-grad ta' iżolament mis-sistema bażi u minn xulxin). B'mod aktar notevoli, kull snap għandu interface magħżula bir-reqqa mill-kreatur tal-snap, ibbażat fuq ir-rekwiżiti tal-snap, biex jipprovdi aċċess għal riżorsi speċifiċi tas-sistema barra mill-konfinament tagħhom bħal aċċess għan-netwerk, aċċess għal desktop, u aktar.

Kunċett importanti ieħor fl-ekosistema snap huwa Channels. Kanal jiddetermina liema rilaxx ta 'snap huwa installat u rintraċċat għal aġġornamenti u jikkonsisti fi u huwa suddiviż minn, binarji, livelli ta' riskju, u fergħat.

Il-komponenti ewlenin tas-sistema ta 'ġestjoni tal-pakkett snap huma:

  • snapd – is-servizz fl-isfond li jamministra u jżomm is-snaps tiegħek fuq sistema Linux.
  • snap – kemm il-format tal-pakkett tal-applikazzjoni kif ukoll l-għodda tal-interface tal-linja tal-kmand użata biex tinstalla u tneħħi snaps u tagħmel ħafna affarijiet oħra fl-ekosistema snap.
  • snapcraft – il-qafas u l-għodda qawwija tal-linja tal-kmand għall-bini ta' snaps.
  • snap store – post fejn l-iżviluppaturi jistgħu jaqsmu snaps tagħhom u l-utenti tal-Linux ifittxuhom u jinstallawhom.

Barra minn hekk, snaps jaġġornaw ukoll awtomatikament. Tista' tikkonfigura meta u kif iseħħu l-aġġornamenti. B'mod awtomatiku, id-daemon snapd jiċċekkja għal aġġornamenti sa erba' darbiet kuljum: kull kontroll ta' aġġornament jissejjaħ refresh. Tista' wkoll tibda aġġornament manwalment.

Kif Tinstalla Snapd fil-Linux

Kif deskritt hawn fuq, id-daemon snapd huwa s-servizz fl-isfond li jamministra u jżomm l-ambjent snap tiegħek fuq sistema Linux, billi jimplimenta l-politiki ta 'konfinament u jikkontrolla l-interfaces li jippermettu li snaps jaċċessaw riżorsi speċifiċi tas-sistema. Jipprovdi wkoll il-kmand snap u jservi ħafna skopijiet oħra.

Biex tinstalla l-pakkett snapd fis-sistema tiegħek, mexxi l-kmand xieraq għad-distribuzzjoni tal-Linux tiegħek.

------------ [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

Wara li tinstalla snapd fis-sistema tiegħek, ippermetti l-unità systemd li timmaniġġja s-sokit prinċipali tal-komunikazzjoni snap, billi tuża l-kmandi systemctl kif ġej.

Fuq Ubuntu u d-derivattivi tiegħu, dan għandu jiġi attivat awtomatikament mill-installatur tal-pakkett.

$ sudo systemctl enable --now snapd.socket

Innota li ma tistax tħaddem il-kmand snap jekk is-snapd.socket ma jkunx qed jaħdem. Mexxi l-kmandi li ġejjin biex tivverifika jekk hijiex attiva u hix attivata biex tibda awtomatikament mal-boot tas-sistema.

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

Sussegwentement, ippermetti l-appoġġ snap klassiku billi toħloq rabta simbolika bejn /var/lib/snapd/snap u/snap kif ġej.

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

Biex tiċċekkja l-verżjoni tal-għodda tal-linja tal-kmand snapd u snap installata fis-sistema tiegħek, mexxi l-kmand li ġej.

$ snap version 

Kif Tinstalla Snaps fil-Linux

Il-kmand snap jippermettilek tinstalla, tikkonfigura, aġġorna u tneħħi snaps, u jinteraġixxi mal-ekosistema snap akbar.

Qabel ma tinstalla snap, tista 'tiċċekkja jekk teżistix fil-maħżen snap. Per eżempju, jekk l-applikazzjoni tappartjeni fil-kategorija ta '\chat servers jew \media players\, tista' tmexxi dawn il-kmandi biex tfittex għaliha, li se titlob lill-maħżen għal pakketti disponibbli fil-kanal stabbli.

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

Biex turi informazzjoni dettaljata dwar snap, pereżempju, rocketchat-server, tista 'tispeċifika l-isem jew it-triq tagħha. Innota li l-ismijiet huma mfittxija kemm fil-maħżen snap kif ukoll fil-snaps installati.

$ snap info rocketchat-server

Biex tinstalla snap fis-sistema tiegħek, pereżempju, rocketchat-server, mexxi l-kmand li ġej. Jekk ma tiġi pprovduta l-ebda għażla, jiġi installat snap li jsegwi l-kanal \stabbli, b'konfinar ta 'sigurtà strett.

$ sudo snap install rocketchat-server

Tista' tagħżel li tinstalla minn kanal differenti: edge, beta, jew kandidat, għal raġuni waħda jew oħra, billi tuża l---edge, --beta, jew --kandidat għażliet rispettivament. Jew uża l-għażla --channel u speċifika l-kanal li tixtieq tinstalla minnu.

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

Immaniġġja Snaps fil-Linux

F'din it-taqsima, se nitgħallmu kif timmaniġġja snaps fis-sistema Linux.

Biex turi sommarju ta' snaps installati fis-sistema tiegħek, uża l-kmand li ġej.

$ snap list

Biex telenka r-reviżjoni attwali ta' snap li qed tintuża, speċifika isimha. Tista' wkoll telenka r-reviżjonijiet kollha disponibbli tagħha billi żżid l-għażla --all.

$ snap list mailspring
OR
$ snap list --all mailspring

Tista' taġġorna snap speċifikat, jew snaps kollha fis-sistema jekk l-ebda wieħed ma jkun speċifikat kif ġej. Il-kmand tal-aġġornament jiċċekkja l-kanal li qed jiġi ssorveljat mill-snap u jniżżel u jinstalla verżjoni aktar ġdida tas-snap jekk ikun disponibbli.

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

Wara li taġġorna app għal verżjoni ġdida, tista' terġa 'lura għal verżjoni użata qabel billi tuża l-kmand tar-revert. Innota li d-data assoċjata mas-softwer se terġa 'lura wkoll.

$ sudo snap revert mailspring

Issa meta tiċċekkja r-reviżjonijiet kollha tal-mailspring, l-aħħar reviżjoni hija diżattivata, reviżjoni użata qabel hija issa attiva.

$ snap list --all mailspring

Tista' tiddiżattiva snap jekk ma tridx tużah. Meta tkun diżattivata, il-binarji u s-servizzi ta 'snap's ma jibqgħux disponibbli, madankollu, id-dejta kollha tibqa' hemm.

$ sudo snap disable mailspring

Jekk għandek bżonn tuża l-snap mill-ġdid, tista 'tippermettiha lura.

$ sudo snap enable mailspring

Biex tneħħi kompletament snap mis-sistema tiegħek, uża l-kmand tat-tneħħija. B'mod awtomatiku, ir-reviżjonijiet kollha ta' snap jitneħħew.

$ sudo snap remove mailspring

Biex tneħħi reviżjoni speċifika, uża l-għażla --revision kif ġej.

$ sudo snap remove  --revision=482 mailspring

Huwa importanti li wieħed jinnota li meta tneħħi snap, id-dejta tagħha (bħal dejta interna tal-utent, tas-sistema u tal-konfigurazzjoni) tiġi ffrankata minn snapd (verżjoni 2.39 u ogħla) bħala snapshot, u maħżuna fis-sistema għal 31 jum. F'każ li terġa' tinstalla s-snap fi żmien 31 jum, tista' tirrestawra d-dejta.

Snaps qed isiru aktar popolari fi ħdan il-komunità Linux peress li jipprovdu mod faċli biex jiġi installat softwer fuq kwalunkwe distribuzzjoni Linux. F'din il-gwida, urejna kif tinstalla u taħdem bi snaps fil-Linux. Aħna koprejna kif tinstalla snapd, tinstalla snaps, tara snaps installati, taġġorna u terġa 'lura snaps, u tiddiżattiva/tippermetti u neħħi snaps.

Tista' tistaqsi mistoqsijiet jew tilħaqna permezz tal-formola ta' feedback hawn taħt. Fil-parti li jmiss ta 'din il-gwida, se nkopru l-ġestjoni ta' snaps (kmandi, psewdonimi, servizzi u snapshots) fil-Linux.