پس از سه ماه و نیم توسعه، نسخه مدیریت سیستم systemd 253 ارائه شد.
از جمله تغییرات نسخه جدید:
- این بسته شامل ابزار 'ukify' است که برای ساخت، تأیید و تولید امضا برای تصاویر هسته یکپارچه (UKI، تصویر هسته یکپارچه)، ترکیب یک کنترل کننده برای بارگیری هسته از UEFI (خرد بوت UEFI)، یک تصویر هسته لینوکس و یک محیط سیستم در حافظه initrd بارگذاری شده است که برای مقداردهی اولیه در مرحله قبل از نصب سیستم فایل ریشه استفاده می شود. این ابزار جایگزین عملکردی می شود که قبلاً توسط دستور 'dracut -uefi' ارائه شده بود و آن را با قابلیت هایی برای محاسبه خودکار offset ها در فایل های PE، ادغام initrds، امضای تصاویر هسته جاسازی شده، ایجاد تصاویر ترکیبی با sbsign، اکتشافی برای تعیین نام هسته، بررسی تصویر با صفحه نمایش اسپلش و افزودن خط مشی های PCR امضا شده تولید شده توسط ابزار systemd-measure.
- پشتیبانی از محیطهای initrd اضافه شده است که با قرار دادن حافظه محدود نمیشود، که در آن به جای tmpfs از overlayfs استفاده میشود. برای چنین محیط هایی، systemd پس از تغییر سیستم فایل ریشه، همه فایل های موجود در initrd را حذف نمی کند.
- پارامتر "OpenFile" به خدمات باز کردن فایلهای دلخواه در سیستم فایل (یا اتصال به سوکتهای یونیکس) و ارسال توصیفکنندههای فایل مرتبط به فرآیند راهاندازی شده اضافه شده است (به عنوان مثال، زمانی که نیاز به سازماندهی دسترسی به یک فایل برای یک فایل دارید. سرویس غیرمجاز بدون تغییر حقوق دسترسی به فایل).
- در systemd-cryptenroll، هنگام ثبت کلیدهای جدید، می توان قفل پارتیشن های رمزگذاری شده را با استفاده از توکن های FIDO2 (--unlock-fido2-device) بدون نیاز به رمز عبور باز کرد. یک کد پین مشخص شده توسط کاربر با نمک ذخیره می شود تا تشخیص brute-force را پیچیده کند.
- تنظیمات ReloadLimitIntervalSec و ReloadLimitBurst و همچنین گزینههای خط فرمان هسته (systemd.reload_limit_interval_sec و /systemd.reload_limit_burst) را برای محدود کردن شدت شروع مجدد فرآیند پسزمینه اضافه کرد.
- برای واحدها، گزینه "MemoryZSwapMax" برای پیکربندی ویژگی memory.zswap.max، که حداکثر اندازه zswap را تعیین می کند، پیاده سازی شده است.
- برای واحدها، گزینه "LogFilterPatterns" پیاده سازی شده است که به شما امکان می دهد عبارات منظم را برای فیلتر کردن خروجی اطلاعات در گزارش تنظیم کنید (برای حذف خروجی خاص یا ذخیره فقط داده های خاص استفاده می شود).
- واحدهای محدوده اکنون از تنظیم "OOMPolicy" پشتیبانی می کنند تا رفتار را هنگام تلاش برای پیش گرفتن در زمانی که حافظه کم است تنظیم کند (جلسات ورود به سیستم روی OOMPolicy=continue تنظیم شده اند تا قاتل OOM به زور آنها را خاتمه ندهد).
- یک نوع سرویس جدید تعریف شده است - "Type=notify-reload" که نوع "Type=Notify" را با قابلیت انتظار برای تکمیل پردازش سیگنال راه اندازی مجدد (SIGHUP) گسترش می دهد. سرویس های systemd-networkd.service، systemd-udevd.service و systemd-logind به نوع جدید منتقل شده اند.
- udev از طرح نامگذاری جدیدی برای دستگاههای شبکه استفاده میکند، تفاوت این است که برای دستگاههای USB که به گذرگاه PCI متصل نیستند، ID_NET_NAME_PATH اکنون برای اطمینان از نامهای قابل پیشبینیتر تنظیم شده است. عملگر '-=' برای متغیرهای SYMLINK پیادهسازی شده است و اگر قبلاً قانونی برای اضافه کردن آنها تعریف شده باشد، پیوندهای نمادین پیکربندی نشده است.
- در systemd-boot، انتقال seed برای مولدهای اعداد شبه تصادفی در هسته و برای باطن دیسک دوباره کار شده است. پشتیبانی اضافه شده برای بارگیری هسته نه تنها از ESP (پارتیشن سیستم EFI)، به عنوان مثال، از میان افزار یا مستقیماً برای QEMU. تجزیه پارامترهای SMBIOS برای تعیین راه اندازی در یک محیط مجازی سازی ارائه شده است. یک حالت جدید "if-safe" پیاده سازی شده است که در آن گواهی برای UEFI Secure Boot تنها در صورتی که ایمن در نظر گرفته شود (در یک ماشین مجازی اجرا می شود) از ESP بارگیری می شود.
- ابزار bootctl تولید توکن های سیستم را در تمام سیستم های EFI، به جز محیط های مجازی سازی، پیاده سازی می کند. دستورات «شناسایی هسته» و «بازرسی هسته» برای نمایش نوع تصویر هسته و اطلاعات مربوط به گزینههای خط فرمان و نسخه هسته، «لغو پیوند» برای حذف فایل مرتبط با اولین نوع رکوردهای بوت، «پاکسازی» برای حذف همه فایلهای دایرکتوری «توکن ورودی» در ESP و XBOOTLDR که با اولین نوع رکوردهای بوت مرتبط نیستند. پردازش متغیر KERNEL_INSTALL_CONF_ROOT ارائه شده است.
- دستور 'systemctl list-dependencies' اکنون از پردازش گزینه های '--type' و '--state' پشتیبانی می کند و دستور 'systemctl kexec' پشتیبانی از محیط های مبتنی بر Hypervisor Xen را اضافه می کند.
- در فایلهای شبکه در بخش [DHCPv4]، اکنون پشتیبانی از گزینههای SocketPriority و QuickAck، RouteMetric=high|medium|low اضافه شده است.
- Systemd-repart گزینههای «--include-partitions»، «--exclude-partitions» و «--defer-partitions» را برای فیلتر کردن پارتیشنها بر اساس نوع UUID اضافه کرد، که برای مثال، به شما امکان میدهد تصاویری بسازید که در آن یک پارتیشن وجود دارد. بر اساس محتویات یک پارتیشن دیگر ساخته شده است. همچنین گزینه "--sector-size" را برای تعیین اندازه بخش مورد استفاده در هنگام ایجاد پارتیشن اضافه کرد. پشتیبانی از تولید فایل erofs اضافه شده است. تنظیم Minimize پردازش مقدار "بهترین" را برای انتخاب حداقل اندازه تصویر ممکن اجرا می کند.
- systemd-journal-remote اجازه می دهد تا از تنظیمات MaxUse، KeepFree، MaxFileSize و MaxFiles برای محدود کردن مصرف فضای دیسک استفاده کنید.
- systemd-cryptsetup پشتیبانی از ارسال درخواستهای فعال به توکنهای FIDO2 را اضافه میکند تا حضور آنها قبل از احراز هویت مشخص شود.
- پارامترهای جدید tpm2-measure-bank و tpm2-measure-pcr به crypttab اضافه شده است.
- systemd-gpt-auto-generator نصب پارتیشنهای ESP و XBOOTLDR را در حالتهای "noexec, nosuid, nodev" پیادهسازی میکند و همچنین حسابداری برای پارامترهای rootfstyle و rootflags را اضافه میکند که از طریق خط فرمان کرنل ارسال میشوند.
- systemd-resolved با تعیین گزینه های nameserver، domain، network.dns و network.search_domains در خط فرمان هسته، امکان پیکربندی پارامترهای Resolver را فراهم می کند.
- دستور “systemd-analyze plot” اکنون این قابلیت را دارد که در هنگام تعیین پرچم “-json” با فرمت JSON خروجی بگیرد. گزینه های جدید "--table" و "-no-legend" نیز برای کنترل خروجی اضافه شده اند.
- در سال 2023، ما قصد داریم به پشتیبانی از cgroups v1 و سلسله مراتب دایرکتوری تقسیم شده پایان دهیم (که در آن /usr به طور جداگانه از ریشه نصب شده است، یا /bin و /usr/bin، /lib و /usr/lib از هم جدا شده اند).
منبع: opennet.ru