گنوم برای مدیریت از طریق systemd سازگار شده است

بنجامین برگ (بنجامین برگیکی از مهندسان Red Hat که در توسعه گنوم نقش دارد، خلاصه شده است نتایج کار روی انتقال گنوم به مدیریت جلسه منحصراً با استفاده از systemd، بدون استفاده از فرآیند gnome-session.

مدت زیادی است که برای کنترل ورود به گنوم استفاده می شود. systemd-loginکه وضعیت‌های جلسه خاص کاربر را ردیابی می‌کند، شناسه‌های جلسه را مدیریت می‌کند، مسئول جابه‌جایی بین جلسات فعال، هماهنگی محیط‌های چند صندلی، پیکربندی خط‌مشی‌های دسترسی دستگاه، ارائه ابزارهایی برای خاموش کردن و رفتن به خواب و غیره است.

در همان زمان، بخشی از عملکرد مربوط به جلسه بر عهده فرآیند gnome-session باقی ماند که مسئول مدیریت از طریق D-Bus، راه‌اندازی مدیر نمایش و اجزای GNOME و سازماندهی اجرای خودکار برنامه‌های کاربردی مشخص شده توسط کاربر بود. . در طول توسعه گنوم 3.34، ویژگی‌های خاص gnome-session به عنوان فایل‌های واحد برای systemd بسته‌بندی می‌شوند که در حالت «systemd —user» اجرا می‌شوند. در رابطه با محیط یک کاربر خاص و نه کل سیستم. این تغییرات قبلاً در توزیع فدورا 31 اعمال شده است که انتظار می رود در پایان اکتبر منتشر شود.

استفاده از systemd امکان سازماندهی راه‌اندازی کنترل‌کننده‌ها را در صورت تقاضا یا زمانی که رویدادهای خاصی رخ می‌دهد، و همچنین پاسخ پیچیده‌تر به خاتمه زودهنگام فرآیندها به دلیل خرابی‌ها و مدیریت گسترده وابستگی‌ها هنگام راه‌اندازی اجزای GNOME را ممکن می‌سازد. در نتیجه می توانید تعداد فرآیندهای در حال اجرا مداوم را کاهش دهید و مصرف حافظه را کاهش دهید. برای مثال، XWayland اکنون تنها می‌تواند در هنگام تلاش برای اجرای برنامه‌ای مبتنی بر پروتکل X11 راه‌اندازی شود، و اجزای سخت‌افزاری را تنها در صورت وجود چنین سخت‌افزاری می‌توان راه‌اندازی کرد (به عنوان مثال، کنترل‌کننده‌های کارت‌های هوشمند با قرار دادن کارت شروع به کار خواهند کرد. و با حذف آن خاتمه یابد).

ابزارهای انعطاف‌پذیرتری برای مدیریت راه‌اندازی سرویس‌ها برای کاربر ظاهر شده است؛ به عنوان مثال، برای غیرفعال کردن کنترل‌کننده کلید چندرسانه‌ای، اجرای «systemctl -user stop gsd-media-keys.target» کافی است. در صورت بروز مشکل، گزارش‌های مربوط به هر کنترلر را می‌توان با دستور journalctl مشاهده کرد (به عنوان مثال، "journalctl —user -u gsd-media-keys.service")، که قبلاً ثبت اشکال زدایی در سرویس را فعال کرده باشد ("Environment=" G_MESSAGES_DEBUG=همه»). همچنین می‌توان تمام اجزای گنوم را در محیط‌های سندباکس ایزوله اجرا کرد که مشمول الزامات امنیتی افزایش یافته است.

برای صاف کردن انتقال، از روش قدیمی اجرای فرآیندها پشتیبانی کنید برنامه ریزی شده در چندین چرخه توسعه گنوم ادامه یابد. در مرحله بعد، توسعه دهندگان وضعیت gnome-session را بررسی خواهند کرد و به احتمال زیاد (که به عنوان "احتمالا" مشخص شده است) ابزارهای راه اندازی فرآیندها و حفظ API D-Bus را از آن حذف خواهند کرد. سپس استفاده از "systemd -user" به دسته توابع اجباری تنزل می یابد، که می تواند برای سیستم های بدون سیستم مشکل ایجاد کند و نیاز به تهیه یک راه حل جایگزین دارد، همانطور که در گذشته مورد بود. systemd-login. با این حال، بنجامین برگ در سخنرانی خود در GUADEC 2019 به قصد حفظ پشتیبانی از روش راه‌اندازی قدیمی برای سیستم‌های بدون سیستم اشاره کرد، اما این اطلاعات در تضاد با برنامه‌هایی برای صفحه پروژه.

منبع: opennet.ru

اضافه کردن نظر