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
    يوصل tmpfs جديد عند DST في الصندوق.

--dev DST
    ينشئ /dev خاصًا عند DST في الصندوق. يحتوي هذا /dev الخاص على عقد الأجهزة الأساسية المطلوبة لصندوق رمل عامل (مثل /dev/null) فقط ولا يحتوي على أجهزة فعلية.

--proc DST
    يوصل /proc من المضيف عند DST في الصندوق.

--dir DST
    ينشئ دليلاً وجميع الدلائل الأصلية المفقودة عند DST في الصندوق. تُنشأ جميع الدلائل بالوضع 755 ما لم ينته المسار بـ /tmp أو /var/tmp وفي هذه الحالة يُنشأ بالوضع 1777.

--bind SRC DST
    يُوصل المسار المصدر SRC بشكل ربط متكرر إلى DST في الصندوق. يُنشأ نقطة الوصل في الصندوق إذا لم تكن موجودة بعد. تُنشأ أيضًا أي دلائل أصلية مفقودة في الصندوق. يمكن اختياريًا بادئة المسار المصدر بحرف +. إذا كان الأمر كذلك، يُفسر المسار المصدر نسبة إلى دليل جذر الصندوق بدلاً من دليل جذر المضيف.

--bind-try SRC DST
    مثل --bind، لكن لا يفشل إذا لم يكن المسار المصدر موجودًا.

--ro-bind SRC DST
    مثل --bind، لكن يقوم بوصل ربط متكرر للقراءة فقط.

--ro-bind-try SRC DST
    مثل --bind-try، لكن يقوم بوصل ربط متكرر للقراءة فقط.

--symlink SRC DST
    ينشئ رابطًا رمزيًا عند DST في الصندوق يشير إلى SRC. إذا كان DST موجودًا بالفعل وكان ملفًا أو رابطًا رمزيًا، يُنشأ رابط رمزي مؤقت ويوصل فوق DST.

--write DATA DST
    يكتب السلسلة من DATA إلى DST في الصندوق.

--overlay-lowerdir DIR
    يُضيف DIR من المضيف كدليل سفلي جديد لوصل overlayfs التالي.

--overlay-upperdir DIR
    يُعيِّن الدليل العلوي لوصل overlayfs التالي إلى DIR من المضيف. إذا عُيِّن إلى tmpfs، فسيكون upperdir وworkdir دليلين فرعيين لوصل tmpfs جديد.

--overlay-workdir DIR
    يُعيِّن دليل العمل لوصل overlayfs التالي إلى DIR من المضيف.

--overlay DST
    يصل نظام ملفات overlay جديد في DST في الصندوق الرملي. تُحدَّد الأدلة السفلية والدليل العلوي ودليل العمل باستخدام الخيارات --overlay-lowerdir و--overlay-upperdir و--overlay-workdir على التوالي. بعد تحليل كل خيار --overlay، تُعاد ضبط خيارات overlay الأخرى.

--unsetenv NAME
    يلغي تعيين متغير البيئة NAME في الصندوق الرملي.

--setenv NAME VALUE
    يُعيِّن متغير البيئة NAME إلى VALUE في الصندوق الرملي

--chdir DIR
    يُغيِّر دليل العمل إلى DIR في الصندوق الرملي.

--same-dir
    يُغيِّر دليل العمل في الصندوق الرملي إلى دليل العمل الحالي الذي استُدعي فيه mkosi-sandbox على المضيف.

--become-root
    يُعيّن المستخدم الحالي إلى المستخدم الجذر في الصندوق الرملي. إذا لم يُحدَّد هذا الخيار، يُعيّن المستخدم الحالي إلى نفسه في الصندوق الرملي. بغض النظر عن تحديد هذا الخيار أم لا، سيكون للمستخدم الحالي مجموعة كاملة من القدرات المحيطة في الصندوق الرملي. يتضمن ذلك CAP_SYS_ADMIN مما يعني أن العملية المستدعاة في الصندوق الرملي ستكون قادرة على عمل وصلات ربط وعمليات أخرى.

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

--suppress-chown
    يؤدي تحديد هذا الخيار إلى جعل جميع استدعاءات chown() أو استدعاءات النظام المماثلة تصبح بلا تأثير في الصندوق الرملي. هذا مفيد بشكل أساسي عند استدعاء مديري الحزم في الصندوق الرملي الذين قد يحاولون chown() الملفات لمستخدمين أو مجموعات مختلفة مما قد يفشل ما لم يُستدعَ mkosi-sandbox بواسطة مستخدم متميز.

--suppress-sync
    يؤدي تحديد هذا الخيار إلى جعل جميع استدعاءات sync() أو استدعاءات النظام المماثلة تصبح بلا تأثير في الصندوق الرملي. هذا مفيد بشكل أساسي عند استدعاء مديري الحزم في الصندوق الرملي الذين قد يحاولون sync() الملفات عند استخراج الحزم وهو أمر غير ضروري عند بناء الصور ويبطئ وقت التنفيذ بشكل كبير.

--unshare-net
    يجعل تحديد هذا الخيار mkosi-sandbox يلغي مشاركة مساحة اسم الشبكة إذا أمكن.

--unshare-ipc
    يجعل تحديد هذا الخيار mkosi-sandbox يلغي مشاركة مساحة اسم IPC إذا أمكن.

--suspend
    يجعل عملية mkosi-sandbox تعلق نفسها بـ SIGSTOP قبل استدعاء execve() مباشرة. هذا مفيد للانتظار حتى اكتمال كل منطق الإعداد قبل متابعة التنفيذ في العملية الأم المستدعية mkosi-sandbox باستخدام waitid() مع العلمين WNOWAIT وWSTOPPED.

--pack-fds
    قم بتجميع واصفات الملفات الموروثة معًا بدءًا من رقم واصف الملف 3 واضبط $LISTEN_FDS على عدد واصفات الملفات المجمعة و$LISTEN_PID على معرف عملية العملية الحالية.

--version
    أظهر إصدار الحزمة.

--help, -h
    أظهر معلومات استخدام موجزة.

أمثلة
ابدأ تشغيل 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 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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