توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

مرحبا بالجميع!

توضح هذه المقالة الخطوات التي تحتاج إلى اتباعها لإضافة إمكانية تمهيد UEFI إلى WDS.

أولئك. تفترض الإرشادات الواردة في هذه المقالة أن لديك التكوين التالي بالفعل:

1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu

أيضًا ، تم وصف الإجراءات التي لم تجلب لي النتيجة الصحيحة.
وصفتها لتسهيل البحث وتوفير الوقت.

مقدمة

لقد صنعت WDS في العمل مع الكثير من الأشياء الجيدة ، tk. تعبت من الركض باستمرار مع مجموعة من محركات أقراص فلاش والكتابة عليها.

هذه المقالات ساعدتني بالمناسبة:
مضيفا WDS براعة
قائمة التمهيد PXE مع مدير تكوين مركز النظام


تبدو هكذا

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

وكان كل شيء على ما يرام ، تمت إضافة صور جديدة للتحميل ، واكتظت صورة winPE بميزات جديدة وعمل كل شيء.

ولكن ، بعيدًا عن جميع الأجهزة التي تدعم وضع BIOS / Legacy boot ، أو إذا كان الأمر كذلك ، فقد يكون تضمينه في مكان غير واضح تمامًا.

نعم ، وتثبيت النوافذ في الوضع القديم ، عندما يكون من الممكن التثبيت في UEFI ، ليس أمرًا رائعًا.

نتيجة لذلك ، قررت إضافة القدرة على التمهيد في UEFI ، وذهبت إلى Google.

لكنني لم أجد معلومات منظمة حول كيفية الحصول على WDS + UEFI.
في الواقع ، لهذا السبب قررت كتابة هذا المقال.

قبل أن أبدأ ، سأصف المشكلة التي استغرقت معظم الوقت.

عند إضافة UEFI إلى WDS ، يكون الوضع التالي غير الواضح أمرًا ممكنًا:

إذا قمت بإضافة ملف تمهيد إلى WDS وعند محاولة التمهيد على الجهاز
في UEFI ترى النص التالي:
The selected boot device failed. Press <Enter> to Continue.
أو Boot Device Not Found
لكن التحميل في الإرث يعمل من أجلك.
ثم أحد الخيارات الممكنة هو عدم وجود ملف wdsmgfw.efi,
على طول المسار التالي: %WDSpath%Bootx64wdsmgfw.efi

يمكنك أن تأخذه هنا: C:WindowsSystem32RemInstbootx64wdsmgfw.efi
أو ، إذا كان هذا الملف مفقودًا لسبب ما ، فقد قمت بنشره في جوجل.
على هذا الحل ، شكرا يا شباب من رديت.

مع هذه المشكلة ، قتلت معظم الوقت ، لأن. اعتقدت أن المشكلة كانت في مكان ما في تكوين WDS أو DHCP.

السياسات المكونة عن طريق إضافة فئات البائعين لمختلف البنى ، وإعداد خيارات DHCP 060 ، 066 ، 067. تعليمات لتكوين سياسات DHCP.

البنى في ASCII لتكوين DHCP

PXEClient: القوس: 00000 - BIOS / قديم
PXEClient: قوس: 00006 - UEFI x86
PXEClient: قوس: 00007 - UEFI x64

أيضًا ، جربت خيارات مختلفة لملفات التمهيد. .efi

  • syslinux
  • نكش 2

حاولت أيضًا العثور على المشكلة في سجل الأحداث.
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics

ولكن ، كما قلت أعلاه ، تكمن المشكلة في الملف wdsmgfw.efi.
إما أنني حذفته عن طريق الخطأ بنفسي ، أو لم يتم نسخه أثناء التثبيت
وتكوين WDS.

حسنًا ، لنبدأ!

تعليمات

المرحلة 1 - تحقق من أن WDS يعمل

خذ أي جهاز أو جهاز افتراضي يدعم التشغيل في وضع UEFI عبر الشبكة وحاول التمهيد.

يجب أن يكون لديك الصورة التالية:

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

إذا كان الأمر كذلك ، عظيم ، يمكنك المتابعة.
إذا لم يكن كذلك ، فراجع ما كتبته في المقدمة.

المرحلة 2 - بناء ملف تمهيد iPXE

نقوم بتشغيل Ubuntu المُعد مسبقًا ، ونفتح Terminal ولصق هذا السطر:

git clone https://git.ipxe.org/ipxe.git ipxe

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

أود هنا أن أبدي ملاحظة صغيرة مفادها أنه قد تضطر إلى إضافة حزم إلى Ubuntu ضرورية لتجميع C و C ++.
أنا فقط قمت بتثبيتها.

تم التنزيل؟ - عظيم!
أنت الآن بحاجة إلى إنشاء ملف تكوين للتجميع.
في المحطة نكتب:

cd ipxe/src
gedit chain.ipxe

والصق الكود التالي في هذا الملف ، ثم احفظه:

#!ipxe

dhcp
chain http://%IP-address-your-IIS-server%/install.ipxe

نعود إلى المحطة ونبدأ التجميع:

make bin-x86_64-efi/ipxe.efi EMBED=chain.ipxe

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

إذا كان كل شيء على ما يرام ، فيجب أن تحصل على الإخراج التالي في الجهاز:

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

وملف ipxe.efi، على طول الطريق: ipxe/src/bin-x86_64-efi/ipxe.efi
إذا كنت لا تستطيع التجميع بنفسك لسبب ما ،
لقد أرفقت خاصتي ملف.
يتم تجميعه للتمهيد من http://192.168.0.100/install.ipxe

هذا كل شيء لأوبونتو.

الخطوة 3 - إضافة ipxe.efi إلى WDS

نأخذ الملف الذي تلقينا في المرحلة الثانية وننسخه على طول الطريق:
%WDSpath%Bootx64%your-boot-folder%EFIBOOT
بعد أن نعيد تسميته إلى BOOTX64.EFI.
إنه ليس ضروريًا ، إنه فقط أكثر ملاءمة.

ثم نطلق كمد نيابة عن المسؤول ، واكتب الأوامر التالية:

wdsutil /set-server /bootprogram:Bootx64%your-boot-folder%EFIBOOTBOOTX
64.EFI /architecture:x64uefi
и
wdsutil /set-server /N12bootprogram:Bootx64%your-boot-folder%EFIBOOTBOOTX
64.EFI /architecture:x64uefi

سيؤدي هذا إلى تعيين الملف الناتج ليتم تنزيله عبر WDS.

دعنا نتحقق من التكوين:

wdsutil /get-server /Show:Config

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

قمت أيضًا بنسخ ملف ipxe.efi ، وأعدت تسميته BOOTIA32.EFI وقمت بتهيئة التمهيد له ، فقط في حالة. architecture:x86uefi
لكن بشكل عام ، هذا لا معنى له ، لأنه. لا يدعم ملف Bootmgfw.efi x86

دعنا نتحقق مما حدث.
توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI
رائع ، WDS يرسل ملفنا للتنزيل ويبحث بدوره عن التكوين على طول المسار: http://192.168.0.100/install.ipxe

الخطوة 4 - تكوين القائمة

نذهب إلى المجلد الجذر لموقعك.
الافتراضي هو: C:inetpubwwwroot

قم بإنشاء ملف نصي install.ipxe.

وتهيئته وفقًا لـ توثيق واحتياجاتك.
هناك أيضا لغة روسية описание أوامر.
انا استمتعت هذا تعليمات عند تكوين WDS.

مثال التكوين install.ipxe

#!ipxe

:start
menu Please choose an operating system to start/install
item --gap Start Win PE
item WinPE-x64 WinPE x64
item --gap ipxe shell
item shell       Drop to iPXE shell

choose target && goto ${target}

:failed
echo Booting failed, dropping to shell
goto shell

:shell
echo Type 'exit' to get the back to the menu
shell
set menu-timeout 0
set submenu-timeout 0
goto start

:WinPE-x64
kernel http://192.168.0.100/wimboot
initrd http://192.168.0.100/peSE/Boot/bcd
initrd http://192.168.0.100/peSE/Boot/boot.sdi
initrd http://192.168.0.100/peSE/Boot/peSE64.wim
boot || goto failed

يمكنك أن تقرأ عن التكوين لتحميل winPE هنا.

المرحلة 5 - أنواع MIME

بعد إنشاء القائمة وإضافة جميع الملفات الضرورية إلى مجلد جذر IIS ،
تحتاج إلى منحهم حق الوصول.

لأن حتى إذا حاولت تنزيل ملف من المتصفح ، فستتلقى خطأ في عنوانه: HTTP 404.3 - Not Found.
توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

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

لم أبحث عن نوع MIME الأفضل لهذا الغرض ، وسألت application/octet-stream، وبعد ذلك عمل كل شيء.

بالنسبة للملفات التي ليس لها امتداد ، استخدم نقطة.

هنا حتى:

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

اختتام

في النهاية ، نحصل على القدرة على التمهيد عبر شبكة محلية من خلال UEFI.

إذا فعلنا كل شيء بشكل صحيح ، فسيكون هناك شيء مثل قائمة اختيار التمهيد هذه:

توسيع وظائف WDS: إضافة إمكانية التمهيد UEFI

إذا كنت قد أعددت الأدوات الأساسية ولن تهتم بالتهيئة ، فسيستغرق تنفيذ هذه الميزة حوالي 10-20 دقيقة.
استغرق الأمر يومين عمل ، لأن. اضطررت إلى البحث في جوجل كثيرًا.

التنفيذ الناجح!

أشكركم على اهتمامكم وشكرًا جزيلاً لأولئك الأشخاص الذين ساعدتني مقالاتهم!
في حبري: إنجتار и ديبتاون.

المصدر: www.habr.com

إضافة تعليق