.nh .TH "singularity" "1" "Jul 2026" "Auto generated by spf13/cobra" "" .SH "نام (NAME)" singularity-exec \- اجرای یک دستور درون یک کانتینر .SH "خلاصه دستور (SYNOPSIS)" \fBsingularity exec [exec options...] [args...]\fP .SH "توضیحات (DESCRIPTION)" دستور singularity exec از قالب‌های زیر پشتیبانی می‌کند: .PP *.sif قالب تصویر سینگولاریتی (SIF). بومی سینگولاریتی (3.0+) و Apptainer (v1.0.0+) .PP *.sqsh قالب SquashFS. بومی سینگولاریتی 2.4+ .PP *.img قالب ext3. بومی نسخه‌های سینگولاریتی < 2.4. .PP directory/ قالب جعبه‌شنی (sandbox). شاخه‌ای حاوی یک سیستم فایل ریشه معتبر و اختیاری فراداده‌های Singularity/Apptainer. .PP instance://* یک نمونه محلی در حال اجرای کانتینر. (مشاهده گروه دستورات instance.) .PP library://* یک کانتینر SIF میزبانی‌شده روی Library (بدون پیش‌فرض) .PP docker://* یک کانتینر Docker/OCI میزبانی‌شده روی Docker Hub یا سایر مخازن رجیستری OCI. .PP shub://* یک کانتینر میزبانی‌شده روی Singularity Hub. .PP oras://* یک کانتینر SIF میزبانی‌شده روی رجیستری OCI با پشتیبانی از مشخصات OCI Registry As Storage (ORAS). .PP ipfs://* یک تصویر SIF از یک کلاستر IPFS، با استفاده از درگاه HTTP. .SH "گزینه‌ها (OPTIONS)" \fB--add-caps\fP="" فهرستی از قابلیت‌ها (capabilities) جداشده با ویرگول برای اضافه کردن .PP \fB--allow-setuid\fP[=false] اجازه به باینری‌های setuid در کانتینر (فقط کاربر ریشه) .PP \fB--app\fP="" تعیین برنامه‌ای برای اجرا درون کانتینر .PP \fB--apply-cgroups\fP="" اعمال cgroups از یک فایل برای فرایندهای کانتینر (فقط کاربر ریشه) .PP \fB--authfile\fP="" فایل احراز هویت به سبک داکر برای نوشتن/خواندن مشخصات هویتی رجیستری OCI .PP \fB-B\fP, \fB--bind\fP=[] مشخصات مسیر bind کاربر. به قالب src[:dest[:opts]] است که در آن src و dest مسیرهای خارج و داخل هستند. اگر dest داده نشود، برابر src تنظیم می‌شود. گزینه‌های اتصال ('opts') می‌توانند به صورت 'ro' (فقط‌خواندنی) یا 'rw' (خواندنی/نوشتنی، پیش‌فرض) تعیین شوند. چندین مسیر bind می‌توانند در یک فهرست جداشده با ویرگول داده شوند. .PP \fB--blkio-weight\fP=0 وزن نسبی Block IO در محدوده ۱۰ تا ۱۰۰۰، مقدار ۰ برای غیرفعال‌سازی .PP \fB--blkio-weight-device\fP=[] وزن نسبی Block IO مختص دستگاه .PP \fB--cdi-dirs\fP=[] فهرست جداشده با ویرگول از شاخه‌هایی که CDI باید در آن‌ها به دنبال فایل‌های JSON تعریف دستگاه بگردد. در صورت عدم تعیین، پیش‌فرض /etc/cdi,/var/run/cdi خواهد بود. .PP \fB-e\fP, \fB--cleanenv\fP[=false] پاکسازی محیط پیش از اجرای کانتینر .PP \fB--compat\fP[=false] اعمال تنظیمات برای افزایش سازگاری OCI/Docker. به طور خودکار شامل --containall, --no-init, --no-umask, --no-eval, --writable-tmpfs می‌شود. .PP \fB-c\fP, \fB--contain\fP[=false] استفاده از dev/ مینیمال و خالی کردن سایر شاخه‌ها (مانند tmp/ و HOME$) به جای اشتراک‌گذاری سیستم‌های فایل از میزبان .PP \fB-C\fP, \fB--containall\fP[=false] جداسازی نه تنها سیستم‌های فایل، بلکه فضا‌های نام PID، IPC و محیط .PP \fB--cpu-shares\fP=-1 سهم پردازنده (CPU shares) برای کانتینر .PP \fB--cpus\fP="" تعداد هسته‌های CPU در دسترس کانتینر .PP \fB--cpuset-cpus\fP="" فهرست هسته‌های CPU میزبان در دسترس کانتینر .PP \fB--cpuset-mems\fP="" فهرست گره‌های حافظه میزبان در دسترس کانتینر .PP \fB--cwd\fP="" شاخه کاری اولیه برای فرایند محموله (payload) داخل کانتینر (مترادف --pwd) .PP \fB--device\fP=[] نام(های) دستگاه کاملاً واجد شرایط CDI. یک نام دستگاه CDI شامل یک VENDOR، CLASS و NAME است که به صورت vendor.com/device=mydevice ترکیب می‌شوند. چند دستگاه را می‌توان با ویرگول جدا کرد. .PP \fB--disable-cache\fP[=false] عدم استفاده یا ایجاد حافظه موقت (کَش) .PP \fB--dns\fP="" فهرست کارگزارهای DNS جداشده با ویرگول جهت افزودن به resolv.conf .PP \fB--docker-host\fP="" تعیین میزبان دیمن داکر سفارشی .PP \fB--docker-login\fP[=false] ورود تعاملی به مخزن رجیستری داکر .PP \fB--drop-caps\fP="" فهرستی از قابلیت‌ها جداشده با ویرگول جهت حذف .PP \fB--env\fP=[] ارسال متغیر محیطی به فرایند محصورشده .PP \fB--env-file\fP=[] ارسال متغیرهای محیطی از یک فایل به فرایند محصورشده .PP \fB-f\fP, \fB--fakeroot\fP[=false] اجرای کانتینر با ظاهر اجرای کاربر ریشه (شبیه‌سازی ریشه) .PP \fB--fusemount\fP=[] مشخصات اتصال سیستم فایل FUSE به صورت ': ' - که در آن مقدار 'container' یا 'host' است که مشخص می‌کند اتصال در کجا انجام شود ('container-daemon' یا 'host-daemon' فرایند FUSE را به صورت جداشده اجرا می‌کند). مقدار مسیر به باینری اجرایی FUSE به همراه گزینه‌های اتصال است. مقدار مکانی در کانتینر است که FUSE به آن متصل می‌شود. به عنوان مثال: 'container:sshfs 10.0.0.1:/ /sshfs'. به طور خودکار شامل --pid می‌شود. .PP \fB-h\fP, \fB--help\fP[=false] راهنما برای exec .PP \fB-H\fP, \fB--home\fP="/build" مشخصات شاخه خانگی. می‌تواند یک مسیر src یا یک جفت src:dest باشد. مقدار src مسیر مبدا شاخه خانگی در خارج از کانتینر است و dest شاخه خانگی درون کانتینر را بازنویسی می‌کند. .PP \fB--hostname\fP="" تنظیم نام میزبان کانتینر .PP \fB--intel-hpu\fP[=false] فعال‌سازی پشتیبانی از شتاب‌دهنده Intel(R) Gaudi هم‌زمان با استفاده از dev/ مینیمال .PP \fB-i\fP, \fB--ipc\fP[=false] اجرای کانتینر در یک فضای نام جدید IPC .PP \fB--keep-privs\fP[=false] اجازه به کاربر ریشه برای حفظ امتیازات در کانتینر (فقط کاربر ریشه) .PP \fB--memory\fP="" محدودیت حافظه به بایت .PP \fB--memory-reservation\fP="" محدودیت نرم (soft limit) حافظه به بایت .PP \fB--memory-swap\fP="" محدودیت حافظه Swap، استفاده از -1 برای نامحدود .PP \fB--mount\fP=[] مشخصات اتصال مثلاً 'type=bind,source=/opt,destination=/hostopt'. پرچم 'nonested' از ارسال شدن این اتصال به کانتینرهای تودرتو جلوگیری می‌کند. .PP \fB-n\fP, \fB--net\fP[=false] اجرای کانتینر در فضای نام شبکه جدید (به طور پیش‌فرض یک رابط شبکه bridge راه‌اندازی می‌کند) .PP \fB--netns-path\fP="" پیوستن به فضای نام شبکه در مسیر مشخص‌شده (به عنوان ریشه یا در صورت مجاز بودن در apptainer.conf) .PP \fB--network\fP="" تعیین انواع شبکه مورد نظر جداشده با ویرگول؛ هر شبکه یک رابط اختصاصی درون کانتینر بالا می‌آورد .PP \fB--network-args\fP=[] تعیین آرگومان‌های شبکه برای ارسال به افزونه‌های CNI .PP \fB--no-env\fP=[] فهرستی از متغیرهای محیطی جهت مسدود کردن ورود آن‌ها از محیط میزبان به کانتینر .PP \fB--no-eval\fP[=false] ارزیابی نکردن شل برای متغیرهای محیطی یا CMD/ENTRYPOINT/ARGS کانتینر OCI .PP \fB--no-home\fP[=false] سوار نکردن شاخه خانگی کاربران در صورتی که home/ شاخه کاری فعلی نباشد .PP \fB--no-https\fP[=false] استفاده از http به جای https برای شناسه‌های URI از نوع docker:// و oras:// و ...///:library .PP \fB--no-init\fP[=false] شروع نکردن فرایند shim با --pid .PP \fB--no-mount\fP=[] غیرفعال‌سازی یک یا چند گزینه 'mount xxx' تنظیم‌شده در apptainer.conf یا تعیین مسیر مقصد مطلق برای غیرفعال کردن یک مسیر bind، یا 'bind-paths' جهت غیرفعال‌سازی همه مسیرهای bind. .PP \fB--no-pid\fP[=false] اجرا نکردن کانتینر در یک فضای نام جدید PID .PP \fB--no-privs\fP[=false] سلب تمام امتیازات از کاربر ریشه در کانتینر .PP \fB--no-umask\fP[=false] عدم انتشار umask به کانتینر، تنظیم umask پیش‌فرض 0022 .PP \fB--nv\fP[=false] فعال‌سازی پشتیبانی از Nvidia .PP \fB--nvccli\fP[=false] استفاده از nvidia-container-cli برای راه‌اندازی کارت گرافیک (آزمایشی) .PP \fB--oom-kill-disable\fP[=false] غیرفعال کردن کشنده OOM (کمبود حافظه) .PP \fB-o\fP, \fB--overlay\fP=[] استفاده از تصویر overlayFS برای ذخیره‌سازی داده‌های ماندگار یا به عنوان لایه فقط‌خواندنی کانتینر .PP \fB--passphrase\fP[=false] درخواست رمز عبور رمزنگاری .PP \fB--pem-path\fP="" وارد کردن مسیر به کلید RSA در قالب PEM برای کانتینر رمزگذاری‌شده .PP \fB-p\fP, \fB--pid\fP[=false] اجرای کانتینر در یک فضای نام جدید PID .PP \fB--pids-limit\fP=0 محدودیت تعداد شناسه‌های فرایند (PID) کانتینر، مقدار -1 برای نامحدود .PP \fB--rocm\fP[=false] فعال‌سازی پشتیبانی آزمایشی Rocm .PP \fB-S\fP, \fB--scratch\fP=[] شامل کردن یک شاخه scratch درون کانتینر که به یک شاخه موقت پیوند داده شده است (استفاده از -W برای اجبار مکان) .PP \fB--security\fP=[] فعال‌سازی ویژگی‌های امنیتی (SELinux, Apparmor, Seccomp) .PP \fB--sharens\fP[=false] اشتراک‌گذاری فضای نام و تصویر با کانتینرهای دیگر اجراشده از همان فرایند والد .PP \fB--unsquash\fP[=false] تبدیل فایل SIF به جعبه‌شنی موقت پیش از اجرا .PP \fB-u\fP, \fB--userns\fP[=false] اجرای کانتینر در یک فضای نام کاربری جدید .PP \fB--uts\fP[=false] اجرای کانتینر در یک فضای نام جدید UTS .PP \fB-W\fP, \fB--workdir\fP="" شاخه کاری مورد استفاده برای tmp/ و var/tmp/ و HOME$ (در صورت استفاده از c/--contain-) .PP \fB-w\fP, \fB--writable\fP[=false] به طور پیش‌فرض تمام کانتینرهای Singularity/Apptainer فقط‌خواندنی هستند. این گزینه سیستم فایل را قابل خواندن/نوشتن می‌کند. .PP \fB--writable-tmpfs\fP[=false] سیستم فایل را با داده‌های غیرماندگار به صورت خواندنی-نوشتنی در دسترس قرار می‌دهد (فقط با پشتیبانی از overlay) .SH "مثال (EXAMPLE)" .EX $ singularity exec /tmp/debian.sif cat /etc/debian_version $ singularity exec /tmp/debian.sif python ./hello_world.py $ cat hello_world.py | singularity exec /tmp/debian.sif python $ sudo singularity exec --writable /tmp/debian.sif apt-get update $ singularity exec instance://my_instance ps -ef $ singularity exec library://centos cat /etc/os-release .EE .SH "همچنین ببینید (SEE ALSO)" \fBsingularity(1)\fP .SH "تاریخچه (HISTORY)" 30-Jul-2026 تولید خودکار توسط spf13/cobra