- trixie-backports 4.31.0-1~bpo13+1
- testing 4.31.0-1
- unstable 4.31.0-1
| SYSTEMD-BOOT(7) | systemd-boot | SYSTEMD-BOOT(7) |
الاسم¶
systemd-boot، sd-boot - مدير إقلاع UEFI بسيط
الوصف¶
systemd-boot (اختصار: sd-boot) هو مدير إقلاع UEFI بسيط. يوفر قائمة نصية لاختيار مدخل الإقلاع ومحررًا لسطر أوامر النواة. يدعم systemd-boot الأنظمة ذات البرامج الثابتة UEFI فقط.
يقوم systemd-boot بتحميل معلومات مدخل الإقلاع من قسم نظام EFI (ESP)، الذي يُوصل عادةً في /efi/ أو /boot/ أو /boot/efi/ أثناء وقت تشغيل نظام التشغيل، وكذلك من قسم محمل الإقلاع الموسع (XBOOTLDR) إذا كان موجودًا (يُوصل عادةً إلى /boot/). يجب أن توجد أجزاء ملفات التهيئة والنوى وصور initrd وصور EFI الأخرى للإقلاع عمومًا على ESP أو قسم محمل الإقلاع الموسع. يجب بناء نوى Linux مع CONFIG_EFI_STUB لتكون قابلة للتنفيذ المباشر كصورة EFI. أثناء الإقلاع، يقوم systemd-boot آليًا بتجميع قائمة بمداخل الإقلاع من المصادر التالية:
يدعم systemd-boot الميزات التالية:
يمكن استخدام bootctl(1) من نظام قيد التشغيل لتحديد موقع ESP وقسم محمل الإقلاع الموسع، وسرد المداخل المتاحة، وتثبيت systemd-boot نفسه.
يمكن استخدام kernel-install(8) لنسخ صور النواة إلى ESP أو قسم محمل الإقلاع الموسع وإنشاء ملفات وصف متوافقة مع مواصفات محمل الإقلاع.
يمكن استخدام systemd-stub(7) كدعامة إقلاع UEFI للنوى المنفذة، وهو مفيد لعرض شاشات الإقلاع الرسومية قبل الانتقال إلى عالم Linux. وهو قادر أيضًا على التقاط ملفات بيانات الاعتماد المساعدة آليًا (لتحديد معلمات الإقلاع) وصور إضافات النظام، كملفات مرافقة لصور النواة المُقلعة.
ارتباطات المفاتيح¶
يمكن استخدام المفاتيح التالية في قائمة الإقلاع:
↑ (أعلى)، ↓ (أسفل)، j، k، PageUp، PageDown، Home، End
أُضيف في الإصدار 239.
↵ (إدخال)، → (يمين)
أُضيف في الإصدار 239.
d
يُضبط متغير EFI للسماح باستمرار هذا الإعداد.
أُضيف في الإصدار 239.
e
أُضيف في الإصدار 239.
+, t
يُضبط متغير EFI للسماح باستمرار هذا الإعداد.
أُضيف في الإصدار 239.
-, T
يُضبط متغير EFI للسماح باستمرار هذا الإعداد.
أُضيف في الإصدار 239.
r
يُضبط متغير EFI للسماح باستمرار هذا الإعداد.
أُضيف في الإصدار 250.
R
يُضبط متغير EFI للسماح باستمرار هذا الإعداد.
أُضيف في الإصدار 250.
p
أُضيف في الإصدار 250.
h, ?, F1
أُضيف في الإصدار 239.
f
للتّوافق مع روابط المفاتيح لعدة تطبيقات برامج ثابتة، يمكن الوصول إلى هذه العملية أيضًا باستخدام F2 وF10 وDel وEsc.
أُضيف في الإصدار 250.
Shift+o
أُضيف في الإصدار 255.
Shift+b
أُضيف في الإصدار 255.
يمكن الضغط على المفاتيح التالية أثناء الإقلاع أو في قائمة الإقلاع لإقلاع إدخال معين مباشرة:
l
أُضيف في الإصدار 239.
w
أُضيف في الإصدار 239.
a
أُضيف في الإصدار 239.
s
أُضيف في الإصدار 239.
1, 2, 3, 4, 5, 6, 7, 8, 9
أُضيف في الإصدار 239.
تظهر قائمة الإقلاع عند تكوين مهلة قائمة غير صفرية. إذا ضبطت مهلة القائمة على الصفر، فاضغط مع الاستمرار على مفتاح (يوصى بالمسافة) قبل تهيئة محمل الإقلاع لإظهار قائمة الإقلاع. لاحظ أنه وفقًا لتنفيذ البرنامج الثابت، قد تكون النافذة الزمنية لقبول ضغطات المفاتيح قبل تهيئة محمل الإقلاع قصيرة. إذا فاتتك النافذة، فأعد التشغيل وحاول مرة أخرى، مع الضغط المتكرر على مفتاح مناسب؛ في معظم الأنظمة، يمكن الوصول إلى النافذة الزمنية بعد عدة محاولات. يمكن استخدام مفاتيح غير مفتاح المسافة، باستثناء المفاتيح المذكورة أعلاه. إذا لم يعمل عرض القائمة عند الطلب بشكل جيد، ففكر في تعيين مهلة غير صفرية لعرض قائمة الإقلاع دون قيد أو شرط. قد تقدم بعض بيئات سطح المكتب خيارًا للإقلاع مباشرة إلى قائمة الإقلاع، مما يتجنب المشكلة تمامًا. بدلاً من ذلك، استخدم سطر الأوامر systemctl reboot --boot-loader-menu= بقيمة غير صفرية من الصدفة.
في المحرر، تقوم معظم المفاتيح بإدراج نفسها ببساطة، ولكن يمكن استخدام المفاتيح التالية لتنفيذ إجراءات إضافية:
← (يسار)، → (يمين)، الصفحة الرئيسية، النهاية
أُضيف في الإصدار 239.
مفتاح الهروب، Ctrl+c
أُضيف في الإصدار 239.
Ctrl+k
أُضيف في الإصدار 239.
Ctrl+w، Alt+Backspace
أُضيف في الإصدار 239.
Ctrl+Del، Alt+d
أُضيف في الإصدار 239.
↵ (إدخال)
أُضيف في الإصدار 239.
لاحظ أنه ما لم يتم تكوين خلاف ذلك في البرنامج الثابت UEFI، سيستخدم systemd-boot تخطيط لوحة المفاتيح الأمريكي، لذا قد لا تتطابق تسميات المفاتيح لمفاتيح مثل +/-.
الملفات¶
توجد الملفات التي يعالجها systemd-boot بشكل عام على ESP الخاص بـ UEFI والذي يُوصل عادةً إلى /efi/ أو /boot/ أو /boot/efi/ أثناء تشغيل نظام التشغيل. كما يعالج الملفات على قسم محمل الإقلاع الموسع الذي يُوصل عادةً إلى /boot/، إذا كان موجودًا.
يقرأ systemd-boot التكوين في وقت التشغيل مثل مهلة الإقلاع والإدخال المبدئي من /loader/loader.conf على ESP (بالاشتراك مع البيانات المقروءة من متغيرات EFI). انظر loader.conf(5).
تُقرأ ملفات وصف إدخال الإقلاع التابعة لـBoot Loader Specification[1] من /loader/entries/ على ESP وقسم محمل الإقلاع الموسع.
تُقرأ إدخالات إقلاع النواة الموحدة التابعة لـBoot Loader Specification[1] من /EFI/Linux/ على ESP وقسم محمل الإقلاع الموسع.
اختياريًا، يُخزن بذرة عشوائية لتوفير تجمع الإنتروبيا المبكر للإقلاع في /loader/random-seed في ESP.
أثناء عملية التهيئة، يقوم sd-boot تلقائيًا بتحميل جميع ملفات برامج التشغيل الموجودة في دليل /EFI/systemd/drivers/ على وحدة التخزين ESP. يجب أن تكون الملفات الموجودة هناك بامتداد معرف بنية EFI متبوعًا بـ .efi (على سبيل المثال، بالنسبة لـ x86-64، يعني هذا لاحقة x64.efi). يمكن استخدام هذا لتحميل برامج تشغيل نظام الملفات وما شابهها تلقائيًا، لتوسيع دعم البرامج الثابتة الأصلية.
يمكن إجراء تسجيل متغيرات ”التشغيل الآمن“ يدويًا أو تلقائيًا إذا كانت الملفات متوفرة في المجلد /loader/keys/NAME/{db,dbx,KEK,PK}.auth، حيث يمثل NAME الاسم المعروض لمجموعة المتغيرات في القائمة. إذا كانت إحدى المجموعات تسمى auto، فقد يتم تسجيلها تلقائيًا اعتمادًا على ما إذا كان ”secure-boot-enroll“ مضبوطًا على force أم لا.
متغيرات EFI¶
تُعرف متغيرات EFI التالية، ويمكن تعيينها أو قراءتها بواسطة systemd-boot للاتصال بين محمل الإقلاع ونظام التشغيل. يُستخدم UUID البائع "4a67b082-0a4c-41cf-b6c7-440b29bb8c4f" في جميع الحالات.
LoaderBootCountPath
أُضيف في الإصدار 240.
LoaderConfigTimeout، LoaderConfigTimeoutOneShot
أُضيف في الإصدار 240.
LoaderConfigConsoleMode
أُضيف في الإصدار 250.
LoaderDevicePartUUID
أُضيف في الإصدارة 220.
LoaderEntries
أُضيف في الإصدار 240.
LoaderEntryDefault، LoaderEntryOneShot
أُضيف في الإصدار 240.
LoaderEntryLastBooted
سيضمن محمل الإقلاع أن LoaderEntryLastBooted محدث لكل إقلاع، ويُحدّثه حسب الحاجة وسيتجنب تغييره تمامًا عند ضبط LoaderEntryOneShot.
يقرأ محمل الإقلاع المتغير، الذي يأخذ أولوية أعلى من LoaderEntryDefault. يُتجاهل المتغير عند ضبط LoaderEntryOneShot.
لا يمكن استخدام LoaderEntryLastBooted كمؤشر على نجاح الإقلاع الأخير أو فشله.
أُضيف في الإصدار 250.
LoaderEntrySelected
أُضيف في الإصدار 240.
LoaderFeatures
أُضيف في الإصدار 240.
LoaderFirmwareInfo، LoaderFirmwareType
أُضيف في الإصدار 240.
LoaderImageIdentifier
أُضيف في الإصدارة 220.
LoaderInfo
أُضيف في الإصدار 240.
LoaderTimeExecUSec، LoaderTimeInitUSec، LoaderTimeMenuUsec
أُضيف في الإصدار 240.
LoaderSystemToken
أُضيف في الإصدار 243.
العديد من هذه المتغيرات مُعرّفة بواسطة واجهة محمل الإقلاع[2].
سلاسل SMBIOS من النوع 11¶
يمكن تكوين systemd-boot باستخدام سلاسل SMBIOS من النوع 11. تتكون السلاسل القابلة للتطبيق من اسم، متبوعًا بـ "="، متبوعًا بالقيمة. ما لم يكتشف systemd-boot أنه يعمل داخل بيئة حوسبة سرية، سيبحث systemd-boot في الجدول عن سلسلة باسم محدد، وإذا وُجدت، سيستخدم قيمتها. تُقرأ السلاسل التالية:
io.systemd.boot.kernel-cmdline-extra
أُضيف في الإصدار 256.
عد الإقلاع¶
يطبق systemd-boot آلية بسيطة لعد الإقلاع فوق مواصفات محمل الإقلاع[1]، للرجوع الآلي وغير المراقب إلى إصدارات نواة أقدم/مداخل محمل إقلاع عندما يفشل مدخل معين باستمرار. أي ملف مدخل محمل إقلاع وملف صورة نواة موحدة يحتوي على "+" متبوعًا برقم واحد أو رقمين (إذا كانا اثنين فيجب فصلهما بـ "-")، قبل اللاحقة .conf أو .efi يخضع لعد الإقلاع: يتم تقليل أول الرقمين ('tries left') بمقدار واحد في كل محاولة إقلاع، ويتم زيادة ثاني الرقمين ('tries done') بمقدار واحد (إذا كان 'tries done') غائبًا فيعتبر مكافئًا للصفر). اعتمادًا على القيمة الحالية لهذين العدادين، يعتبر مدخل الإقلاع في إحدى ثلاث حالات:
بشكل عام، عند إضافة إدخالات جديدة إلى محمل الإقلاع، تبدأ أولاً في حالة 'غير محددة'، أي مع عداد 'محاولات متبقية' أكبر من الصفر. يبقى إدخال الإقلاع في هذه الحالة حتى إما أن يتمكن من إكمال إقلاع كامل بنجاح مرة واحدة على الأقل (في هذه الحالة سيكون في حالة 'جيدة') — أو يصل عداد 'محاولات متبقية' إلى الصفر (في هذه الحالة سيكون في حالة 'سيئة').
مثال: لنفترض أن ملف إدخال محمل الإقلاع foo.conf مُعد لـ 3 محاولات إقلاع. سينشئه المثبت تحت الاسم foo+3.conf. في الإقلاع الأول، يعيد محمل الإقلاع تسميته إلى foo+2-1.conf. إذا لم يكتمل ذلك الإقلاع بنجاح، يعيد محمل الإقلاع تسميته إلى foo+1-2.conf في الإقلاع التالي. إذا فشل ذلك أيضًا، سيُعاد تسميته أخيرًا إلى foo+0-3.conf بواسطة محمل الإقلاع في الإقلاع التالي، وبعد ذلك يُعتبر 'سيئًا'. إذا نجح الإقلاع مع ذلك، يُعاد تسمية ملف الإدخال إلى foo.conf بواسطة نظام التشغيل، بحيث يُعتبر 'جيدًا' من ذلك الحين فصاعدًا.
تأخذ قائمة الإقلاع عداد 'محاولات متبقية' في الاعتبار عند فرز إدخالات القائمة: تُرتب الإدخالات في حالة 'سيئة' في بداية القائمة، والإدخالات في حالة 'جيدة' أو 'غير محددة' في النهاية. يمكن للمستخدم اختيار إقلاع أي إدخال من القائمة بحرية، بما في ذلك تلك المُوسومة بالفعل كـ 'سيئة'. إذا تم تحديد إدخال القائمة للإقلاع آليًا، فهذا يعني أن الإدخالات 'الجيدة' أو 'غير المحددة' مفضلة بشكل عام (حيث أن العنصر السفلي من القائمة هو المُقلع مبدئيًا)، ولن تُؤخذ الإدخالات 'السيئة' في الاعتبار إلا إذا لم تبقَ إدخالات 'جيدة' أو 'غير محددة'.
يضبط إطار تثبيت النواة kernel-install(8) اختياريًا عداد 'محاولات متبقية' الأولي إلى القيمة المحددة في /etc/kernel/tries عند إنشاء إدخال محمل إقلاع لأول مرة.
استخدام SYSTEMD-BOOT في الآلات الافتراضية¶
عند استخدام qemu مع OVMF (برنامج UEFI الثابت للآلات الافتراضية) يعمل مفتاح -kernel ليس فقط لنواة لينكس، بل لأي ثنائي EFI، بما في ذلك sd-boot والنوى الموحدة للينكس. مثال لسطر أوامر تحميل systemd-boot على x64:
qemu-system-x86_64 [ ... ] -kernel /usr/lib/systemd/boot/efi/systemd-bootx64.efi
سيكتشف systemd-boot أنه بدأ مباشرة بدلاً من تحميله من ESP وسيبحث عن ESP في تلك الحالة، مع مراعاة معلومات ترتيب الإقلاع من المشرف (إذا كانت متوفرة).
انظر أيضًا¶
bootctl(1)، loader.conf(5)، systemd-bless-boot.service(8)، systemd-boot-random-seed.service(8)، kernel-install(8)، systemd-stub(7)، مواصفات محمل الإقلاع[1]، واجهة محمل الإقلاع[2]، قياسات TPM2 PCR التي يقوم بها systemd[4]
ملاحظات¶
- 1.
- توصيف محمل الإقلاع
- 2.
- واجهة محمل الإقلاع
- 3.
- تقييم الإقلاع الآلي
- 4.
- قياسات TPM2 PCR التي أجراها systemd
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| systemd 257.13 |