תהליך האתחול של לינוקס - 6 שלבים המתוארים בפירוט

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

1. BIOS

BIOS מייצג מערכת קלט / פלט בסיסית. במילים פשוטות, ה- BIOS טוען ומבצע את מטעין האתחול Master Boot Record (MBR).

כאשר אתה מפעיל את המחשב לראשונה, ה- BIOS מבצע תחילה כמה בדיקות תקינות של הכונן הקשיח או ה- SSD.

לאחר מכן, ה- BIOS מחפש, טוען ומבצע את תוכנית טעינת האתחול, אשר ניתן למצוא ברשומת האתחול הראשית (MBR). ה- MBR נמצא לפעמים על מקל USB או CD-ROM כמו למשל עם התקנה חיה של לינוקס.

לאחר שהתוכנית לטעינת האתחול מזוהה, היא נטענת בזיכרון וה- BIOS נותן לה שליטה על המערכת.

2. MBR

MBR מייצג Master Boot Record, והוא אחראי על טעינה והפעלה של מטעין האתחול GRUB.

ה- MBR ממוקם בגזרה הראשונה של הדיסק האתחול, שהוא בדרך כלל /dev/hda, או /dev/sda, תלוי בחומרה שלך. ה- MBR מכיל גם מידע על GRUB, או LILO במערכות ישנות מאוד.

3. GRUB

לפעמים נקרא GNU GRUB, הקיצור של GNU GRand Unload Bootloader, הוא מטעין האתחול האופייני לרוב מערכות הלינוקס המודרניות.

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

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

במערכות רבות ניתן למצוא את קובץ התצורה של GRUB בכתובת /boot/grub/grub.confאו /etc/grub.conf. הנה דוגמה grub.confלקובץ פשוט :

#boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/boot/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.18-194.el5PAE) root (hd0,0) kernel /boot/vmlinuz-2.6.18-194.el5PAE ro root=LABEL=/ initrd /boot/initrd-2.6.18-194.el5PAE.img

4. ליבה

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

בשלב זה של תהליך האתחול, הליבה שנבחרה על ידי GRUB מכניסה תחילה את מערכת קבצי השורש שצוינה grub.confבקובץ. ואז הוא מבצע את /sbin/initהתוכנית, שהיא תמיד התוכנית הראשונה שמבוצעת. אתה יכול לאשר זאת באמצעות מזהה התהליך שלו (PID), שתמיד צריך להיות 1.

הליבה מקימה מערכת קבצי שורש זמנית באמצעות דיסק RAM ראשוני (initrd) עד להתקנת מערכת הקבצים האמיתית.

5. ראשוני

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

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

לרמת ריצה 0 תואם poweroff.target (ו- runlevel0.target הוא קישור סמלי ל- poweroff.target ).

רמת 1 הפעל משתווה rescue.targetrunlevel1.target הוא קישור סמלי rescue.target ).

רמה 3 של ריצה נחקה על ידי multi-user.target (ו- runlevel3.target הוא קישור סמלי ל- multi-user.target ).

רמת 5 Run הוא חיקוי graphical.targetrunlevel5.target הוא קישור סמלי graphical.target ).

רמה 6 של ריצה נחקה על ידי reboot.target (ו- runlevel6.target הוא קישור סמלי ל- reboot.target ).

חירום תואם לפי emergency.target .

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

6. תוכניות Runlevel

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

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

  • הפעל רמה 0 - /etc/rc0.d/
  • הפעל רמה 1 - /etc/rc1.d/
  • הפעל רמה 2 - /etc/rc2.d/
  • הפעל רמה 3 - /etc/rc3.d/
  • הפעל רמה 4 - /etc/rc4.d/
  • הפעל רמה 5 - /etc/rc5.d/
  • הפעל רמה 6 - /etc/rc6.d/

Note that the exact location of these directories varies from distribution to distribution.

If you look in the different run level directories, you'll find programs that start with either an "S" or "K" for startup and kill, respectively. Startup programs are executed during system startup, and kill programs during shutdown.

That's everything you need to know about the Linux booting process. Now go out there and make Tux proud.