virt-login-shell(1) Virtualization Support virt-login-shell(1)

virt-login-shell - شل لاگین برای اتصال مستقیم کاربر به کانتینر LXC

virt-login-shell [گزینه‌ها]

برنامه virt-login-shell یک پوسته setuid است که برای پیوستن به کانتینر LXC متناظر با نام کاربر استفاده می‌شود. اگر کانتینر در حال اجرا نباشد، virt-login-shell تلاش می‌کند تا آن را راه‌اندازی کند. کاربر ریشه (root) مجاز به اجرای virt-login-shell نیست. کاربران عادی در صورتی که نام کاربری آن‌ها با یک کانتینر موجود مطابقت داشته باشد و در فایل /etc/libvirt/virt-login-shell.conf پیکربندی شده باشند، به آن کانتینر وارد خواهند شد.

ساختار پایه بیشتر کاربردهای virt-login-shell به صورت زیر است:

virt-login-shell

-c CMD

به شل دستور می‌دهد به جای نمایش اعلان شل تعاملی، دستور CMD را اجرا کند.

-h, --help

نمایش راهنمای خط فرمان و خروج.

-V, --version

نمایش اطلاعات نسخه و خروج.

به صورت پیش‌فرض، virt-login-shell برنامه /bin/sh را برای کاربر اجرا می‌کند. می‌توانید این رفتار را با تعریف متغیر shell در فایل /etc/libvirt/virt-login-shell.conf تغییر دهید؛ به عنوان مثال:

shell = [ "/bin/bash" ]

اگر گزینه پیکربندی auto_shell تنظیم شده باشد، تلاش می‌کند تا شل را به طور خودکار از فایل /etc/passwd درون کانتینر شناسایی کند. این کار فقط در صورتی باید انجام شود که کانتینر دایرکتوری /etc مجزایی از میزبان داشته باشد؛ در غیر این صورت به فراخوانی بازگشتی virt-login-shell منجر خواهد شد؛ به عنوان مثال:

auto_shell = 1

به طور پیش‌فرض هیچ کاربری مجاز به استفاده از virt-login-shell نیست. اگر می‌خواهید به کاربران خاصی اجازه استفاده از virt-login-shell را بدهید، باید متغیر allowed_users را در فایل /etc/libvirt/virt-login-shell.conf تغییر دهید؛ به عنوان مثال:

allowed_users = [ "tom", "dick", "harry" ]

virt-login-shell معمولاً وضعیت خروج دستوری را که اجرا کرده است بازمی‌گرداند. اگر دستور توسط یک سیگنال متوقف شده باشد، اما آن سیگنال برای virt-login-shell کشنده نباشد، شماره سیگنال به علاوه ۱۲۸ بازگردانده می‌شود.

وضعیت‌های خروج تولیدشده توسط خود virt-login-shell:

  • 0 یکی از گزینه‌ها برای کسب اطلاعات بیشتر درباره این فایل اجرایی استفاده شده است.
  • 125 خطای عمومی پیش از تلاش برای اجرای شل پیکربندی‌شده؛ برای مثال اگر libvirtd در حال اجرا نباشد.
  • 126 شل پیکربندی‌شده وجود دارد اما قابل اجرا نیست.
  • 127 شل پیکربندی‌شده یافت نشد.

لطفاً هرگونه اشکال کشف‌شده را گزارش دهید. این کار را می‌توانید از طریق یکی از روش‌های زیر انجام دهید:

1.
فهرست پستی

https://libvirt.org/contact.html

2.
سیستم ردیابی اشکالات

https://libvirt.org/bugs.html

همچنین می‌توانید اشکالات را به توزیع‌کننده یا ارائه‌دهنده نرم‌افزار خود گزارش دهید.

Daniel Walsh

حق نشر © ۲۰۱۳-۲۰۱۴ متعلق به Red Hat, Inc. و نویسندگان فهرست‌شده در فایل AUTHORS مربوط به libvirt است.

virt-login-shell تحت شرایط مجوز GNU LGPL v2+ منتشر شده است. این یک نرم‌افزار آزاد است؛ برای شرایط کپی‌برداری به کد منبع مراجعه کنید. هیچ ضمانتی وجود ندارد؛ حتی برای قابلیت تجاری یا تناسب برای یک هدف خاص.

virsh(1), https://libvirt.org