.nh .TH "singularity" "1" "Jul 2026" "Auto generated by spf13/cobra" "" .SH "نام (NAME)" singularity-shell \- اجرای یک پوسته تعاملی درون کانتینر .SH "خلاصه دستور (SYNOPSIS)" \fBsingularity shell [shell options...] \fP .SH "توضیحات (DESCRIPTION)" دستور singularity shell از قالب‌های زیر پشتیبانی می‌کند: .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="" تعداد پردازنده‌های (CPUs) در دسترس کانتینر .PP \fB--cpuset-cpus\fP="" فهرست پردازنده‌های میزبان در دسترس کانتینر .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] راهنما برای shell .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' از ارسال شدن این اتصال به کانتینرهای تودرتو از طریق APPTAINER_BIND جلوگیری می‌کند. .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 برای راه‌اندازی پردازنده گرافیکی (GPU) (آزمایشی) .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-s\fP, \fB--shell\fP="" مسیر برنامه مورد استفاده برای پوسته تعاملی .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 "مثال‌ها (EXAMPLES)" .EX $ singularity shell /tmp/Debian.sif Singularity/Debian.sif> pwd /home/gmk/test Singularity/Debian.sif> exit $ singularity shell -C /tmp/Debian.sif Singularity/Debian.sif> pwd /home/gmk Singularity/Debian.sif> ls -l total 0 Singularity/Debian.sif> exit $ sudo singularity shell -w /tmp/Debian.sif $ sudo singularity shell --writable /tmp/Debian.sif $ singularity shell instance://my_instance $ singularity shell instance://my_instance Singularity: Invoking an interactive shell within container... Singularity container:~> ps -ef UID PID PPID C STIME TTY TIME CMD ubuntu 1 0 0 20:00 ? 00:00:00 /usr/local/bin/singularity/bin/appinit ubuntu 2 0 0 20:01 pts/8 00:00:00 /bin/bash --norc ubuntu 3 2 0 20:02 pts/8 00:00:00 ps -ef .EE .SH "همچنین ببینید (SEE ALSO)" \fBsingularity(1)\fP .SH "تاریخچه (HISTORY)" 30-Jul-2026 تولید خودکار توسط spf13/cobra