WDS فعالیت کو بڑھانا: UEFI بوٹ کی صلاحیت کو شامل کرنا

ہر کسی کو خوش!

یہ مضمون ان اقدامات کی وضاحت کرتا ہے جن کی پیروی کرنے کی آپ کو اپنے WDS میں UEFI بوٹ کی اہلیت شامل کرنے کی ضرورت ہے۔

وہ. اس مضمون میں دی گئی ہدایات یہ مانتی ہیں کہ آپ کے پاس پہلے سے درج ذیل ترتیب موجود ہے:

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

نیز، یہاں ایسے اعمال بیان کیے گئے ہیں جن کا مجھے صحیح نتیجہ نہیں ملا۔
میں نے انہیں تلاش میں سہولت اور آپ کا وقت بچانے کے لیے بیان کیا۔

کردار

میں نے بہت ساری چیزوں کے ساتھ کام پر ایک WDS بنایا، tk. فلیش ڈرائیوز کے ایک گروپ کے ساتھ مسلسل دوڑنے اور ان کو اوور رائٹ کرنے سے تھک گیا ہوں۔

ان مضامین نے میری مدد کی:
WDS استرتا کو شامل کرنا
سسٹم سینٹر کنفیگریشن مینیجر کے ساتھ PXE بوٹ مینو


ایسا لگتا ہے۔

WDS فعالیت کو بڑھانا: UEFI بوٹ کی صلاحیت کو شامل کرنا

اور سب کچھ ٹھیک تھا، لوڈنگ کے لیے نئی تصاویر شامل کی گئیں، winPE امیج کو نئی خصوصیات کے ساتھ بڑھا دیا گیا اور سب کچھ کام کر گیا۔

لیکن، تمام آلات BIOS / Legacy بوٹ موڈ کی حمایت کرتے ہیں، یا اگر وہ ایسا کرتے ہیں، تو اس کی شمولیت ایک بہت ہی غیر واضح جگہ پر ہوسکتی ہے۔

ہاں، اور ونڈوز کو لیگیسی موڈ میں انسٹال کرنا، جب UEFI میں انسٹال کرنا ممکن ہو، اچھا نہیں ہے۔

نتیجے کے طور پر، میں نے UEFI میں بوٹ کرنے کی صلاحیت کو شامل کرنے کا فیصلہ کیا، اور گوگل کے پاس گیا۔

لیکن مجھے کام کرنے والے 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
یا، اگر کسی وجہ سے یہ فائل آپ کے لیے غائب ہے، تو میں نے اسے پوسٹ کر دیا ہے۔ گوگل.
اس حل کے لیے، شکریہ دوستوں سے reddit.

اس مسئلے کے ساتھ، میں نے سب سے زیادہ وقت مارا، کیونکہ. میں نے سوچا کہ مسئلہ کہیں WDS یا DHCP کنفیگریشن میں ہے۔

مختلف آرکیٹیکچرز کے لیے وینڈر کلاسز کو شامل کرکے، اور DHCP کے اختیارات 060، 066، 067 کو ترتیب دے کر پالیسیاں ترتیب دیں۔ ہدایات DHCP پالیسیاں ترتیب دینے کے لیے۔

DHCP کو ترتیب دینے کے لیے ASCII میں آرکیٹیکچرز

PXEClient:Arch:00000 - BIOS/Legacy
PXEClient: Arch: 00006 - UEFI x86
PXEClient: Arch: 00007 - UEFI x64

اس کے علاوہ، میں نے بوٹ فائلوں کے لیے مختلف اختیارات آزمائے۔ .efi

  • سیسلنکس
  • گرب 2

میں نے ایونٹ لاگ میں بھی مسئلہ تلاش کرنے کی کوشش کی۔
win + r -> eventvwr -> Журналы приложений и служб -> Microsoft -> Windows -> Deployment-Services-Diagnostics

لیکن، جیسا کہ میں نے اوپر کہا، مسئلہ فائل میں موجود ہے۔ wdsmgfw.efi.
یا تو میں نے غلطی سے اسے خود ڈیلیٹ کر دیا، یا انسٹالیشن کے دوران اس کی کاپی نہیں کی گئی۔
اور WDS کو ترتیب دینا۔

ٹھیک ہے، چلو شروع کرتے ہیں!

ہدایات

مرحلہ 1 - تصدیق کریں کہ WDS کام کر رہا ہے۔

نیٹ ورک پر UEFI موڈ میں بوٹنگ کے لیے سپورٹ کے ساتھ کوئی بھی ڈیوائس یا ورچوئل مشین لیں اور بوٹ کرنے کی کوشش کریں۔

آپ کے پاس درج ذیل تصویر ہونی چاہیے:

WDS فعالیت کو بڑھانا: UEFI بوٹ کی صلاحیت کو شامل کرنا

اگر ایسا ہے تو، بہت اچھا، آپ جاری رکھ سکتے ہیں۔
اگر نہیں، تو دیکھو میں نے دیباچے میں کیا لکھا ہے۔

مرحلہ 2 - iPXE بوٹ فائل بنانا

ہم پہلے سے تیار شدہ اوبنٹو لانچ کرتے ہیں، ایک ٹرمینل کھولتے ہیں اور اس لائن کو پیسٹ کرتے ہیں:

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 بوٹ کی صلاحیت کو شامل کرنا

ایسا کرنے کے لیے، آپ کو اس کے مطابق، IIS کنٹرول پینل میں MIME کی قسمیں شامل کرنے کی ضرورت ہے۔
فائل ایکسٹینشن کے ساتھ جو آپ http کے ذریعے ڈاؤن لوڈ کریں گے۔

میں نے یہ نہیں دیکھا کہ اس مقصد کے لیے کون سی MIME قسم بہترین ہے، اور پوچھا application/octet-stream، جس کے بعد سب کچھ کام کر گیا۔

ان فائلوں کے لیے جن میں ایکسٹینشن نہیں ہے، ڈاٹ استعمال کریں۔

یہاں تک کہ:

WDS فعالیت کو بڑھانا: UEFI بوٹ کی صلاحیت کو شامل کرنا

حاصل يہ ہوا

بالآخر، ہمیں UEFI کے ذریعے مقامی نیٹ ورک پر بوٹ کرنے کی صلاحیت ملتی ہے۔

اگر ہم نے سب کچھ صحیح طریقے سے کیا، تو اس بوٹ سلیکشن مینو کی طرح کچھ ہوگا:

WDS فعالیت کو بڑھانا: UEFI بوٹ کی صلاحیت کو شامل کرنا

اگر آپ نے بنیادی ٹولز تیار کر لیے ہیں اور آپ کنفیگریشن سے پریشان نہیں ہوں گے، تو اس فیچر کو لاگو کرنے میں تقریباً 10-20 منٹ لگتے ہیں۔
اس میں مجھے 2 کام کے دن لگے، کیونکہ۔ مجھے بہت گوگل کرنا پڑا۔

کامیاب نفاذ!

آپ کی توجہ کا شکریہ اور ان لوگوں کا بہت شکریہ جن کے مضامین نے میری مدد کی!
Habré پر یہ ہے: انگتار и ڈیپ ٹاؤن.

ماخذ: www.habr.com

نیا تبصرہ شامل کریں