ثبّت أي نظام تشغيل عبر الشبكة دون مفتاح USB مع Gola Bootlace
تاريخ النشر

ننشر اليوم Gola Bootlace، وهو برنامج مجاني ومفتوح المصدر يحوّل مجلداً من ملفات ISO إلى قائمة إقلاع لكل أجهزة الحاسوب في شبكتك. صِل الجهاز بكابل الشبكة، واختر «الإقلاع من الشبكة»، ثم اختر Windows 11 أو Ubuntu أو أداة إسعاف من القائمة فيبدأ العمل. لا مفتاح USB ولا درج مملوء بالمفاتيح.
Bootlace حرّ ومفتوح المصدر، وما زال في بداياته: نبحث عن مختبِرين ومساهمين. ستجد في نهاية هذا المقال كيف تساعدنا.
لماذا صنعناه
تثبيت الأجهزة وإصلاحها هو عملنا اليومي، ولذلك نعرف روتين مفاتيح USB جيداً: نبحث عن المفتاح المناسب، ثم نكتشف أنه يحمل نسخة Windows من العام الماضي، فنعيد كتابته وننتظر، ثم نوصله وننتظر مرة أخرى. كرّر ذلك على عشرين جهازاً وعشرة أنظمة مختلفة، فتحصل على درج مليء بالمفاتيح نصفها قديم، وعمليات تثبيت لا تسير أسرع من أبطأ مفتاح في الدرج.
الإقلاع من الشبكة هو الحل المعروف منذ زمن، وكل الأجهزة الحديثة تدعمه. ما أردناه هو نسخة منه يستطيع فنّي الورشة تشغيلها دون أن يكون مهندس شبكات: يضع ملفات ISO في مجلد، فيراها في قائمة، ويشغّلها كما هي. لم نجد أداة تفعل ذلك لنظامي Windows و Linux معاً، فكتبناها بأنفسنا، ونطلقها مفتوحة المصدر ليستعملها كل من يثبّت الأجهزة وليتحقق منها ويحسّنها.
ماذا يفعل، بكلمات بسيطة
يعمل Bootlace على حاسوب يبقى قيد التشغيل: خادم صغير أو جهاز احتياطي أو حاوية Proxmox. ينظر في مجلد ملفات ISO، وعندما يطلب جهاز في الشبكة نفسها الإقلاع من الشبكة (ويسمى ذلك PXE) يردّ عليه بقائمة بكل ما في المجلد. اختر عنصراً فيشغّله الجهاز ويقرأ ملف ISO من الخادم عبر الشبكة.
• مجلد واحد بدل درج كامل. لإضافة ملف ISO انسخه إلى المجلد، ولحذفه احذف الملف.
• القائمة نفسها على كل جهاز، بنظام UEFI أو BIOS القديم، دون أي إعداد آخر على الجهاز سوى «الإقلاع من الشبكة».
• تعمل ملفات ISO كما هي. لا شيء يُفكّ ضغطه أو يُعدَّل أو يُكتب على أقراص الجهاز أثناء ذلك.
• لا حاجة لتغيير شيء في الراوتر. يردّ Bootlace فقط على الأجهزة التي تطلب الإقلاع من الشبكة، ويترك خادم DHCP الخاص بالشبكة وشأنه.
• أوقف البرنامج فلا يبقى أي أثر على الأجهزة.
ماذا يستطيع أن يشغّل
Windows 11 و Windows Server: يقرأ برنامج التثبيت ملفاته من مشاركة صغيرة للقراءة فقط يوفّرها الخادم نفسه، فيُثبَّت الجهاز مباشرة من الشبكة. معظم مثبّتات Linux وأنظمته الحية: Ubuntu، Debian، Fedora، Arch، Alpine، Kali، Proxmox VE، TrueNAS وغيرها كثير. أدوات الإسعاف والصيانة: SystemRescue، Clonezilla، GParted، Rescuezilla، واختبارات الذاكرة.

تقرأ أنظمة Linux الحية ملف ISO من الخادم أثناء التشغيل (كقرص شبكي) بدل نسخه إلى ذاكرة الجهاز، فلا يحتاج الجهاز إلى مساحة تتسع للملف كله. وإذا لم يتعرّف Bootlace على ملف ISO من اسمه فهو لا يرفضه: يقرأ قوائم الإقلاع داخل الملف ليعرف ما هو، وإن لم ينجح قدّمه للجهاز كقرص CD-ROM شبكي.

لا نصنّف ملف ISO على أنه يعمل إلا بعد أن نراه يصل فعلاً إلى برنامج التثبيت أو سطح المكتب في مختبر الاختبار لدينا. وقائمة ما جرّبناه ونتائجه منشورة للجميع: قائمة التوافق. بعضها لا يعمل بعد (مثل pfSense على UEFI)، والقائمة تذكر ذلك.
صفحة الإدارة
تُدار كل الأمور من صفحة ويب على الخادم، ولا حاجة إلى سطر الأوامر بعد تشغيل البرنامج.
اعرف ما يجري
تعرض لوحة المعلومات ما يعمل حالياً وكيف يصل الجهاز إلى الخادم.

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

اعرف ملفاتك وأجهزتك
تستقبل صفحة المكتبة ملفات ISO (والرفع المنقطع يُستأنف من حيث توقف)، أو تنزّل الملف وتتحقق منه بنفسها انطلاقاً من عنوان ويب. وفي صفحة ISO يمكنك إعادة تسمية عنصر أو إخفاؤه أو حمايته بكلمة مرور للإقلاع، وإضافة معاملات للنواة، وتفعيل إقلاع مفصّل أو عبر المنفذ التسلسلي لتتبّع الأخطاء، أو الاطلاع على الأوامر التي يتلقاها الجهاز بالضبط.

وتسرد صفحة الأجهزة كل جهاز طلب قائمة، مع الاسم الذي تمنحه إياه وسجلّه (قابل للتصدير بصيغة CSV) وزر لإيقاظه عبر الشبكة، وقواعد بحسب الطراز أو الشركة المصنّعة أو المنصة («كل أجهزة HP تقلع من قرصها»).

اضبط القائمة
تضبط صفحة القائمة مدة الانتظار وما يبدأ تلقائياً والملفات التي تُبقى خارج القائمة، ولتثبيت Windows 11 على أجهزة قديمة، فحوص برنامج التثبيت التي يجب تجاوزها.

جديد الإصدار 0.2.0
• ملف سجلّ على القرص يمكن تنزيله من صفحة الويب.
• فشل بدء التشغيل لا يترك الجهاز عالقاً: يعود إلى القائمة مع رسالة.
• أسماء للأجهزة، وسجلّ لكل جهاز يُصدَّر بصيغة CSV، وإيقاظ عبر الشبكة (Wake-on-LAN).
• قواعد بحسب الطراز أو الشركة المصنّعة أو المنصة، إضافة إلى القواعد الخاصة بجهاز واحد.
• كلمة مرور إقلاع لكل ملف ISO، ومفتاحان للإقلاع المفصّل أو عبر المنفذ التسلسلي.
• اختبار ذاتي، واختبار لسرعة المكتبة، وبحث عن خوادم PXE أخرى في الشبكة.
• نسخ احتياطي للإعدادات واستعادتها (مع نسخة تُحفظ داخل المكتبة)، ودليل للتشغيل الأول.
• رفع قابل للاستئناف، وذاكرة تخزين مؤقت تتخلص من أقل الإدخالات استخداماً حديثاً عند امتلائها.
• ضبط دقيق: أنماط لإبعاد الملفات عن القائمة، وحجم كتلة TFTP ونافذتها، ومفتاح لتجاوز فحوص تثبيت Windows 11.
• ردّ على الأجهزة التي تقلع عبر UEFI HTTP boot.
• حزم .deb و.rpm.
• اختبارات fuzzing لقارئات ملفات ISO وقوائم الإقلاع، كشفت عدة أعطال وصُحّحت.
شغّله في دقائق
الأسرع، إن كان لديك Proxmox: نفّذ هذا الأمر الواحد على مضيف Proxmox. ينشئ حاوية Debian صغيرة ويثبّت فيها Bootlace ويعرض عنوانها وكلمة المرور.
1bash -c "$(curl -fsSL https://raw.githubusercontent.com/ghazichaieb/gola-bootlace/main/tools/proxmox/bootlace-lxc.sh)"
لا تملك Proxmox؟ اختر ما يناسب الحاسوب الذي لديك: كل الطرق تعطي البرنامج نفسه وصفحة الويب نفسها.
• Docker (على مضيف Linux): الصورة ghazichaieb/gola-bootlace مع شبكة المضيف. يتضمن ملف README ملف compose جاهزاً.
• حزمة Linux: نزّل ملف .deb أو .rpm من صفحة الإصدار ثم نفّذ apt install ./bootlace-*.deb؛ وهو يثبّت خدمة systemd.
• Windows: فُكّ ضغط الأرشيف ونفّذ bootlace.exe serve -iso-dir D:\isos لعمل سريع.
بعد ذلك أعد تشغيل جهاز واختر الإقلاع من الشبكة (غالباً بالمفتاح F12 أو F11 أو Esc عند التشغيل) فتظهر القائمة. في أول تشغيل يولّد Bootlace كلمة مرور لصفحة الويب ويعرضها مرة واحدة في سجلّه.
أمور يجب معرفتها
• البرنامج ما زال في بدايته. اختُبر الإصدار 0.2.0 في مختبر من الأجهزة الافتراضية (Proxmox و Hyper-V) وعلى عدد قليل من الأجهزة الحقيقية. على لوحة أم من عام 2012 يعمل في وضع BIOS القديم ولا يعمل بعد في وضع UEFI، ونحن نبحث في السبب. ولهذا بالذات نحتاج إلى مختبِرين.
• يلزم كابل شبكة. الإقلاع من الشبكة لا يعمل عبر Wi-Fi.
• يجب تعطيل Secure Boot على الجهاز، ما عدا Windows و Ubuntu فلهما طريق للعمل معه.
• مجلد المكتبة يجب أن يكون قابلاً للكتابة: ينشئ Bootlace فيه مجلداً مخفياً باسم .bootlace.
• سرعة التثبيت من الشبكة بسرعة الشبكة. وشبكة Gigabit كافية.
• صُمّم للشبكة المحلية. يردّ فقط على العناوين الخاصة، وخدمتا القرص الشبكي و iSCSI فيه بلا تسجيل دخول، فلا تفتح منافذه إلى الإنترنت أبداً، واستخدم VPN للوصول إلى الشبكة من الخارج.
• النظام الذي يعمل من الشبكة لا يتصرّف تماماً كما لو بدأ من قرص: يجب أن تبقى الشبكة متصلة، وتغيب بعض الميزات التي تحتاج إلى المفتاح نفسه (مثل التخزين الدائم في Tails). تسردها هذه الصفحة.
مفتوح المصدر: جرّبه، واكسره، وحسّنه
يصدر Bootlace برخصة GPL-3.0-or-later. كل إصدار موقّع، مع شرح للتحقق من التوقيع، ويأتي بصيغة تنزيلات لـ Linux و Windows وحزم .deb و.rpm وصورة Docker متعددة المعماريات.
• الشيفرة المصدرية والمشكلات: github.com/ghazichaieb/gola-bootlace
• تنزيل الإصدار 0.2.0: صفحة الإصدار
• صورة Docker: Docker Hub
• التوثيق: واجهة الويب، طريقة العمل، المتطلبات
يسعدنا أن تساعدنا، مهما كان مستواك:
• جرّبه على أجهزتك وأخبرنا بما حدث، خيراً كان أو شراً: أي جهاز أو لوحة أم، UEFI أو BIOS، وأي ملف ISO. الأجهزة الحقيقية هي ما يحتاج إلى أكبر قدر من الاختبار.
• أبلغ عن ملفات ISO التي لا تبدأ أو التي تبدأ على غير ما تتوقع: افتح مشكلة جديدة مع اسم الملف وما رأيته. هكذا تكبر قائمة التوافق.
• ساهم بنفسك: إصلاحات، أو دعم نظام آخر، أو توثيق، أو ترجمات لواجهة الويب. طلبات الدمج (pull requests) مرحّب بها، ودليل المساهمة يشرح الطريقة.
• انشر الخبر بين كل من يثبّت الأجهزة، مهنةً أو هواية.
هل تريد أن نركّبه لك في مكتبك أو ورشتك، أو أن نتولّى عمليات التثبيت عنك؟ تواصل معنا.