systemd menedżer systemu wersja 253

Po trzech i pół miesiącach prac zaprezentowano wydanie menedżera systemu Systemd 253.

Wśród zmian w nowej wersji:

  • Pakiet zawiera narzędzie „ukify”, przeznaczone do budowania, weryfikowania i generowania podpisów dla ujednoliconych obrazów jądra (UKI, Unified Kernel Image), łączące moduł obsługi do ładowania jądra z UEFI (odcinek rozruchowy UEFI), obraz jądra Linuksa i środowisko systemowe ładowane do pamięci initrd, wykorzystywane do wstępnej inicjalizacji na etapie przed zamontowaniem głównego systemu plików. Narzędzie zastępuje funkcjonalność wcześniej zapewnianą przez polecenie „dracut -uefi” i uzupełnia ją o możliwości automatycznego obliczania przesunięć w plikach PE, łączenia initrdów, podpisywania osadzonych obrazów jądra, tworzenia połączonych obrazów za pomocą sbsign, heurystyki do określania nazwy uname jądra, sprawdzania obraz z ekranem powitalnym i dodanie podpisanych zasad PCR wygenerowanych przez narzędzie systemd-measure.
  • Dodano obsługę środowisk initrd nieograniczonych rozmieszczeniem pamięci, w których zamiast tmpfs używane są overlayfs. W takich środowiskach systemd nie usuwa wszystkich plików z initrd po przełączeniu głównego systemu plików.
  • Do usług otwierania dowolnych plików w systemie plików (lub łączenia się z gniazdami Uniksa) i przekazywania skojarzonych z nimi deskryptorów plików do uruchomionego procesu dodano parametr „OpenFile” (np. gdy trzeba zorganizować dostęp do pliku dla usługa nieuprzywilejowana bez zmiany praw dostępu do pliku).
  • W systemd-cryptenroll podczas rejestracji nowych kluczy możliwe jest odblokowanie zaszyfrowanych partycji za pomocą tokenów FIDO2 (--unlock-fido2-device) bez konieczności podawania hasła. Określony przez użytkownika kod PIN jest przechowywany z solą, aby skomplikować wykrywanie metodą brute-force.
  • Dodano ustawienia ReloadLimitIntervalSec i ReloadLimitBurst, a także opcje wiersza poleceń jądra (systemd.reload_limit_interval_sec i /systemd.reload_limit_burst), aby ograniczyć intensywność restartów procesów w tle.
  • Dla jednostek zaimplementowano opcję „MemoryZSwapMax” umożliwiającą skonfigurowanie właściwości memory.zswap.max, która określa maksymalny rozmiar zswap.
  • Dla jednostek zaimplementowano opcję „LogFilterPatterns”, która umożliwia ustawienie wyrażeń regularnych filtrujących informacje wyjściowe do logu (można zastosować do wykluczenia niektórych wyników lub zapisania tylko niektórych danych).
  • Jednostki zakresu obsługują teraz ustawienie „OOMPolicy”, aby ustawić zachowanie podczas próby wywłaszczenia, gdy jest mało pamięci (sesje logowania są ustawione na OOMPolicy=kontynuuj, aby zabójca OOM nie zakończył ich na siłę).
  • Zdefiniowano nowy typ usługi – „Type=notify-reload”, który rozszerza typ „Type=notify” o możliwość oczekiwania na zakończenie przetwarzania sygnału restartu (SIGHUP). Usługi systemd-networkd.service, systemd-udevd.service i systemd-logind zostały przeniesione do nowego typu.
  • udev używa nowego schematu nazewnictwa dla urządzeń sieciowych, z tą różnicą, że dla urządzeń USB niepodłączonych do magistrali PCI, ID_NET_NAME_PATH jest teraz ustawione, aby zapewnić bardziej przewidywalne nazwy. Dla zmiennych SYMLINK zaimplementowano operator '-=', pozostawiając dowiązania symboliczne nieskonfigurowane, jeśli wcześniej zdefiniowano regułę ich dodawania.
  • W systemd-boot przerobiono transmisję nasion dla generatorów liczb pseudolosowych w jądrze i dla zaplecza dyskowego. Dodano obsługę ładowania jądra nie tylko z ESP (partycji systemowej EFI), np. z firmware lub bezpośrednio dla QEMU. Aby określić uruchomienie w środowisku wirtualizacji, zapewniona jest analiza parametrów SMBIOS. Zaimplementowano nowy tryb „if-safe”, w którym certyfikat UEFI Secure Boot jest ładowany z ESP tylko wtedy, gdy zostanie uznany za bezpieczny (działa na maszynie wirtualnej).
  • Narzędzie bootctl implementuje generowanie tokenów systemowych we wszystkich systemach EFI, z wyjątkiem środowisk wirtualizacyjnych. Dodano polecenia „kernel-identify” i „kernel-inspect” do wyświetlania typu obrazu jądra oraz informacji o opcjach wiersza poleceń i wersji jądra, „unlink” w celu usunięcia pliku powiązanego z pierwszym typem rekordów rozruchowych, „cleanup” w celu usunięcia wszystkich pliki z katalogu „entry-token” w ESP i XBOOTLDR, niezwiązane z pierwszym typem rekordów startowych. Zapewniono przetwarzanie zmiennej KERNEL_INSTALL_CONF_ROOT.
  • Komenda „systemctl list- zależnośćs” obsługuje teraz przetwarzanie opcji „--type” i „--state”, a komenda „systemctl kexec” dodaje obsługę środowisk opartych na hiperwizorze Xen.
  • W plikach .network w sekcji [DHCPv4] dodano obsługę opcji SocketPriority i QuickAck, RouteMetric=high|medium|low.
  • Systemd-repart dodał opcje „--include-partitions”, „--exclude-partitions” i „--defer-partitions” do filtrowania partycji według typu UUID, co pozwala na przykład na budowanie obrazów, w których jedna partycja jest zbudowany w oparciu o zawartość innej partycji. Dodano także opcję „--sector-size”, aby określić rozmiar sektora używanego podczas tworzenia partycji. Dodano obsługę generowania plików erofs. Ustawienie Minimalizuj implementuje przetwarzanie „najlepszej” wartości w celu wybrania minimalnego możliwego rozmiaru obrazu.
  • systemd-journal-remote umożliwia użycie ustawień MaxUse, KeepFree, MaxFileSize i MaxFiles w celu ograniczenia zużycia miejsca na dysku.
  • systemd-cryptsetup dodaje obsługę wysyłania proaktywnych żądań do tokenów FIDO2 w celu określenia ich obecności przed uwierzytelnieniem.
  • Do crypttab dodano nowe parametry tpm2-measure-bank i tpm2-measure-pcr.
  • systemd-gpt-auto-generator implementuje montowanie partycji ESP i XBOOTLDR w trybach „noexec,nosuid,nodev”, a także dodaje rozliczanie parametrów rootfstype i rootflags przekazywanych przez wiersz poleceń jądra.
  • systemd-resolved zapewnia możliwość skonfigurowania parametrów programu rozpoznawania nazw poprzez określenie opcji serwera nazw, domeny, network.dns i network.search_domains w wierszu poleceń jądra.
  • Polecenie „systemd-analyze plot” ma teraz możliwość generowania danych wyjściowych w formacie JSON po określeniu flagi „-json”. Do sterowania wyjściem dodano także nowe opcje „--table” i „-no-legend”.
  • W 2023 roku planujemy zakończyć obsługę cgroups v1 i podzielonych hierarchii katalogów (gdzie /usr jest montowany oddzielnie od katalogu głównego lub /bin i /usr/bin, /lib i /usr/lib są oddzielone).

Źródło: opennet.ru

Dodaj komentarz