מולטי בוט למתחילים מאת מתחיל.

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

כמה מושגים שימושיים לעניין:

מחיצה (partition) היא חלק מכונן קשיח או אמצעי אחסון שמוגדרת כמעין "דיסק נפרד". בד"כ בסיטואציות של מולטי בוטינג כל מערכת הפעלה יושב על מחיצה (או מחיצות) משלה. ישנן מחיצות ראשיות (primary) ומחיצות לוגיות (logical). בגדול, ווינדוז אוהב מחיצות ראשיות וללינוקס לא אכפת אם המחיצות ראשיות או לוגיות. בכוננים בפורמט MBR יכולות להיות רק ארבע מחיצות ראשיות, או שלוש ראשיות וכמה לוגיות שרוצים. כדאי לשים לב לזה, כי התקנות נפוצות של ווינדוז תופסות שלוש מחיצות ראשיות בעצמן כבר בברירת מחדל.

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

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

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

MBR הוא אזור בתחילת הכונן הקשיח הראשון במחשב בו ה-BIOS מחפש בוטלואודר.

ולעניין

אחד הדברים שנתקלתי בהם בנסיונותיי בתחום המולטי בוטינג (ההרצה במקביל של כמה מערכות הפעלה) היא ההתנגשויות והבעיות שנוצרות לא פעם מכך שכל דיסטרו חדש מתקין את GRUB2 מחדש ב-MBR ודורס את ה-GRUB2 מההתקנה הקודמת. הדבר הזה יוצר מצב שבו המערכות הקודמות נשארות מיותמות מבוטלואודר ותלויות בהתקנה החדשה והבוטלואודר שלה לפעילות. דרך אחת לפתור את זה היא לא להתקין להתקנות החדשות GRUB2 ולקנפג את GRUB2 מההתקנה הראשית להעלות אותם. אלא שלפעמים זה עשוי להיות קצת מסובך לגלות איפה נמצאת האפשרות הזאת. האפשרות המועדפת עלי? להתקין את GRUB2, אבל להתקין אותו במחיצה של מערכת ההפעלה החדשה. זה משאיר את ה-MBR עם הבוטלואודר של מערכת ההפעלה הראשונה. GRUB2 שנמצא ב-MBR (אם הוא הבוטולואודר של מערכת ההפעלה הראשונה) ימצא את מערכת ההפעלה החדשה ברוב המקרים (אם לא, ניתן לקנפג אותו ידנית לעניין. על כך בהזדמנות אחרת או במקומות אחרים ברשת) ולא יידרס. אבל צורת ההתקנה הזאת נותנת גם אפשרות של טעינה משורשרת (chainloading) של מערכת ההפעלה.

איך עושים את זה?

צריך לבחור התקנה ידנית (או something else באובונטו ושלוחותיו). שם, לאחר שיוצרים ו/או בוחרים את המחיצה לספריית ה-ROOT ניתן לבחור היכן להתקין את GRUB2, על הכונן הקשיח כולו (כלומר ב-MBR) או על אחת המחיצות. יש לבחור את אותה המחיצה שנבחרה בשביל ה-ROOT.

צ'יינלואודינג

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

#!/bin/sh -e
echo "Adding Xubuntu"
cat << EOF
menuentry "Xubuntu" {
set root=(hd0,7)
chainloader (hd0,7)+1
}
EOF

זה קובץ פשוט בתכלית. אחרי echo בהתחלה צריך לכתוב משהו, זה לא כ"כ חשוב, זה רק מה שנכתב כשמריצים את grub-update (ראו להלן). הדבר הבא שצריך לשנות זה את שם הפריט אחרי menuentry. לאחר מכן כותבים את המחיצה (במקרה הזה המחיצה השביעית (7) בכונן הקשיח הראשון (0). כן, את הכוננים סופרים מ-0 ואת המחיצות מ-1. לכו תבינו.

הקובץ יושב בתיקיה:

/etc/grub.d/

קראתי לקובץ:

11_xubuntu

המספר בראשית השם קובע את מיקום הפריט בתפריט של GRUB2

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

chmod +x 11_xubuntu

ולאחר מכן להריץ את הפקודה שמעדכנת את התפריטים של GRUB2:

update-grub

זהו!

 

צ'יינלואודינג מהבוטלואודר של ווינדוז

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

מודעות פרסומת