כיצד להשתמש בפקודת המסך של לינוקס

באמצעות screenהפקודה של לינוקס , אתה יכול לדחוף יישומי מסוף רצים לרקע ולמשוך אותם קדימה כאשר אתה רוצה לראות אותם. הוא תומך גם בתצוגות עם מסך מפוצל ועובד על חיבורי SSH, גם לאחר ניתוק וחיבור מחדש!

מהי פקודת המסך?

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

להלן המקרים הנפוצים ביותר בהם תשתמש screenבפקודה, ואנו נסקור אותם במאמר זה:

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

התקנת מסך

להתקנה screenב- ubuntu, השתמש בפקודה זו:

מסך sudo apt-get להתקין

כדי להתקין  screenב- Manjaro, השתמש בפקודה הבאה:

sudo pacman -Sy מסך

בפדורה, הקלד את הדברים הבאים:

מסך התקנת sudo dnf - -

תחילת העבודה עם המסך

כדי להתחיל screen, פשוט הקלד אותו כפי שמוצג למטה ולחץ על Enter:

מָסָך

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

אתה נשאר בשורת הפקודה, ונראה ששום דבר לא קרה. עם זאת, כעת אתה מפעיל מעטפת בתוך אמולטור מסוף מרובה-ריבועים. מדוע זה דבר טוב? ובכן, בואו נתחיל בתהליך שלוקח הרבה זמן להשלים אותו. אנו נוריד את קוד המקור לליבת הלינוקס האחרונה וננתב אותו לקובץ בשם latest_kernel.zip.

לשם כך אנו מקלידים את הדברים הבאים:

תלתל //cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.5.9.tar.xz> latest_kernel.zip

ההורדה שלנו מתחילה, curlוהפלט מראה לנו את ההתקדמות.

אנחנו לא יכולים להראות לך תמונה של הביט הבא, כי זה רצף הקשה. אתה מקליד Ctrl + A, שחרר את המקשים האלה ואז לחץ על d כדי לנתק את המסך.

תהליך ההורדה עדיין פועל אך החלון המציג את ההורדה הוסר. אתה מוחזר לחלון המסוף שממנו פתחת את screen ההפעלה. הודעה מודיעה לך screenשחלון שכותרתו 23167.pts-0.howtogeekנותק.

אתה צריך את המספר מתחילת שם החלון כדי לחבר אותו מחדש. אם אתה שוכח את זה, אתה תמיד יכול להשתמש באפשרות -ls(רשימה), כפי שמוצג להלן, כדי לקבל רשימה של החלונות המנותקים:

מסך -ls

כשתהיה מוכן, תוכל להשתמש באפשרות -r(צרף מחדש) ובמספר ההפעלה כדי לצרף אותה מחדש, כך:

מסך -r 23167

החלון שעובד ברקע מוחזר כעת לחלון המסוף שלך כאילו הוא מעולם לא עזב.

אם זה תהליך שיעבור עד לסיומו, הוא יסתיים בסופו של דבר. אם זה תהליך מתמשך, בסופו של דבר תרצה לסיים אותו. כך או כך, כאשר התהליך מסתיים, תוכלו להקליד  exit כדי לצאת מה- screen. לחלופין, אתה יכול ללחוץ על Ctrl + A ואז על K כדי להרוג חלון בכוח.

הקלד את הפקודה הבאה:

יְצִיאָה

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

קשורים: כיצד להשתמש בתלתל להורדת קבצים משורת הפקודה של לינוקס

באמצעות מושבי מסך בשם

אתה יכול להשתמש באפשרות -S(שם מושב) כדי לתת שם screenלמושב שלך . אם אתה משתמש בשם בלתי נשכח ולא בזהות המספרית של ההפעלה, זה יותר נוח להתחבר מחדש להפעלה. אנו מקלידים את הדברים הבאים כדי לקרוא למפגש שלנו "bigfile":

מסך -S bigfile

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

אנו מקלידים את הדברים הבאים:

תלתל //ipv4.download.thinkbroadband.com/1GB.zip> bigfile.zip

כאשר ההורדה מתחילה, אנו לוחצים על Ctrl + A ואז לוחצים על D כדי לנתק את ההפעלה. אנו מקלידים את הדברים הבאים כדי להשתמש באפשרות -ls(רשימה) עם screenכדי לראות את פרטי ההפעלה המנותקת שלנו:

מסך -ls

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

מסך - r bigfile

אנו מחברים מחדש לחלון ההורדות שלנו ורואים שההורדה הארוכה עדיין בעיצומה.

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

שימוש במסך עם חלונות מרובים

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

אנו מקלידים את הדברים הבאים כדי להתחיל הפעלת מסך בשם "צג":

מסך -S צג

בשורת הפקודה בפגישת החלון החדשה שלנו, נפתח dmesg ונשתמש באפשרויות -H(קריא לאדם) ו -w(המתן להודעות חדשות). פעולה זו תציג את הודעות חיץ הליבה; הודעות חדשות יופיעו כשהן מתרחשות.

אנו מקלידים את הדברים הבאים:

dmesg -H -w

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

קשורים: כיצד להשתמש בפקודה dmesg בלינוקס

אנו רוצים להריץ יישום אחר, ולכן אנו זקוקים screen לחלון חדש . אנו לוחצים על Ctrl + A ואז על C כדי ליצור חלון חדש. אנו נשתמש watchבהפעלה שוב ושוב vmstat, כך שנקבל תצוגה מעודכנת לעתים קרובות של השימוש בזיכרון הווירטואלי במחשב שלנו.

בשורת הפקודה החדשה, אנו מקלידים את הדברים הבאים:

צפה ב- vmstat

vmstatהפלט יופיע ומעדכן כל שתי שניות.

שני התהליכים שלנו פועלים כעת. כדי לקפוץ בין  screenהחלונות, לחץ על Ctrl + A ועל מספר החלון. הראשון שיצרנו הוא חלון אפס (0), הבא הוא חלון 1 וכן הלאה. כדי לקפוץ לחלון הראשון ( dmesgזה), אנו לוחצים על Ctrl + A ו- 0.

אם נלחץ על Ctrl + A ו- 1, זה מחזיר אותנו vmstatלחלון.

זה די נחמד! אנו יכולים ללחוץ על Ctrl + A, ואז על D כדי לנתק מהפגישה הזו; נוכל לחבר מאוחר יותר. שתי ההפעלות עדיין יפעלו. שוב, כדי לעבור בין החלונות, אנו לוחצים על Ctrl + A ועל המספר (0 או 1) של החלון שאליו אנו רוצים לעבור.

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

לשם כך, אנו לוחצים על Ctrl + A ואז Shift + S (נדרש "S" באותיות גדולות).

החלון מתפצל לשני "אזורים".

האזור העליון עדיין מוצג vmstat, והאזור התחתון ריק. הסמן מודגש בצילום המסך למטה. כדי להעביר אותו לאזור התחתון, אנו לוחצים על Ctrl + A ואז על Tab.

הסמן עובר לאזור התחתון, שהוא באמת שטח ריק. זה לא מעטפת, ולכן אנחנו לא יכולים להקליד בה שום דבר. כדי לקבל תצוגה שימושית, אנו לוחצים על Ctrl + A ואז לוחצים על "0" כדי להציג את dmesgהחלון באזור זה.

זה נותן לשנינו פלטים חיים בחלון מפוצל אחד. אם נלחץ על Ctrl + A ו- D כדי לנתק את החלון ואז נחבר אותו מחדש, נאבד את תצוגת החלונית המפוצלת. עם זאת, אנו יכולים לשחזר אותו באמצעות קיצורי המקשים הבאים:

  • Ctrl + A, S: פצל את החלון בצורה אופקית.
  • Ctrl + A , Tab: עבור לאזור התחתון.
  • Ctrl + A, 0: חלון תצוגה אפס באזור התחתון.

אנחנו יכולים לקחת את הדברים אפילו צעד קדימה. כעת נחלק את החלונית התחתונה אנכית ונוסיף תהליך שלישי לתצוגה. עם הסמן באזור התחתון, אנו לוחצים על Ctrl + A ו- C כדי ליצור חלון חדש עם מעטפת. האזור התחתון מציג את החלון החדש ונותן לנו שורת פקודה.

לאחר מכן, אנו מפעילים את dfהפקודה לבדוק את השימוש במערכת הקבצים:

df

כשאנחנו dfרצים, פוגעים ב- Ctrl + A ובדמות הצינור (|). זה מפצל את האזור התחתון אנכית. אנו לוחצים על Ctrl + A ועל Tab כדי לעבור לאזור החדש. לאחר מכן, אנו לוחצים על Ctrl + A ו- 0 כדי להציג את dmesgהחלון.

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

  • Ctrl + A: קפץ הלוך ושוב בין האזורים הנוכחיים והקודמים.
  • Ctrl + A, Q: סגור את כל האזורים למעט האזור הנוכחי.
  • Ctrl + A, X: סגור את האזור הנוכחי.

שימוש במסך מעל SSH

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

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

לדוגמא שלנו, אנו מקלידים את הדברים הבאים:

ssh [email protected]

לאחר האימות במחשב המרוחק והתחברות, אנו מקלידים את הדברים הבאים כדי להתחיל screenהפעלה בשם "ssh-geek":

מסך -S ssh-geek

להמחשה, אנו נפעיל  top את screenהחלון, אבל אתה יכול להתחיל בכל תהליך מתמשך או אינסופי.

אנו מקלידים את הדברים הבאים:

חלק עליון

ברגע  topשהוא פועל בחלון, אנו פוגעים ב- Ctrl + A ואז ב- D כדי לנתק את החלון.

אנו מוחזרים לחלון המסוף המקורי והמרוחק.

אם אנו מקלידים exit, כפי שמוצג למטה, הוא מנתק את הפעלת ה- SSH ונחזור למחשב המקומי שלנו:

יְצִיאָה

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

ssh [email protected]

לאחר התחברות מחדש והתחברות, אנו יכולים להקליד את הדברים הבאים כדי לצרף מחדש את screenההפעלה:

מסך -r ssh-geek

כעת אנו מחוברים מחדש למופע שעדיין פועל top.

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

קשורים: כיצד ליצור ולהתקין מפתחות SSH ממעטפת לינוקס

שיתוף מושב מסך

אתה יכול גם להשתמש screenבפגישה כדי לאפשר לשני אנשים לראות ולפעול עם אותו חלון. נניח שמישהו שמריץ את פדורה במחשב שלו רוצה להתחבר לשרת אובונטו שלנו.

הוא יקליד את הדברים הבאים:

ssh [email protected]

לאחר חיבורו, הוא מתחיל הפעלת מסך בשם "ssh-geek" באמצעות האפשרות -S (שם ההפעלה). הוא גם משתמש באפשרויות -d(ניתוק) ו  -m(יצירה כפויה) כדי ליצור screenמושב חדש שכבר מנותק.

הוא מקליד את הדברים הבאים:

מסך -d -m -S ssh-geek

הוא מקליד את הדברים הבאים, תוך שימוש באפשרות -X(מצב רב-מסכי) לצירוף ההפעלה:

מסך -X ssh-geek

במחשב Manjaro, אדם אחר מתחבר למחשב אובונטו עם אותם אישורי חשבון, כמוצג להלן:

ssh [email protected]

לאחר התחברותה, היא מקלידה את  screenהפקודה ומשתמשת באפשרות -X (מצב רב-מסכי) להצטרף לאותה הפעלת חלון, כך:

מסך -X ssh-geek

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

שני האנשים חולקים כעת screenמושב הפועל במחשב אובונטו מרוחק.

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

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