افزودن قابلیت تطبیق پذیری WDS

بعد از ظهر بخیر، ساکنان عزیز حبره!

هدف از این مقاله نوشتن مروری کوتاه بر امکانات استقرار سیستم های مختلف از طریق WDS (Windows Deployment Services) است.
در این مقاله دستورالعمل های مختصری برای استقرار Windows 7 x64، Windows XP x86، Ubuntu x64 و افزودن ابزارهای مفید به بوت شبکه مانند Memtest و Gparted ارائه می شود.
داستان به ترتیب ایده هایی که به ذهنم می رسد بیان خواهد شد. و همه چیز با مایکروسافت شروع شد...

و حالا خود داستان:
چندی پیش، ایده معقولی برای استقرار سیستم ها در محل کار با استفاده از WDS پیدا کردم. اگر کسی کار را برای ما انجام دهد، خوب است. و اگر در همان زمان چیز جدیدی یاد بگیریم، دوچندان خوشایند است. من با جزئیات زیاد در مورد توضیح نصب نقش WDS صحبت نمی کنم - مایکروسافت همه چیز را به Next-Next-Next خلاصه می کند و کوه هایی از مقالات در مورد این موضوع وجود دارد. و من به طور خلاصه در مورد کار با تصاویر ویندوز به شما خواهم گفت، با تمرکز بر آن لحظاتی که برای من مشکل ایجاد کرد. سیستم های غیر مایکروسافت با جزئیات بیشتر توضیح داده خواهد شد (که مقاله برای آن شروع شده است).
بیایید شروع کنیم.
سروری که به‌عنوان هماهنگ‌کننده عمل و ذخیره‌سازی تصویر عمل می‌کند، دارای Windows Server 2008 R2 است. برای اینکه این سرویس به درستی کار کند، نقش هایی مانند DHCP و DNS مورد نیاز است. خوب، AD برای وارد کردن ماشین ها به دامنه است. (همه این نقش ها لازم نیست روی یک دستگاه نگه داشته شوند، آنها می توانند در کل ساختار پخش شوند. نکته اصلی این است که آنها به درستی کار می کنند)

1. راه اندازی WDS

ما نقش های لازم را اضافه می کنیم و به سرعت وارد کنسول WDS می شویم، سرور خود را مقداردهی اولیه می کنیم و موارد زیر را مشاهده می کنیم:
افزودن قابلیت تطبیق پذیری WDS

  • تصاویر را نصب کنید - تصاویر نصب سیستم های سفارشی و زیبا که ما آنها را عرضه خواهیم کرد. برای راحتی، می توانید چندین گروه را بر اساس نوع سیستم اضافه کنید: Windows 7، XP یا بر اساس نوع وظیفه - بخش فناوری اطلاعات، بخش مشتری، سرورها
  • بوت تصاویر - بارگذاری تصاویر آنچه ابتدا روی دستگاه بارگذاری می شود و به شما امکان می دهد انواع اقدامات را با آن انجام دهید. اولین تصویری که به آنجا می رود تصویری است که روی دیسک نصب است (برای ویندوز 7 این پوشه sources و فایل های install.wim یا boot.wim است.
    اما پس از آن می توانید انواع کارهای جالب را از آنها انجام دهید:

    • عکس گرفتن یا ضبط تصویر - ابزار اصلی ما به شما امکان می دهد یک کپی از سیستم پیکربندی شده تهیه کنید، که قبلا توسط sysprep پردازش شده و الگوی ما است.
    • تصویر کشف - به شما امکان می دهد تصاویر سیستم های پیکربندی شده را در رایانه هایی بارگذاری کنید که از بوت شدن شبکه پشتیبانی نمی کنند.

  • دستگاه های معلق - دستگاه‌هایی که منتظر تأیید سرپرست برای نصب هستند. ما می خواهیم بدانیم چه کسی جذابیت ما را روی رایانه خود می گذارد.
  • انتقال چندپخشی - ارسال چندپخشی برای نصب یک تصویر به تعداد زیادی از مشتریان استفاده می شود.
  • درایور - رانندگان آنها به اضافه کردن درایورهای لازم به تصاویر روی سرور کمک می کنند و از این نوع خطاها جلوگیری می کنند:
    افزودن قابلیت تطبیق پذیری WDS
    پس از افزودن درایورها به سرور WDS، آنها باید به تصویر بوت مورد نظر اضافه شوند.

بله، و یک چیز دیگر - شما باید بوت لودرها و نصب کننده های خود را برای هر عمق بیت سیستم بسازید. تنوع در باغ وحش قیمتی دارد.
در واقع، WDS ما از قبل آماده است. ما می توانیم از طریق شبکه از دستگاه بوت شویم و یک پنجره انتخاب را با تصاویر بوت خود ببینیم.
من تمام مراحل تهیه تصویر ایده آل را شرح نمی دهم، اما فقط یک پیوند به مقاله ای که خودم استفاده کردم می گذارم: Tyts برای ویندوز 7 (به دلایلی نسخه قدیمی WAIK را نصب کرده بودم - 6.1.7100.0، امکان ایجاد یک فایل پاسخ برای Windows 7 SP1 در آن غیرممکن بود. من در حال حاضر به آخرین آن نیاز دارم - 6.1.7600.16385)
و همینطور بیشتر دستورالعمل های آماده سازی ویندوز XP برای WDS. ما نیز با جزئیات نخواهیم نوشت - جالب ترین چیزها در قسمت دوم است!

2. بوت لودر جهانی

خیلی خوب است که ما اکنون چنین سیستمی داریم. استفاده از آن لذت بخش است. اما آیا راهی برای آسان کردن زندگی شما وجود دارد؟
من میخوام لینوکس رو از طریقش نصب کنم!
اول از همه، همانطور که بسیاری از شما به یاد دارید، نصب ویندوز و اوبونتو به صورت موازی برای بوت لودر ویندوز پایان خوبی ندارد. با GRUB جهانی جایگزین شده است.
اینجا هم همینطوره ما به یک بوت لودر جهانی نیاز داریم، این را برآورده کنید PXELINUX
1) دانلود آخرین نسخه (در زمان نوشتن این است 5.01
ما به این فایل ها علاقه مندیم:
corepxelinux.0
com32menuvesamenu.c32 (شما می توانید menu.c32 را برای رابط متنی هنگام بارگیری استفاده کنید)
com32chainchain.c32
تمام راهنماهای استفاده از این بوت لودر می گوید که همه چیز با این سه مورد کار می کند. مجبور شدم ldlinux.c32، libcom.c32 و libutil_com.c32 را اضافه کنم. می توانید این کار را انجام دهید - موارد توصیه شده را کپی کرده و اجرا کنید. کدام فایل مورد شکایت قرار می گیرد - آن را در پوشه کپی کنید.
برای دانلود iso به فایل memdisk هم نیاز داریم. ما هم در این پوشه قرار می دهیم
2) آنها را در پوشه ای که تمام تصاویر WDS را در آن ذخیره می کنید قرار دهید. یعنی در اینجا - RemoteInstallBootx64 (ما فقط 64 را نصب می کنیم، برای 86 فایل های مشابه را نیز در آن پوشه قرار می دهیم.)
3) نام pxelinux.0 را به pxelinux.com تغییر دهید
4) بیایید ایجاد کنیم پوشه pxelinux.cfg برای فایل پیکربندی، خود فایل (البته از قبل در داخل این پوشه قرار دارد) پیش فرض (بدون پسوند!) با محتوای زیر است:

پیش فرض vesamenu.c32
PROMPT 0
NOESCAPE 0
ALLOWOPTIONS 0
# تایم اوت در واحد 1/10 ثانیه
تایم اوت 300
حاشیه منو 10
ردیف های منو 16
منو Tabmsgrow 21
منوی TIMEOUTROW 26
حاشیه رنگی منو 30;44 #20ffffff #00000000 هیچکدام
نوار پیمایش رنگی منو 30;44 #20ffffff #00000000 هیچ
عنوان رنگ منو 0 #ffffffff #00000000 هیچ
رنگ منو SEL 30;47 #40000000 #20ffffff
پس‌زمینه منو pxelinux.cfg/picture.jpg #تصویر 640×480 برای پس‌زمینه
عنوان منو سرنوشت خود را انتخاب کنید!

LABEL wds
MENU LABEL خدمات استقرار ویندوز (7، XP، تصاویر بوت)
هسته pxeboot.0

LABEL محلی
منوی پیش فرض
MENU LABEL بوت از هارددیسک
BOOT 0
0x80 را تایپ کنید

5) از فایل pxeboot.n12 کپی کنید و آن را pxeboot.0 بنامید
6) پس از این، باید WDS خود را آموزش دهیم که از بوت لودر جهانی بوت شود. در سال 2008 این کار از طریق رابط کاربری گرافیکی انجام شد، در سال 2008 R2 - از طریق خط فرمان. باز کنید و وارد کنید:

  • wdsutil /set-server /bootprogram:bootx64pxelinux.com /architecture:x64
  • wdsutil /set-server /N12bootprogram:bootx64pxelinux.com /architecture:x64

خروجی خط فرمان:
افزودن قابلیت تطبیق پذیری WDS
تمام شد، ما بوت می شویم و صفحه مورد علاقه را می بینیم:
افزودن قابلیت تطبیق پذیری WDS
این یک کانفیگ اولیه است، شما می توانید آن را مطابق با نیاز خود تنظیم کنید (لوگوی شرکت، سفارش بوت و غیره. فعلاً فقط می تواند کنترل را به WDS منتقل کند و دوباره از هارد درایو بوت شود. بیایید راه اندازی اوبونتو را به آن آموزش دهیم!

3. آموزش پرواز به عقاب

آنجا چه نیازی داشتیم؟ اوبونتو، Gparted؟ بیایید memtest را برای سفارش اضافه کنیم.
بیایید با ساده ترین شروع کنیم:
memtest
بیایید یک پوشه جداگانه برای فایل های لینوکس در پوشه Boot/x64 WDS ایجاد کنیم، به عنوان مثال Distr. و زیر پوشه های موجود در آن برای سیستم های مربوطه ما:
افزودن قابلیت تطبیق پذیری WDS
در حال بارگیری iso mtmtest و خطوط زیر را به پیکربندی دانلود (فایل پیش فرض) اضافه کنید:

برچسب MemTest
برچسب منو MemTest86+
کرنل memdisk iso raw
initrd Linux/mt420.iso

با این کار تصویر کوچک خود را در حافظه بارگذاری کرده و از آنجا راه اندازی می کنیم. متأسفانه، این برای من با تصاویر بزرگ کار نمی کند.

شکافته شد
در حال بارگیری آخرین نسخه، تصویر iso را باز کنید و سه فایل را بردارید - /live/vmlinuz، /live/initrd.img و /live/filesystem.squashfs
این فایل ها چیست؟ (ممکن است در جمله بندی اشتباه کرده باشم، از خوانندگان خواهش می کنم اگر اشتباه می کنم، مرا تصحیح کنند)

  • vmlinuz (معمولاً vmlinux دیده می شود) - فایل هسته فشرده
  • initrd.img - تصویر سیستم فایل ریشه (حداقل مورد نیاز برای بوت شدن)
  • filesystem.squashfs - خود فایل‌ها در حین کار استفاده می‌شوند

دو فایل اول را در پوشه دانلود قرار می دهیم (در مورد من Bootx64DistrGparted است) و سومی را در سرور IIS (خوشبختانه قبلاً برای WSUSa نصب شده است).
یک انحراف غزلی - متأسفانه، ترفند بارگیری یک تصویر iso در یک memdisk با توزیع های بزرگ برای من کار نکرد. اگر به طور ناگهانی راز موفقیت را بدانید، این یک راه حل عالی خواهد بود که به شما امکان می دهد هر سیستمی را به سرعت از یک تصویر iso بوت کنید.
فایل system.squashfs را به IIS اضافه کنید تا بتوان آن را از طریق شبکه خواند (فراموش نکنید یک تگ MIME برای این پسوند اضافه کنید
افزودن قابلیت تطبیق پذیری WDS
اکنون یک ورودی به pxelinux.cfg/default خود اضافه می کنیم:

LABEL GParted Live
برچسب منو GPARTED LIVE
KERNEL Distr/Gparted/vmlinuz
APPEND initrd=Distr/Gparted/initrg.img boot=live config union=aufs noswap nopromt vga=788 fetch=http://192.168.10.10/Distr/Gparted/filesystem.squashfs

بیایید بررسی کنیم - کار می کند!
اوبونتو 12.04
من دو گزینه نصب احتمالی را اضافه کرده ام - کاملاً خودکار (با تشکر از کاربر مالاموت ها برای یک مقاله و در حالت دستی)
فایل را با نصب جایگزین دانلود کنید و دو فایل را از آنجا جدا کنید (مانند قبل) - initrd.gz و linux و در Distr/Ubuntu قرار دهید.
خطوط را به pxelinux.cfg/default اضافه کنید
برای نصب کاملا دستی

LABEL اوبونتو
KERNEL Distr/Ubuntu/linux
APPEND priority=low vga=normal initrd=Distr/Ubuntu/initrd.gz

اما برای نصب خودکار به یک فایل با تنظیمات پاسخ نیاز دارید (می توانید بخوانید اینجا) و آن را روی وب سرور خود قرار می دهیم. خط بوت لودر من به شکل زیر است:

LABEL نصب خودکار اوبونتو
KERNEL Distr/Ubuntu/linux
APPEND initrd=Distr/Ubuntu/initrd.gz ksdevice=eth0 locale=ru_RU.UTF-8 console-setup/layoutcode=ru url=http://192.168.10.10/Distr/Ubuntu/preseed.txt

برای آینده مفید است
در حالی که مطالب مربوط به موضوع را بررسی می کردم و به دنبال پاسخ سوالاتم بودم، متوجه شدم مقاله فوق العاده از الکساندر_اروفیف با توضیح دانلود Kaspersky Rescue Disk از طریق شبکه. متأسفانه برای من این کار انجام نشد. اما این ابزار واقعاً مفید است (نه، نه، مخصوصاً کاربران غیور چنین چیزی را می گیرند ... داشتن چنین ابزاری در دست مفید است)

نتیجه

این مقاله مروری بر قابلیت هایی است که نقش Microsoft WDS برای شما فراهم می کند. وقتی این مقاله را شروع کردم، برنامه‌ها بسیار بزرگ بودند: یک روش دقیق درباره همه جنبه‌های بارگذاری سیستم‌ها که در بالا ارائه شد... اما زمانی که مطالب فقط در خود WDS جمع‌آوری شد، رشته روایت من را به عمقی رساند که هیچ‌کس احتمالاً... بنابراین تصمیم گرفته شد خلاصه ای کوتاه از آنچه ممکن است و در صورت امکان پیوندهایی به مقالات خوب به اشتراک بگذاریم. اگر خوانندگان علاقه مند به مطالعه هستند، یا من ناگهان شهرت و پول می خواهم تا خزانه Habrahabr را با مقالات پر کنم، می توانم جزئیات بیشتری را در هر مرحله از راه اندازی یک سرور WDS چند منظوره توضیح دهم.
باز هم از نویسندگان تشکر می کنم الکساندر_اروفیف и مالاموت ها برای مطالب آنها، که بدون استثنا مورد توجه همه خواهد بود.
طبیعتاً قبلاً مقالاتی در مورد هابره با همین موضوع وجود داشت ، من سعی کردم موضوع را از دیدگاه دیگری برجسته کنم یا آن را تکمیل کنم: زمان и دو، اما منتشر نشده است
با تشکر از توجه شما.
جلال بر روبات ها!

منبع: www.habr.com

اضافه کردن نظر