שוביט מחשוב

טיפים למתחיל בלינוקס - חלק ב'

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

Mount
איך מתנהלים הדיסקים במערכת הפעלה מסוג Windows ?
נתחיל ממשהו שכנראה רובנו מכירים. ניקח התקנה סטנדרטית של Windows, במכונה שמחובר אליה דיסק פיזי אחד. אם לא ציינו אחרת בזמן ההתקנה, ב Windows כונן C יהיה המחיצה הראשית של מערכת ההפעלה. כמו כן ישנה עוד מחיצה ברירת מחדל מסוג system, שאינה מקבלת אות כונן (כמו C). את מחיצת ה system והשימוש שלה, נשאיר בצד. להלן תמונה שמדגימה את כוונתי, שימו לב שיש דיסק פיזי אחד במערך (אינדקס - Disk 0), ובתוכו כאמור שתי מחיצות


אם ניכנס ב Windows לתוך מחיצת C, נוכל לראות את כל התיקיות המוכרות - users, program files, system ועוד. זאת אומרת, שעבור Windows המחיצה (נניח C) מהווה שורש, ובתוכה פרוס מבנה מסוים של תיקיות. לצורך הפשטות ההסבר אם נחבר דיסק פיזי חדש למחשב עם מערכת הפעלה Windows, לדיסק החדש תהיה מחיצה משלו. נקרא לה למשל D, עם היררכיית תיקיות משלהם. כמובן שזו תיהיה היררכיה שונה לעומת התיקיות שנמצאות בכונן C, וזה כי כונן C מכיל את מערכת ההפעלה. לעומתו בדרך כלל הדיסק החדש שחיברנו והמחיצה שפרמטנו (נניח כונן D) יהיה עם היררכית תיקיות משלו. תיקיות שאינן קשורות למערכת ההפעלה. ז"א, ב Windwos בדרך כלל לכל מחיצה יש הררכית תיקיות משלה.

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


מקרא קצר - המלבנים השחורים מייצגים שמות של תיקיות. המלבנים הכחולים מייצגים מחיצות שלהם בוצע Mount לתיקייה מסוימת. יש 3 מחיצות כאלו -
  • מחיצת sda1 עם Mount ל Path של / (סלאש).
  • מחיצת sda2, עם Mount ל Path של boot/
  • מחיצת sdb1 (מדובר בדיסק פיזי אחר - הסבר בהמשך) , עם Mount ל Path של mnt/
כמובן שגם בלינוקס תיקייה השורש עצמה - / מוכלת בתוך מחיצה, אבל ההבדל בין הלינוקס ל Windows הוא כאמור, שבלינוקס כל מחיצה נוספת שתחובר (נניח על ידי הוספת דיסק חדש למכונה). תהיה מוכרחת להיות mounted ל Path (תיקייה) במערכת הלינוקס. ז"א, שבלינוקס היררכיית התיקיות (לפעמים מכונה File System) זה המבנה הראשי, ועל היררכיית התיקיות האלו עושים הרכבה (Mount) לדיסקים או מחיצות. כמובן שגם בווינדוס יד אפשרות לעשות mount למחיצה חדשה בתוך כונן קיים, אבל בדרך כלל זה לא המצב שתראו.

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


בצילום המסך המצורף מה שרלוונטי מבחינתנו אלו העמודות הראשונה - NAME, העמודה לפני האחרונה - TYPE, העמודה והאחרונה Mounted Point. אנו יכולים להסיק שיש דיסק פיזי אחד - nvme0n1 שמחולקת לשתי מחיצות המחיצה הראשונה -nvme0n1p1 - היא המחיצה הראשית ה / סלאש יחיד. היא השורש של הכל. המחיצה השנייה nvme0n1p128 היא מחיצה נוספת שיושבת בתוך תיקייה שנקראת boot. lsblk זה כלי שקצת מזכיר את Util ה GUI של Windows שנקרא Disk management (diskmgmt.msc). רק שבכלי של Windows אפשר גם לראות את ה File System (נושא אחר לגמרי) של כל מחיצה, לעומת זאת ב lsblk לא רואים זאת.

יש עוד דרכים שבהם ניתן להציג את מצב ה Mount. למשל, פקודת mount או להתסתכל בתוך etc/fstab/, אבל אפשר מעט להתבלבל בקריאת המידע שמוצג שם, משום שמוצג גם mount של רכיבים שאינם דיסקים פיזיים או מחיצות. בסך הכל פקודת lsblk נותנת מידע בסיסי מספיק לצורך הבנה בסיסית של מצב ה Mount עבור מערכת Linux נתונה.