systemd system manager نسخه 244

پس از سه ماه توسعه ارایه شده انتشار مدیر سیستم systemd 244.

تغییرات اصلی:

  • پشتیبانی اضافه شده برای کنترل کننده منبع cpuset بر اساس cgroups v2، که مکانیزمی برای اتصال فرآیندها به CPUهای خاص (تنظیم "AllowedCPUs") و گره های حافظه NUMA (تنظیم "AllowedMemoryNodes") فراهم می کند.
  • پشتیبانی از بارگیری تنظیمات از متغیر SystemdOptions EFI برای پیکربندی systemd اضافه شده است، که به شما امکان می‌دهد رفتار systemd را در شرایطی که تغییر گزینه‌های خط فرمان هسته مشکل‌ساز است و پیکربندی از دیسک خیلی دیر خوانده می‌شود، سفارشی کنید (به عنوان مثال، زمانی که نیاز به پیکربندی گزینه‌ها دارید. مربوط به سلسله مراتب cgroup). برای تنظیم یک متغیر در EFI، می توانید از دستور 'bootctl systemd-efi-options' استفاده کنید.
  • پشتیبانی به واحدها برای بارگیری تنظیمات از فهرست‌های «{unit_type}.d/» مرتبط با انواع واحدها (به عنوان مثال، «service.d/»)، که می‌تواند برای افزودن تنظیماتی که همه فایل‌های واحد از یک نوع معین را پوشش می‌دهند، استفاده شود. یک بار؛
  • برای واحدهای خدماتی، یک حالت جداسازی جعبه ایمنی جدید ProtectKernelLogs اضافه شده است که به شما امکان می دهد دسترسی برنامه به بافر گزارش هسته را که از طریق فراخوانی سیستم syslog قابل دسترسی است (با API با همان نام ارائه شده در libc اشتباه نگیرید) ممنوع می کند. اگر حالت فعال شود، دسترسی برنامه به /proc/kmsg، /dev/kmsg و CAP_SYSLOG مسدود خواهد شد.
  • برای واحدها، یک تنظیم RestartKillSignal پیشنهاد شده است که به شما امکان می دهد تعداد سیگنال مورد استفاده برای خاتمه دادن به فرآیند را در حین راه اندازی مجدد کار دوباره تعریف کنید (می توانید رفتار توقف فرآیند را در مرحله آماده سازی برای راه اندازی مجدد تغییر دهید).
  • دستور "systemctl clean" برای استفاده با سوکت، مانت و واحدهای تعویض تطبیق داده شده است.
  • در مرحله اولیه بارگذاری، محدودیت‌هایی در شدت خروجی پیام‌های هسته از طریق تماس printk غیرفعال می‌شود، که اجازه می‌دهد گزارش‌های کامل‌تری درباره پیشرفت بارگیری در مرحله‌ای که ذخیره‌سازی گزارش هنوز متصل نشده است جمع‌آوری شود. در بافر حلقه هسته جمع می شود). تنظیم محدودیت‌های printk از خط فرمان هسته اولویت دارد و به شما امکان می‌دهد رفتار سیستمی را نادیده بگیرید. برنامه‌های سیستمی که مستقیماً گزارش‌ها را به /dev/kmsg خروجی می‌دهند (این کار فقط در اوایل مرحله بوت انجام می‌شود) از محدودیت‌های داخلی جداگانه برای محافظت در برابر گرفتگی بافر استفاده می‌کنند.
  • دستور 'stop --job-mode=triggering' به ابزار systemctl اضافه شده است که به شما امکان می دهد هم واحد مشخص شده در خط فرمان و هم تمام واحدهایی را که می توانند آن را فراخوانی کنند متوقف کنید.
  • اطلاعات وضعیت واحد اکنون شامل اطلاعاتی در مورد واحدهای فراخوانی و فراخوانی شده است.
  • امکان استفاده از تنظیم "RuntimeMaxSec" در واحدهای محدوده وجود دارد (قبلاً فقط در واحدهای خدمات استفاده می شد). به عنوان مثال، "RuntimeMaxSec" اکنون می تواند برای محدود کردن زمان جلسات PAM از طریق ایجاد یک واحد محدوده استفاده شود.
    برای یک حساب کاربری محدودیت زمانی را نیز می توان از طریق گزینه systemd.runtime_max_sec در پارامترهای ماژول pam_systemd PAM تنظیم کرد.

  • گروه جدیدی از تماس‌های سیستمی "@pkey" را اضافه کرد، هنگام محدود کردن کانتینرها و سرویس‌ها، و آسان‌تر کردن لیست سفید تماس‌های سیستمی مرتبط با حفاظت از حافظه.
  • اضافه شدن پرچم "w+" به systemd-tmpfiles برای نوشتن در حالت پیوست فایل.
  • اطلاعاتی به خروجی systemd-analyze اضافه شد در مورد اینکه آیا پیکربندی حافظه هسته با تنظیمات سیستم مطابقت دارد یا خیر (به عنوان مثال، اگر برخی از برنامه های شخص ثالث پارامترهای هسته را تغییر داده باشند).
  • گزینه "--base-time" به systemd-analyze اضافه شده است، در صورت مشخص شدن، داده های تقویم نسبت به زمان مشخص شده در این گزینه و نه نسبت به زمان فعلی سیستم محاسبه می شود.
  • "journalctl —update-catalog" سازگاری در توالی عناصر در خروجی را تضمین می کند (مفید برای سازماندهی ساخت های قابل تکرار).
  • قابلیت تعیین یک مقدار پیش فرض برای تنظیم "WatchdogSec" مورد استفاده در سرویس های systemd اضافه شده است. در زمان کامپایل، مقدار پایه را می توان از طریق گزینه "-Dservice-watchdog" تعیین کرد (اگر روی خالی تنظیم شود، Watchdog غیرفعال می شود).
  • گزینه ساخت "-Duser-path" برای نادیده گرفتن مقدار $PATH اضافه شد.
  • گزینه "-u" ("--uuid") به systemd-id128 برای خروجی شناسه های 128 بیتی در UUID (نمایش متعارف UUID) اضافه شد.
  • ساخت اکنون حداقل به نسخه 2.0.1 libcryptsetup نیاز دارد.

تغییرات مربوط به تنظیمات شبکه:

  • Systemd-networkd پشتیبانی از پیکربندی مجدد یک پیوند در حال پرواز را اضافه کرده است، که برای آن دستورات "reload" و "Reconfigure DEVICE..." برای بارگیری مجدد تنظیمات و پیکربندی مجدد دستگاه ها به networkctl اضافه شده است.
  • systemd-networkd ایجاد مسیرهای پیش‌فرض برای پیوندهای IPv4 محلی با آدرس‌های اینترانت 169.254.0.0/16 را متوقف کرده است.پیوند محلی). پیش از این، ایجاد خودکار مسیرهای پیش‌فرض برای چنین پیوندهایی منجر به رفتار غیرمنتظره و مشکلات مسیریابی در برخی موارد می‌شد. برای بازگرداندن رفتار قدیمی، از تنظیم "DefaultRouteOnDevice=yes" استفاده کنید. به طور مشابه، اگر مسیریابی محلی IPv6 برای پیوند فعال نباشد، تخصیص آدرس‌های IPv6 محلی متوقف می‌شود.
  • در systemd-networkd، هنگام اتصال به شبکه‌های بی‌سیم در حالت ad-hoc، پیکربندی پیش‌فرض با آدرس‌دهی پیوند محلی (link-local) پیاده‌سازی می‌شود.
  • اضافه شدن پارامترهای RxBufferSiz و TxBufferSize برای پیکربندی اندازه بافرهای دریافت و ارسال رابط شبکه.
  • systemd-networkd تبلیغات مسیرهای IPv6 اضافی را که از طریق گزینه‌های Route و LifetimeSec در بخش «[IPv6RoutePrefix]» تنظیم می‌شوند، پیاده‌سازی می‌کند.
  • systemd-networkd قابلیت پیکربندی مسیرهای «next hop» را با استفاده از گزینه‌های «Gateway» و «Id» در بخش «[NextHop]» اضافه کرده است.
  • systemd-networkd و networkctl برای DHCP به‌روزرسانی فوری اتصالات آدرس IP (اجاره‌ها) را ارائه می‌دهند که توسط فرمان «networkctl renew» پیاده‌سازی می‌شوند.
  • systemd-networkd تضمین می‌کند که پیکربندی DHCP هنگام راه‌اندازی مجدد، بازنشانی می‌شود (از گزینه KeepConfiguration برای ذخیره تنظیمات استفاده کنید). مقدار پیش‌فرض تنظیمات SendRelease به "true" تغییر یافته است.
  • سرویس گیرنده DHCPv4 تضمین می کند که از مقدار گزینه OPTION_INFORMATION_REFRESH_TIME ارسال شده توسط سرور استفاده می شود. برای درخواست گزینه های خاص از سرور، پارامتر "RequestOptions" و برای ارسال گزینه ها به سرور - "SendOption" پیشنهاد می شود. برای پیکربندی نوع سرویس IP توسط سرویس گیرنده DHCP، پارامتر "IPServiceType" اضافه شده است.
  • برای جایگزینی لیست سرورهای SIP (پروتکل شروع جلسه) برای سرورهای DHCPv4، پارامترهای "EmitSIP" و "SIP" اضافه شده اند. در سمت کلاینت، دریافت پارامترهای SIP از سرور را می توان با استفاده از تنظیمات "UseSIP=yes" فعال کرد.
  • پارامتر "PrefixDelegationHint" را به سرویس گیرنده DHCPv6 برای درخواست پیشوند آدرس اضافه کرد.
  • فایل‌های .network از نگاشت شبکه‌های بی‌سیم توسط SSID و BSSID پشتیبانی می‌کنند، برای مثال برای اتصال به نام نقطه دسترسی و آدرس MAC. مقادیر SSID و BSSID در خروجی networkctl برای رابط های بی سیم نمایش داده می شوند. علاوه بر این، قابلیت مقایسه بر اساس نوع شبکه بی سیم اضافه شده است (پارامتر WLANInterfaceType).
  • systemd-networkd توانایی پیکربندی رشته‌های صف را برای کنترل ترافیک با استفاده از پارامترهای Parent جدید اضافه کرده است.
    NetworkEmulatorDelaySec، NetworkEmulatorDelayJitterSec،
    NetworkEmulatorPacketLimit و NetworkEmulatorLossRate،
    NetworkEmulatorDuplicateRate در بخش "[TrafficControlQueueingDiscipline]".

  • systemd-resolved تأیید آدرس‌های IP در گواهی‌ها را هنگام ساخت با GnuTLS فراهم می‌کند.

تغییرات مربوط به udev:

  • Systemd-udevd تایم اوت 30 ثانیه ای را حذف کرده تا کنترل کننده های گیر کرده را مجبور به پایان کار کند. Systemd-udevd اکنون منتظر تکمیل کنترل‌کننده‌هایی است که 30 ثانیه برای تکمیل عملیات به طور معمول در نصب‌های بزرگ کافی نبود (به عنوان مثال، یک مهلت زمانی می‌تواند راه‌اندازی درایور را در طول فرآیند تعویض پارتیشن نصب شده برای سیستم فایل ریشه قطع کند). هنگام استفاده از systemd، مدت زمانی که systemd-udevd قبل از خروج منتظر می ماند را می توان از طریق تنظیمات TimeoutStopSec در systemd-udevd.service تنظیم کرد. هنگامی که بدون systemd اجرا می شود، مهلت زمانی توسط پارامتر udev.event_timeout کنترل می شود.
  • برنامه fido_id برای udev اضافه شد که توکن های FIDO CTAP1 را شناسایی می کند
    ("U2F")/CTAP2 بر اساس داده های مربوط به استفاده گذشته آنها و نمایش متغیرهای محیط ضروری (این برنامه به شما امکان می دهد بدون لیست سفید خارجی تمام نشانه های شناخته شده ای که قبلا استفاده شده است) انجام دهید.

  • اجرای خودکار قوانین تعلیق خودکار udev برای دستگاه‌ها از لیست سفید وارد شده از Chromium OS (این تغییر به شما امکان می‌دهد استفاده از حالت‌های صرفه‌جویی در مصرف انرژی را برای دستگاه‌های اضافی گسترش دهید).
  • یک تنظیم جدید «CONST{key}=value» به udev اضافه شده است تا امکان نگاشت مقادیر ثابت سیستم را مستقیماً بدون اجرای کنترل‌کننده‌های چک جداگانه فراهم کند. در حال حاضر فقط کلیدهای "arch" و "virt" پشتیبانی می شوند.
  • CDROM را برای باز کردن در حالت غیر انحصاری هنگام انجام عملیات درخواست برای حالت‌های پشتیبانی شده فعال کرد (این تغییر مشکلات برنامه‌های دسترسی به CDROM را حل می‌کند و خطر قطع برنامه‌های نوشتن دیسک را که از حالت دسترسی انحصاری استفاده نمی‌کنند، کاهش می‌دهد).

منبع: opennet.ru

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