מהו אתחול רשת (PXE) וכיצד ניתן להשתמש בו?

האם היית צריך פעם לפתור או לאבחן מחשב בעייתי ושכחת היכן נמצא תקליטור השירות? אנו נראה לך כיצד להשתמש באתחול רשת (PXE) עם FOG כדי להפוך את הבעיה לשם דבר.

תמונה של h.koppdelaney

סקירה כללית של PXE

PXE (Pre eXecution Environment), מבוטא בחיבה פיקסי (כמו באבק פיות), הוא שיטה לאתחל מחשב קצה (לקוח) באמצעות כרטיס הרשת שלו בלבד. שיטת אתחול זו נוצרה עוד בשנת 1999 וכל עוד המחשב המדובר מחובר לרשת (ותומך בתקן זה), ניתן לעקוף את הליך האתחול הרגיל (IE Power on -> BIOS -> HD / CD) ולעשות כמה דברים נחמדים החל מפתרון בעיות, שימוש ב- liveOS ואפילו הדמיה מחודשת של המכונה .... אבל אנחנו מקדימים את עצמנו מאפשרים לחזור להתחלה.

בעת שימוש ב- PXE תהליך האתחול משתנה מהסדר הרגיל ל:

הפעל -> BIOS -> מחסנית ה- PXE של כרטיס הרשת -> תוכנית אתחול הרשת (NBP) שהורדה באמצעות TFTP מהשרת ל- RAM של הלקוח -> האחריות של NBP לבצע את השלב הבא (aka אתחול שלב שני).

באמצעות NBP "PXElinux", ניתן להגדיר את השרת ליותר מתוכנית אתחול PXE אחת בלבד עבור לקוחותינו. במובן מסוים, זה המרכיב הסודי שמאפשר לנו לבצע את כל האמור לעיל ואז כמה. לקבלת הסבר מעמיק יותר על התהליך כולו, ההיסטוריה שלו וכמה מאפשרויות התשתית שהוא ו- gPXE (שהוא בן דודה מפותח יותר) מאפשרים, עיין בהרצאה זו ב- YouTube ממפתחים שלהם. כמו כן, להלן סרטון של התקנה משנת 2008 שעובר במהירות על כמה מאפשרויות האתחול.

מטרה

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

המלצות, הנחות ותנאים מוקדמים

  • מכונת הלקוח איתה אתה בודק תומכת באתחול PXE ואתה יודע כיצד להפעיל אותו.
  • מדריך זה נכתב ונבדק באמצעות Debian Squeeze, שרת אובונטו 9.10 ו- Linux Mint10. לכן ההנחה היא שיש לך מערכת מבוססת דביאן לעבוד איתה גם.
  • יתכן שתרצה לבדוק כיצד להתקין תוכנת RAID עבור שרת קבצים פשוט וכיצד להתקין את צבירת קישורי הרשת (802.3ad), מכיוון שדרישות רוחב הפס של הדיסק ורשת על סוג זה של שרת יכולות להגיע לאמיתות גבוהה מאוד. מומלץ מאוד לבנות על בסיס של שרת עם גמישות גבוהה עבור מערכות הרשת והדיסק שלו.
  • אתה תראה אותי משתמש ב- VIM כתוכנת העורך, זה רק בגלל שאני רגיל לזה ... אתה יכול להשתמש בכל עורך אחר שתרצה.

התקנה - הרמה כבדה על ידי מינוף FOG

FOG הוא פתרון לשיבוט מחשבים עם קוד פתוח בחינם, שנוצר על ידי * צ'אק סיפרסקי וג'יאן ג'אנג. FOG לוקח תוכנות זמינות באופן קבוע (כמו אפאצ'י, MySQL ו- tftpd-hpa כדי להזכיר כמה) ומארז אותן לפתרון ניהול מחזור חיי PC (PCLM) בחינם וממוצר. באמצעות PCLM חינמי זה ניתן לגבות מצב של מחשבים על ידי הדמיה, לפרוס תוכניות והגדרות (IE Firefox, Office, מדפסות וכו ') ומדיניות תצורה (IE אוטומטית של הגדרות כניסה ושומרי מסך) להזכיר כמה, דרך אחת ממשק אינטרנט מרכזי.


הערה : ראיון עם צ'אק וג'יאן בנושא FOG זמין ב- Tightwad Tech.

השימוש ב- FOG כבסיס לשרת PXE שלך, הוא קיצור דרך נהדר לקבל את כל החלקים הדרושים כמו TFTP, ואם נדרש, DHCP במקום ללא צורך להתקין ולהגדיר אותם באופן ידני, תוך מתן בונוס לכל הפונקציונליות של FOG .

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

  • sudo mkdir -p /opt/fog-setup

  • Download the latest FOG packagefrom sourceforge to the directory created in the previous step.
  • Extract the package and start the installation.


    sudo tar -xvzf fog*

  • You will be prompted several times by the installer:


    3. What is the IP address to be used by this FOG Server? [server-IP-detected-on-eth0] – Enter.


    10. Acknowledge and follow the on screen instructions for MySQL.


    11. Leave the MySQL password blank for the root account.



    Image from the FOG wiki.

  • Go to the Fog address with your browser and follow the on screen instructions.

*Note:  Assuming you do NOT have another DHCP  or that it is not setup to handle PXE. If you want to configure your existing DHCP, see Configure DHCP for PXE.

As far as installing FOG goes, that should be it. Again, while FOG is a great system, using it, is not the focus of this guide, and we encourage you to head over to it’s wiki so you can get a better grasp of FOG’s abilities and how it can help you to manage your clients lifecycle.

If all when well you should be able to PXE boot your client machine (usually F12) and get greeted by FOG’s default menu.


As a quick “taste of things to come” you may select the “Run Memtest86+” option and get greeted by the Memtest program we covered in our “Diagnose PC Hardware Problems with an Ubuntu Live CD” guide.

File and directory Structures

As stated earlier, our aim is to extend FOG’s abilities and to that end we will need to add some files and directories.

Create the subdirectory structure:

sudo mkdir -p /tftpboot/howtogeek/menus

These sub-directories will serve as templates for all the pictures, programs and configurations we will use to extend FOG.

Adjusting the “default” configuration file

We will build a new main menu, and put all of the FOG functions into their own sub-menu.

Copy the /tftpboot/pxelinux.cfg/default configuration file into howtogeek/menus/fog.cfg

sudo cp /tftpboot/pxelinux.cfg/default /tftpboot/howtogeek/menus/fog.cfg

Now edit the content of the original “default” file:

sudo vim /tftpboot/pxelinux.cfg/default

Make its content look like this:

DEFAULT vesamenu.c32


LABEL FOG


KERNEL vesamenu.c32


APPEND howtogeek/menus/fog.cfg

LABEL Utils MENU

LABEL Linux


LABEL fog.local

When we finish, this configuration will give you 3 sub-menus: “Utilities”, “Manual FOGing”, “Linux stuff”.

Create the “master” file

The master file allows us to make global changes to the look and feel of the menus without reentering them individually over and over. Things like the default background picture, border stile, position Etc’, will all be consolidated in this master.cfg file.

Create the file:

sudo vim /tftpboot/pxelinux.cfg/master.cfg

Make it’s content look like:

MENU BACKGROUND fog/genie.png

MENU MARGIN 0

The configuration above, will create the purple borders and highlighting, if you whish to have a different look and feel, simply change the values.


To set a background picture, put a picture in the “/tftproot” directory and point the “MENU BACKGROUND” to the picture’s relative path (we recommend using pictures with resolution of 640*480). For example the full path for the above configured picture would be: “/tftproot/fog/bg.png“.

Connect the FOG sub-menu to the main menu

Because we made a simple copy of the original configuration file into the menus sub-directory (keeping its color schema, timeouts and alike), if you go into this sub-menu now from the PXE booted client, it would work, but you will not be able to return to the main menu without rebooting the machine.

So edit the /tftpboot/howtogeek/menus/fog.cfg file:

sudo vim /tftpboot/howtogeek/menus/fog.cfg

Add this entry after the “menu color title” entry and before the FOG functions:

LABEL back

Create the sub menu skeletons

We have created 4 sub-menus, three of them are up to us to fill. To do so, lets create the template that we will be building on.

Create the template file:

sudo vim /tftpboot/howtogeek/menus/template.cfg

Make this its content:


  

MENU INCLUDE /pxelinux.cfg/master.cfg

Lets set the stage for additional sub-menus, which will be covered in future guides:


  

cd /tftpboot/howtogeek/menus/

That’s it, the basic layout is now ready and from now on, we only need to build upon it, which we will in future guides. Until these future guides arrive, you are encouraged to get familiar with FOG as it is an exciting ride upon it’s self.

Update: The future is here :)

How To Network Boot (PXE) The Ubuntu LiveCD

Go FOG yourself