מדריך למתחילים לסנאפים ב-Linux – חלק 1

בשנים האחרונות, קהילת Linux זכתה בהתקדמויות משמעותיות בתחום ניהול חבילות במערכות Linux, בעיקר בקשר לאריזת תוכנות אוניברסליות או חוצות-הפצה והפצה. אחת מההתקדמויות הזו היא פורמט החבילות Snap שפותח על ידי Canonical, יצרני מערכת ההפעלה הפופולרית Ubuntu Linux.

מהן חבילות Snap?

Snaps הם יישומים חוצי-הפצה, חופשיים מתלות וקלים להתקנה שמאורזים עם כל התלותות שלהם כדי לרוץ על כל הפצות Linux המרכזיות. מתוך בנייה יחידה, יישום Snap (או סנאפ) ירוץ על כל ההפצות הנתמכות על שולחן העבודה, בענן וב-IoT. ההפצות הנתמכות כוללות Ubuntu, Debian, Fedora, Arch Linux, Manjaro, ו-CentOS/RHEL.

Snaps הם מאובטחים – הם מוגבלים ומוסופקים בתוך חפיפות כך שהם אינם מסוכנים למערכת כולה. הם רצים תחת רמות חפיפה שונות (שהיא מידת הבידוד מהמערכת הבסיסית ואחד מהשנים). יותר לעיל, כל Snap מכיל ממשק הוקף בקפיצה ונבחר בקפיצות בקפיצות על ידי יוצר ה-Snap, לפי דרישות ה-Snap, כדי לספק גישה למשאבי מערכת מסוימים מחוץ לקיפוף שלהם כמו גישה לרשת, גישה לשולחן העבודה, ועוד.

עוד מושג חשוב במערכת snap היא ערוצים. ערוץ channel קובע איזו גרסה של סנאפ מותקנת ועקוב אחריה לעדכונים והוא מורכב ממסלולים, רמות סיכון וענפים.

הרכיבים העיקריים של מערכת ניהול חבילות סנאפ הם:

  • snapd – השירות הרביעי שמנהל ומתחזק את הסנאפים שלך במערכת לינוקס.
  • snap – גם פורמט החבילה היישומית וכלי המסמך השולחני המשמש להתקנת והסרת סנאפים ולעשות דברים רבים אחרים במערכת הסנאפ.
  • snapcraft – המסגרת וכלי שולחן הפקודה החזקים לבניית סנאפים.
  • snap store – מקום שבו מפתחים יכולים לשתף את הסנאפים שלהם ומשתמשי לינוקס יכולים לחפש ולהתקין אותם.

בנוסף, snaps מתעדכנים באופן אוטומטי. אפשר להגדיר מתי ואיך מתרחשים העדכונים. כברירת מחדל, דאין snapd בודקת עד פעמיים ארבע ביום: כל בדיקת עדכון נקראת refresh. אפשר גם לבצע באופן ידני רינג.

איך להתקין Snapd בלינוקס

כפי שתואר לעיל, דאין snapd הוא השירות הרביעי שמנהל ומתחזק את סביבת הsnap שלך במערכת לינוקס, על ידי יישום מדיניות ההכלאה ושליטת הממשקים המאפשרים לסנאפים לגשת למשאבים מערכת ספציפיים. הוא גם מספק את הsnap ומשרת מטרות רבות אחרות.

כדי להתקין את החבילה snapd במערכת שלך, הרץ את הפקודה המתאימה להפצת ה-Linux שלך.

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

לאחר התקנת snapd במערכת שלך, הפעל את יחידת ה-systemd שמנהלת את תקשורת ה-snap הראשית, באמצעות פקודות ה-systemctl הבאות.

ב-Ubuntu ובמפצים שלו, זה צריך להתקבל באופן אוטומטי על ידי מתקין החבילה.

$ sudo systemctl enable --now snapd.socket

שים לב שאינך יכול להריץ את הפקודה snap אם ה-snapd.socket אינה פועלת. הרץ את הפקודות הבאות כדי לבדוק האם היא פעילה והאם היא מופעלת להתחלה אוטומטית באתחול המערכת.

$ sudo systemctl is-active snapd.socket
$ sudo systemctl status snapd.socket
$ sudo systemctl is-enabled snapd.socket
Check Snapd Service Status

בשלב הבא, הפעל תמיכה ב-classic snap על ידי יצירת קישור סמלי בין /var/lib/snapd/snap ובין /snap כך:

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

כדי לבדוק את גרסת ה-snapd וכלי שורת הפקודה של snap המותקן במערכת שלך, הרץ את הפקודה הבאה.

$ snap version 
Check Snapd and Snap Version

כיצד להתקין Snaps ב-Linux

הפקודה snap מאפשרת לך להתקין, להגדיר, לרענן ולהסיר snaps, ולהתקשר עם האקוסיסטמה הרחבה של snap.

לפני התקנת snap, תוכל לבדוק אם הוא קיים בחנות ה-snap. לדוגמה, אם היישום שייך לקטגוריה של "שרתי צ'אט" או "פליילרי מדיה", תוכל להפעיל את הפקודות הבאות כדי לחפש, מה שיבדוק את החנות לחבילות זמינות בערוץ היציב.

$ snap find "chat servers"
$ snap find "media players"
Find Applications in Snap Store

כדי להציג מידע מפורט על snap, לדוגמה, rocketchat-server, תוכל לציין את שמו או המסלול. שים לב ששמות מחפשים גם בחנות ה-snap וגם ב-snaps המותקנים.

$ snap info rocketchat-server
Get Info About Application in Snap

כדי להתקין snap במערכת שלך, לדוגמה, rocketchat-server, הפעל את הפקודה הבאה. אם לא מסופקים אפשרויות, snap מותקן עקב ה" stable " ערוץ, עם כלוב בטיחות קפדני.

$ sudo snap install rocketchat-server
Install Application from Snap Store

אפשר לבחור להתקין מערוץ אחר: edge, beta, או candidate, מסיבה כזו או אחרת, באמצעות האפשרויות --edge, --beta, או --candidate בהתאמה. או השתמש באפשרות --channel וציין את הערוץ שברצונך להתקין ממנו.

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

ניהול Snaps ב-Linux

בקטע זה, נלמד כיצד לנהל snaps במערכת Linux.

צפייה ב-Snaps המותקנים

כדי להציג סיכום של snaps המותקנים במערכת שלך, השתמש בפקודה הבאה.

$ snap list
List Installed Snaps

לרשום את השינוי הנוכחי של קטע שמשתמשים בו, ציין את שמו. אפשר גם לרשום את כל השינויים הזמינים שלו על ידי הוספת האפשרות --all.

$ snap list mailspring
OR
$ snap list --all mailspring
List All Installation Versions of Snap

עדכון והחזרת קטעים

אפשר לעדכן קטע מסוים, או את כל הקטעים במערכת אם לא מציינים כך. הפקודה רענון בודקת את הערוץ שמעקב אחריו והיא מורידה ומתקינה גרסה חדשה של הקטע אם היא זמינה.

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

לאחר עדכון של אפליקציה לגרסה חדשה, אפשר לחזור לגרסה שהשתמשו בה קודם על ידי הפקודה החזרה. שימו לב שהנתונים הקשורים לתוכנה גם יחזרו.

$ sudo snap revert mailspring
Revert a Snap to Older Version

עכשיו כשאתם בודקים את כל השינויים של מיילספרינג, השינוי האחרון הוא נכשל, שינוי שהשתמשו בו קודם כבר פעיל.

$ snap list --all mailspring
Check Revision of Snap

נכשל/מופעל ומחיקת קטעים

אפשר להשבית קטע אם אינכם רוצים להשתמש בו. כשקטע נשבר, הבינאריים והשירותים שלו לא יהיו זמינים יותר, עם זאת, כל הנתונים יישארו.

$ sudo snap disable mailspring

אם תצטרכו להשתמש בקטע שוב, אפשר להפעיל אותו שוב.

$ sudo snap enable mailspring

להסיר לחלוטין קטע מהמערכת שלכם, השתמשו בפקודה הסרה. כברירת מחדל, כל השינויים של הקטע יוסרו.

$ sudo snap remove mailspring

להסיר שינוי מסוים, השתמשו באפשרות --revision כך.

$ sudo snap remove  --revision=482 mailspring

חשוב לציין שכאשר אתה מסיר סְנַפ, הנתונים שלו (כגון נתוני משתמשים פנימיים, מערכת ותצורה) נשמרים על ידי snapd (גרסה 2.39 ומעלה) כציפורנית, ומאוחסנים במערכת למשך 31 ימים. במקרה שתתקין מחדש את הסנאפ בתוך 31 הימים, תוכל לשחזר את הנתונים.

מסקנה

סנאפים נעשים יותר פופולריים בקהילת הלינוקס כפי שהם מספקים דרך קלה להתקין תוכנה בכל מערכת הפעלה לינוקס. במדריך זה, הראינו כיצד להתקין ולעבוד עם סנאפים בלינוקס. כיסינו איך להתקין snapd, להתקין סנאפים, לצפות בסנאפים המותקנים, לעדכן ולשחזר סנאפים, ולכבות/להדליק ולהסיר סנאפים.

אפשר לשאול שאלות או לפנות אלינו באמצעות טופס המשוב למטה. בחלק הבא של המדריך הזה, נכסה ניהול סנאפים (פקודות, שמות קיצור, שירותים וציפורניים) בלינוקס.

Source:
https://www.tecmint.com/install-snap-in-linux/