mkosi-sandbox(1) General Commands Manual mkosi-sandbox(1)

الاسم

mkosi-sandbox — تشغيل الأوامر في صندوق رمل مخصص

موجز

mkosi-sandbox [خيارات...] أمر [وسائط]

الوصف

mkosi-sandbox يشغل الأمر المعطى في صندوق رمل مخصص. يُهيأ الصندوق بتحديد خيارات سطر الأوامر التي تهيئ أجزاء فردية من الصندوق.

إذا لم يُحدد أمر، يبدأ mkosi-sandbox bash في الصندوق.

لاحظ أن هذا الصندوق غير مصمم ليكون حدًا أمنيًا. الغرض منه هو السماح بتشغيل الأوامر في بيئة معزولة حتى لا تتأثر بالنظام المضيف.

يمكن استخدام mkosi-sandbox لإنشاء صندوق رمل داخل العملية لتطبيقات بايثون باستيراده كوحدة واستدعاء دالته الرئيسية بالخيارات فقط. لا حاجة لسطر أمر للتنفيذ في هذه الحالة. كمثال:

import mkosi.sandbox
mkosi.sandbox.main(["--become-root"])
print(os.getuid())

يمكن استدعاء الدالة main فقط. استدعاء أي دوال أخرى من mkosi.sandbox غير مدعوم وقد يتعطل في الإصدارات المستقبلية.

الخيارات

يوصل tmpfs جديد عند DST في الصندوق.
ينشئ /dev خاصًا عند DST في الصندوق. يحتوي هذا /dev الخاص على عقد الأجهزة الأساسية المطلوبة لصندوق رمل عامل (مثل /dev/null) فقط ولا يحتوي على أجهزة فعلية.
يوصل /proc من المضيف عند DST في الصندوق.
ينشئ دليلاً وجميع الدلائل الأصلية المفقودة عند DST في الصندوق. تُنشأ جميع الدلائل بالوضع 755 ما لم ينته المسار بـ /tmp أو /var/tmp وفي هذه الحالة يُنشأ بالوضع 1777.
يُوصل المسار المصدر SRC بشكل ربط متكرر إلى DST في الصندوق. يُنشأ نقطة الوصل في الصندوق إذا لم تكن موجودة بعد. تُنشأ أيضًا أي دلائل أصلية مفقودة في الصندوق. يمكن اختياريًا بادئة المسار المصدر بحرف +. إذا كان الأمر كذلك، يُفسر المسار المصدر نسبة إلى دليل جذر الصندوق بدلاً من دليل جذر المضيف.
مثل --bind، لكن لا يفشل إذا لم يكن المسار المصدر موجودًا.
مثل --bind، لكن يقوم بوصل ربط متكرر للقراءة فقط.
مثل --bind-try، لكن يقوم بوصل ربط متكرر للقراءة فقط.
ينشئ رابطًا رمزيًا عند DST في الصندوق يشير إلى SRC. إذا كان DST موجودًا بالفعل وكان ملفًا أو رابطًا رمزيًا، يُنشأ رابط رمزي مؤقت ويوصل فوق DST.
يكتب السلسلة من DATA إلى DST في الصندوق.
يُضيف DIR من المضيف كدليل سفلي جديد لوصل overlayfs التالي.
يُعيِّن الدليل العلوي لوصل overlayfs التالي إلى DIR من المضيف. إذا عُيِّن إلى tmpfs، فسيكون upperdir وworkdir دليلين فرعيين لوصل tmpfs جديد.
يُعيِّن دليل العمل لوصل overlayfs التالي إلى DIR من المضيف.
يصل نظام ملفات overlay جديد في DST في الصندوق الرملي. تُحدَّد الأدلة السفلية والدليل العلوي ودليل العمل باستخدام الخيارات --overlay-lowerdir و--overlay-upperdir و--overlay-workdir على التوالي. بعد تحليل كل خيار --overlay، تُعاد ضبط خيارات overlay الأخرى.
يلغي تعيين متغير البيئة NAME في الصندوق الرملي.
يُعيِّن متغير البيئة NAME إلى VALUE في الصندوق الرملي
يُغيِّر دليل العمل إلى DIR في الصندوق الرملي.
يُغيِّر دليل العمل في الصندوق الرملي إلى دليل العمل الحالي الذي استُدعي فيه mkosi-sandbox على المضيف.
يُعيّن المستخدم الحالي إلى المستخدم الجذر في الصندوق الرملي. إذا لم يُحدَّد هذا الخيار، يُعيّن المستخدم الحالي إلى نفسه في الصندوق الرملي. بغض النظر عن تحديد هذا الخيار أم لا، سيكون للمستخدم الحالي مجموعة كاملة من القدرات المحيطة في الصندوق الرملي. يتضمن ذلك CAP_SYS_ADMIN مما يعني أن العملية المستدعاة في الصندوق الرملي ستكون قادرة على عمل وصلات ربط وعمليات أخرى.

إذا استُدعي mkosi-sandbox كمستخدم جذر، فلن يفعل هذا الخيار شيئًا.

يؤدي تحديد هذا الخيار إلى جعل جميع استدعاءات chown() أو استدعاءات النظام المماثلة تصبح بلا تأثير في الصندوق الرملي. هذا مفيد بشكل أساسي عند استدعاء مديري الحزم في الصندوق الرملي الذين قد يحاولون chown() الملفات لمستخدمين أو مجموعات مختلفة مما قد يفشل ما لم يُستدعَ mkosi-sandbox بواسطة مستخدم متميز.
يؤدي تحديد هذا الخيار إلى جعل جميع استدعاءات sync() أو استدعاءات النظام المماثلة تصبح بلا تأثير في الصندوق الرملي. هذا مفيد بشكل أساسي عند استدعاء مديري الحزم في الصندوق الرملي الذين قد يحاولون sync() الملفات عند استخراج الحزم وهو أمر غير ضروري عند بناء الصور ويبطئ وقت التنفيذ بشكل كبير.
يجعل تحديد هذا الخيار mkosi-sandbox يلغي مشاركة مساحة اسم الشبكة إذا أمكن.
يجعل تحديد هذا الخيار mkosi-sandbox يلغي مشاركة مساحة اسم IPC إذا أمكن.
يجعل عملية mkosi-sandbox تعلق نفسها بـ SIGSTOP قبل استدعاء execve() مباشرة. هذا مفيد للانتظار حتى اكتمال كل منطق الإعداد قبل متابعة التنفيذ في العملية الأم المستدعية mkosi-sandbox باستخدام waitid() مع العلمين WNOWAIT وWSTOPPED.
قم بتجميع واصفات الملفات الموروثة معًا بدءًا من رقم واصف الملف 3 واضبط $LISTEN_FDS على عدد واصفات الملفات المجمعة و$LISTEN_PID على معرف عملية العملية الحالية.
أظهر إصدار الحزمة.
أظهر معلومات استخدام موجزة.

أمثلة

ابدأ تشغيل bash في دليل العمل الحالي في مساحة اسم الشبكة الخاصة به كمستخدم حالي.

mkosi-sandbox --bind / / --same-dir --unshare-net

قم بتشغيل id كمستخدم جذر في صندوق رمل مع /usr فقط من المضيف بالإضافة إلى الروابط الرمزية الضرورية لتشغيل الأوامر.

mkosi-sandbox \
    --ro-bind /usr /usr \
    --symlink usr/bin /bin \
    --symlink usr/lib /lib \
    --symlink usr/lib64 /lib64 \
    --symlink usr/sbin /sbin \
    --dev /dev \
    --proc /proc \
    --tmpfs /tmp \
    --become-root \
    id

انظر أيضًا

mkosi(1)

ترجمة

تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.