Distrobox 1.6 منتشر شد و به شما امکان میدهد هر توزیعی را به سرعت در یک کانتینر نصب و اجرا کنید. Linux و از ادغام آن با سیستم اصلی اطمینان حاصل شود. کد این پروژه در Shell نوشته شده و تحت مجوز GPLv3 توزیع شده است.
این پروژه یک افزونه برای Docker، Podman یا Lilipod ارائه میدهد و به دلیل سادهسازی فوقالعادهی عملکرد و ادغام محیط در حال اجرا با بقیهی سیستم، متمایز میشود. برای ایجاد یک محیط با توزیع دیگر، کافیست دستور distrobox-create را اجرا کنید، بدون اینکه نگران جزئیات باشید. پس از راهاندازی، Distrobox دایرکتوری خانگی کاربر را به کانتینر ارسال میکند و دسترسی به ... را پیکربندی میکند. سرور X11 و Wayland برای اجرای برنامههای گرافیکی از یک کانتینر، امکان اتصال درایوهای خارجی، اضافه کردن خروجی صدا و پیادهسازی یکپارچهسازی در سطح SSH agent، D-Bus و udev.
Distrobox ادعا میکند که میتواند از ۲۵ توزیع به عنوان سیستم میزبان استفاده کند، از جمله Alpine، Manjaro، Gentoo، EndlessOS، NixOS، Void، Arch، SUSE، Ubuntu, Debian، RHEL و Fedora. هر توزیعی که تصاویر OCI برای آن موجود باشد، میتواند در یک کانتینر اجرا شود. پس از نصب، کاربر میتواند بدون ترک سیستم اصلی، از توزیع دیگر به طور کامل استفاده کند.
حوزههای اصلی کاربرد شامل آزمایشهایی با توزیعهای بهروزشده اتمی، مانند سیستمعامل Endless، Fedora Silverblue، OpenSUSE MicroOS و SteamOS3، ایجاد محیطهای جدا شده جداگانه (به عنوان مثال، برای اجرای پیکربندی خانگی در لپتاپ کاری)، دسترسی به نسخههای جدیدتر است. برنامه های کاربردی از شاخه های تجربی توزیع ها.
در نسخه جدید:
- پشتیبانی اضافه شده برای جعبه ابزار برای مدیریت ظروف لیلیپود ایزوله، که توسط نویسنده Distrobox ایجاد شده است. این جعبه ابزار به شما امکان می دهد تا تصاویر کانتینر را با فرمت OCI از مخازن مختلف بارگیری و باز کنید، تصاویر را مدیریت کنید و همچنین کانتینرهایی را از تصاویر به دست آمده ایجاد و اجرا کنید. رابط خط فرمان lilipod تا حد امکان به Podman، Docker و Nerdctl نزدیک است، اما در تمرکز بر سادگی و مینیمالیسم متفاوت است (فقط ضروری ترین عملکردها پشتیبانی می شوند).
کانتینرها برای اجرا در زیر یک کاربر واحد با جداسازی سیستم فایل با استفاده از فضاهای نام نقطه مونت (شبکه اختیاری، فضای نام pid و ipc را می توان استفاده کرد) ایجاد شده است. محدودیت های اضافی تنظیم شده از طریق seccomp، قابلیت ها و cgroup ها پشتیبانی نمی شوند. Lilipod به عنوان یک جعبه ابزار بازگشتی داخلی برای Distrobox قرار گرفته است که در مواقعی که سیستم دارای مدیران کانتینر کاربردی تری نباشد استفاده می شود. جعبه ابزار با استفاده از پیوند استاتیک ساخته شده است و به وابستگی های خارجی وابسته نیست.
- ادغام بهبود یافته با فناوری های NVIDIA مانند CUDA.
- بهبود فرآیند اولیه سازی
- بهبود کار با پوسته فرمان کاربر در داخل ظرف.
- در کانتینرهایی با حقوق ریشه، رمز عبور کاربر به درستی برای اجرای برنامه sudo پیکربندی شده است.
- پشتیبانی بهبود یافته برای کانتینرها با سیستم اولیه سازی خود (initful). قابلیت استفاده از سیستم اولیه OpenRC اضافه شده است. از جلسات کاربر مبتنی بر سیستم پشتیبانی می کند.
- گزینه های جدید "--unshare-all"، "-unshare-netns"، "-unshare-process" و "-unshare-devsys" به دستور "distrobox create" اضافه شده اند.
- امکان استفاده از کانتینرهای راه اندازی شده در حالت های initful و unshare-all در محیط های مبتنی بر LXC و Libvirt وجود دارد.
- پارامتر پیکربندی container_additional_volumes اضافه شد تا مشخص شود کدام نقاط اتصال در کانتینرها استفاده می شود.
- امکان اجرای فایل های باینری اکسپورت شده در محیط های مختلف DistroBox را فراهم می کند.
- دستور "distrobox assemble" اکنون از تمامی گزینه های دستور "distrobox create" پشتیبانی می کند. قابلیت صادرات برنامهها و فایلهای باینری را مستقیماً از مانیفست پیادهسازی کرد.
- مشکلات تنظیم منطقه زمانی حل شده است.
منبع: opennet.ru
