ما هو تمهيد الشبكة (PXE) وكيف يمكنك استخدامه؟



هل سبق لك أن احتجت إلى استكشاف أخطاء جهاز الكمبيوتر أو تشخيصه ونسيت مكان القرص المضغوط الخاص بالأداة؟ سنوضح لك كيفية الاستفادة من تمهيد الشبكة (PXE) مع FOG لجعل هذه المشكلة شيئًا من الماضي.

مصدر الصورة ح. كوبديلاني





نظرة عامة على PXE

PXE (بيئة ما قبل التنفيذ) ، التي تُلفظ بمودة Pixie (كما في غبار الجنية) ، هي طريقة للحصول على تمهيد الكمبيوتر (العميل) باستخدام بطاقة الشبكة الخاصة به فقط. تم إنشاء طريقة التمهيد هذه في عام 1999 وطالما أن الكمبيوتر المعني متصل بالشبكة (ويدعم هذا المعيار) ، فمن الممكن التحايل على إجراء التمهيد العادي (IE Power on -> BIOS -> HD / CD) وقم ببعض الأشياء الرائعة بدءًا من استكشاف الأخطاء وإصلاحها وحتى استخدام نظام التشغيل المباشر وحتى إعادة تصوير الجهاز…. لكننا نتقدم على أنفسنا ، فلنبدأ العودة إلى البداية .

عند استخدام PXE ، يتم تغيير عملية التمهيد من الترتيب العادي إلى:



التشغيل -> BIOS -> مكدس PXE لبطاقة الشبكة -> تنزيل برنامج تمهيد الشبكة (NBP) باستخدام TFTP من الخادم إلى ذاكرة الوصول العشوائي للعميل -> مسؤولية NBP لتنفيذ الخطوة التالية (المعروف أيضًا باسم تمهيد المرحلة الثانية).

باستخدام PXElinux NBP ، من الممكن إعداد الخادم لأكثر من برنامج تمهيد PXE واحد لعملائنا. بمعنى ما ، هو المكون السري الذي يمكننا من أداء كل ما سبق ثم بعضه. للحصول على شرح أكثر عمقًا للعملية بأكملها وتاريخها وبعض خيارات البنية التحتية التي تم تمكينها و gPXE (وهو ابن عم أكثر تطورًا) ، راجع هذه المحاضرة على موقع يوتيوب من مطوريها. أيضًا ، يوجد أدناه مقطع فيديو لإعداد من عام 2008 يتخطى بسرعة بعض إمكانيات التمهيد.

الإعلانات


ملاحظة: في هذا الفيديو ، يتم استخدام مشروع UDA المهمل كأساس للخادم ، وكانت التعليقات التوضيحية تهدف إلى توضيح الإضافات الأخيرة (في ذلك الوقت) إلى أحد الأصدقاء.



المرمى

سيكون هذا الدليل هو الأول من سلسلة أدلة حول PXEing. في هذا الدليل ، سنضع الأسس التي سنبني عليها في المقالات المستقبلية.

التوصيات والافتراضات والمتطلبات

  • جهاز العميل الذي تختبره ، يدعم تمهيد PXE وأنت تعرف كيفية تمكينها.
  • تمت كتابة هذا الدليل واختباره باستخدام Debian Squeeze وخادم Ubuntu 9.10 و Linux Mint10. لذلك يُفترض أن لديك نظامًا قائمًا على دبيان للعمل معه أيضًا.
  • قد ترغب في إلقاء نظرة على كيفية إعداد برنامج RAID لخادم ملفات بسيط و كيفية إعداد تجميع ارتباط الشبكة (802.3ad) ، لأن متطلبات النطاق الترددي للقرص والشبكة على هذا النوع من الخوادم يمكن أن تحصل بسرعة حقيقية عالية. يوصى بشدة بالبناء على أساس خادم يتمتع بمرونة عالية لشبكته وأنظمته الفرعية على القرص.
  • سترونني أستخدم VIM كبرنامج محرر ، هذا فقط لأنني معتاد عليه ... يمكنك استخدام أي محرر آخر تريده.

التركيب - الرفع الثقيل عن طريق الاستفادة من الضباب

الضباب هو حل مجاني لاستنساخ الكمبيوتر مفتوح المصدر تم إنشاؤه بواسطة * تشاك سيبرسكي وجيان تشانغ . الضباب يأخذ البرامج المتاحة بانتظام (مثل Apache و MySQL و tftpd-hpa على سبيل المثال لا الحصر) ويجمعها في حل إدارة دورة حياة الكمبيوتر الشخصي (PCLM) المجاني والمنتج. باستخدام PCLM المجاني هذا ، من الممكن إجراء نسخ احتياطي لحالة أجهزة الكمبيوتر عن طريق تصويرها ونشر البرامج والإعدادات (IE Firefox و Office والطابعات وما إلى ذلك) وسياسات التكوين (تسجيل الخروج التلقائي لـ IE وإعدادات شاشة التوقف) على سبيل المثال لا الحصر ، من خلال واحد واجهة الويب المركزية.
ملحوظة : مقابلة مع تشاك وجيان حول FOG متاحة في Tightwad Tech .

يعد استخدام FOG كأساس لخادم PXE اختصارًا رائعًا للحصول على جميع الأجزاء الضرورية مثل TFTP وإذا لزم الأمر ، DHCP في مكانه دون الحاجة إلى تثبيتها وتهيئتها يدويًا ، مع منحك جميع وظائف FOG باعتبارها علاوة .

نظرًا لأن هدفنا هو إضافة وظائف إلى هذا النظام الرائع بالفعل ، فلن نغطي كيفية استخدام FOG نفسه ، ولا إجراءات التثبيت الخاصة به بشكل متعمق. ويكي FOG ، مع كتابتهم & كيفية عمل الفيديو قوية بما يكفي للحصول على معلومات متعمقة ، إذا كنت ترغب في الاطلاع عليها. الخطوات الموجزة هي:

  • sudo mkdir -p /opt/fog-setup
    cd /opt/fog-setup

  • تحميل أحدث حزمة FOG من sourceforge إلى الدليل الذي تم إنشاؤه في الخطوة السابقة.
  • قم باستخراج الحزمة وابدأ التثبيت.

    sudo tar -xvzf fog*
    cd fog*
    cd bin
    sudo ./installfog.sh

  • سيطلب منك المثبت عدة مرات:
    1. ما هو إصدار Linux الذي ترغب في تشغيل التثبيت له؟ - 2 (مرة أخرى ، بافتراض استخدام نظام قائم على دبيان)
    2. ما هو نوع التثبيت الذي تريد القيام به؟ [N] - أدخل
    3. ما هو عنوان IP الذي يستخدمه خادم FOG هذا؟ [ تم اكتشاف خادم IP على eth0 ] - يدخل.
    4. هل ترغب في إعداد عنوان موجه لخادم DHCP؟ [نعم / لا] - أدخل.
    5. هل ترغب في إعداد عنوان DNS لخادم DHCP وصورة تمهيد العميل؟ [نعم / لا] - أدخل.
    6. هل ترغب في تغيير واجهة الشبكة الافتراضية من eth0؟ إذا لم تكن متأكدًا ، فحدد لا. [y / N] - أدخل.
    7. هل ترغب في استخدام خادم FOG لخدمة dhcp؟ [نعم / لا] - * أدخل
    8. يدعم هذا الإصدار من FOG التدويل ، هل ترغب في تثبيت حزم اللغات الإضافية؟ [نعم / لا] - ن.
    9. هل أنت متأكد من رغبتك في المتابعة (نعم / لا) - نعم.
    10. قم بالإقرار واتباع التعليمات التي تظهر على الشاشة لـ MySQL .
    11. اترك ملف كلمة مرور MySQL فارغة لحساب الجذر.
    12. هل ترغب في إخطار مجموعة FOG بهذا التثبيت؟ - نعم (موصى به)

    صورة من ويكي FOG.
  • انتقل إلى عنوان Fog باستخدام متصفحك واتبع التعليمات التي تظهر على الشاشة.

* ملحوظة : بافتراض أنك تفعل ذلك ليس لديك DHCP آخر أو أنه لم يتم إعداده للتعامل مع PXE. إذا كنت ترغب في تكوين DHCP الموجود لديك ، فراجع تكوين DHCP لـ PXE .

الإعلانات

بقدر ما يذهب تثبيت FOG ، يجب أن يكون الأمر كذلك. مرة أخرى ، في حين أن FOG هو نظام رائع ، فإن استخدامه ليس محور هذا الدليل ، ونحن نشجعك على التوجه إلى ويكي الخاص به حتى تتمكن من الحصول على فهم أفضل لقدرات FOG وكيف يمكن أن يساعدك في إدارة عملائك دورة الحياة.

إذا كان كل شيء جيدًا ، يجب أن تكون قادرًا على تشغيل PXE لجهاز العميل الخاص بك (عادةً F12) ويتم الترحيب بك من خلال القائمة الافتراضية لـ FOG.

تم التقاط الصورة بواسطة Hotfortech.

سريع طعم الأشياء القادمة يمكنك تحديد خيار Run Memtest86 + والحصول على ترحيب من خلال برنامج Memtest الذي قمنا بتغطيته في تشخيص مشاكل أجهزة الكمبيوتر باستخدام قرص Ubuntu Live CD يرشد.

هياكل الملفات والدليل

كما ذكرنا سابقًا ، هدفنا هو توسيع قدرات FOG ولتحقيق هذه الغاية سنحتاج إلى إضافة بعض الملفات والأدلة.

قم بإنشاء بنية الدليل الفرعي:

sudo mkdir -p /tftpboot/howtogeek/menus
sudo mkdir -p /tftpboot/howtogeek/linux
sudo mkdir -p /tftpboot/howtogeek/pics
sudo mkdir -p /tftpboot/howtogeek/utils

ستعمل هذه الأدلة الفرعية كقوالب لجميع الصور والبرامج والتكوينات التي سنستخدمها لتوسيع FOG.

ضبط ملف التكوين الافتراضي

سنقوم ببناء قائمة رئيسية جديدة ، ووضع جميع وظائف FOG في القائمة الفرعية الخاصة بهم.

انسخ /tftpboot/pxelinux.cfg/default ملف التكوين في howtogeek / menus / fog.cfg

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

الآن قم بتحرير محتوى الملف الافتراضي الأصلي:

sudo vim /tftpboot/pxelinux.cfg/default

اجعل محتواها يبدو كما يلي:

DEFAULT vesamenu.c32
MENU TITLE FOG 0.32 + HowToGeek's enhancements
MENU INCLUDE /pxelinux.cfg/master.cfg
menu color title 1;36;44 #ff8c00 #00000000 std
LABEL FOG
MENU LABEL Manual FOG
MENU DEFAULT
KERNEL vesamenu.c32
APPEND howtogeek/menus/fog.cfg

LABEL Utils MENU
LABEL Utilities
KERNEL vesamenu.c32
APPEND howtogeek/menus/utils.cfg

LABEL Linux
MENU LABEL Linux stuff
KERNEL vesamenu.c32
APPEND howtogeek/menus/linux.cfg
LABEL fog.local
localboot 0
MENU LABEL Boot from hard disk
TEXT HELP Boot from the local hard drive. If you are unsure, select this option.
ENDTEXT
PROMPT 0 TIMEOUT 300
ONTIMEOUT fog.local

الإعلانات

عندما ننتهي ، سيعطيك هذا التكوين 3 قوائم فرعية: Utilities ، Manual FOGing ، Linux stuff.

قم بإنشاء الملف الرئيسي

يسمح لنا الملف الرئيسي بإجراء تغييرات عامة على شكل وأسلوب القوائم دون إعادة إدخالها بشكل فردي مرارًا وتكرارًا. أشياء مثل صورة الخلفية الافتراضية ، نمط الحدود ، الموضع إلخ ، سيتم دمجها جميعًا في هذا سيد. cfg ملف.

قم بإنشاء الملف:

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

اجعل المحتوى يبدو كما يلي:

MENU BACKGROUND fog / genie.png
شاشة ألوان القائمة 37 ؛ 40 # 80ffffff # 00000000 قياسي
حد لون القائمة 30 ؛ 44 # 9370db # 00000000 std
عنوان لون القائمة 1 ؛ 36 ؛ 44 # ff8c00 # 00000000 std
لون القائمة unsel 37 ؛ 44 #ffffffff # 00000000 std
مفتاح التشغيل السريع للون القائمة 1 ؛ 37 ؛ 44 #ffffffff # 00000000 الأمراض المنقولة جنسياً
لون القائمة sel 7 ؛ 37 ؛ 40 # 4eee94 # 9370db كل شيء
لون القائمة hotsel 1 ؛ 7 ؛ 37 ؛ 40 # e0400000 # 20ff8000 الكل
لون القائمة معطل 1 ؛ 30 ؛ 44 # 60cccccc # 00000000 الأمراض المنقولة جنسياً
شريط تمرير لون القائمة 30 ؛ 44 # 40000000 # 00000000 الأمراض المنقولة جنسياً
tabmsg لون القائمة 31 ؛ 40 # 90ffff00 # 00000000 std
لون القائمة cmdmark 1 ؛ 36 ؛ 40 # c000ffff # 00000000 std
لون القائمة cmdline 37 ؛ 40 # c0ffffff # 00000000 std
لون القائمة pwdborder 30 ؛ 47 # 80ffffff # 20ffffff الأمراض المنقولة جنسيا
لون القائمة pwdheader 31 ؛ 47 # 80ff8080 # 20ffffff الأمراض المنقولة جنسيا
لون القائمة pwdentry 30 ؛ 47 # 80ffffff # 20ffffff الأمراض المنقولة جنسيا
قائمة ألوان timeout_msg 37 ؛ 40 # 80ffffff # 00000000 std
مهلة لون القائمة 1 ؛ 37 ؛ 40 # c0ffffff # 00000000 std
مساعدة لون القائمة 37 ؛ 40 # c0ffffff # 00000000 الأمراض المنقولة جنسياً
لون القائمة msg07 37؛ 40 # 90ffffff # 00000000 std

هامش القائمة 0
قائمة كلمة المرور 3
صفوف القائمة 15
21 قرصنة
القائمة CMDLINEROW 20
كلمة مرور القائمة 11
قائمة الوقت 20
HSHIFT القائمة 0
VSHIFT القائمة 0

التكوين أعلاه ، سيخلق حدودًا أرجوانية وتسليط الضوء ، إذا كنت ترغب في الحصول على شكل ومظهر مختلفين ، ما عليك سوى تغيير القيم.
لتعيين صورة خلفية ، ضع صورة في ملف / tftproot الدليل وأشر إلى MENU BACKGROUND إلى المسار النسبي للصورة (نوصي باستخدام صور بدقة 640 * 480). على سبيل المثال المسار الكامل للصورة المكونة أعلاه سيكون: /tftproot/fog/bg.png .

ذات صلة: كيفية تعيين ترتيب بحث DNS في Ubuntu 18.04 باستخدام NetPlan

قم بتوصيل القائمة الفرعية FOG بالقائمة الرئيسية

نظرًا لأننا قمنا بعمل نسخة بسيطة من ملف التكوين الأصلي في الدليل الفرعي للقوائم (مع الاحتفاظ بمخطط الألوان والمهلة وما شابه ذلك) ، إذا انتقلت إلى هذه القائمة الفرعية الآن من عميل PXE الذي تم تمهيده ، فستعمل ، لكنك ستفعل لن تتمكن من العودة إلى القائمة الرئيسية دون إعادة تشغيل الجهاز.

لذا قم بتحرير ملف /tftpboot/howtogeek/menus/fog.cfg ملف:

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

أضف هذا الإدخال بعد إدخال عنوان لون القائمة وقبل وظائف FOG:

LABEL back
MENU LABEL ..
KERNEL vesamenu.c32
APPEND pxelinux.cfg/default

إنشاء الهياكل العظمية القائمة الفرعية

لقد أنشأنا 4 قوائم فرعية ، ثلاثة منها متروك لنا لملئها. للقيام بذلك ، دعنا ننشئ النموذج الذي سنبني عليه.

قم بإنشاء ملف القالب:

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

اجعل هذا محتواه:

MENU INCLUDE /pxelinux.cfg/master.cfg
#MENU BACKGROUND howtogeek/pics/fog-sub.jpg
LABEL back MENU LABEL ..
KERNEL vesamenu.c32
APPEND pxelinux.cfg/default

cd /tftpboot/howtogeek/menus/
sudo cp template.cfg ./utils.cfg
sudo cp template.cfg ./linux.cfg

الإعلانات

لنبدأ في إعداد قوائم فرعية إضافية ، والتي سيتم تناولها في الأدلة المستقبلية:

 

هذا كل شيء ، التصميم الأساسي جاهز الآن ومن الآن فصاعدًا ، نحتاج فقط إلى البناء عليه ، وهو ما سنقوم به في المرشدين المستقبليين. حتى وصول هذه الأدلة المستقبلية ، نشجعك على التعرف على FOG لأنها رحلة مثيرة على نفسها.

تحديث: المستقبل هنا :)

كيفية تمهيد الشبكة (PXE) قرص Ubuntu LiveCD
كيفية تمهيد الشبكة لقرص BitDefender Rescue CD (PXE)
كيفية إعداد أقراص الشبكة المساعدة القابلة للتشغيل باستخدام PXE


اذهب إلى FOG بنفسك

اقرأ التالي

مقالات مثيرة للاهتمام