systemd system manager verze 242

[: ru]

Po dvou měsících vývoje prezentovány vydání správce systému systémové 242. Z novinek můžeme zaznamenat podporu L2TP tunelů, možnost ovládat chování systemd-logind při restartu pomocí proměnných prostředí, podporu rozšířených spouštěcích oddílů XBOOTLDR pro připojení /boot, možnost bootovat s kořenovým oddílem v overlayf, a také velké množství nových nastavení pro různé typy jednotek.

Hlavní změny:

  • systemd-networkd poskytuje podporu pro L2TP tunely;
  • sd-boot a bootctl poskytují podporu pro XBOOTLDR (Extended Boot Loader) oddíly navržené k připojení na /boot, navíc k ESP oddílům připojeným na /efi nebo /boot/efi. Jádra, nastavení, obrazy initrd a EFI lze nyní zavést z oddílů ESP i XBOOTLDR. Tato změna umožňuje používat zavaděč sd-boot v konzervativnějších scénářích, kdy je samotný zavaděč umístěn v ESP a načtená jádra a související metadata jsou umístěna v samostatné sekci;
  • Přidána možnost spouštění s volbou „systemd.volatile=overlay“ předanou jádru, která vám umožňuje umístit kořenový oddíl do překryvných fólií a organizovat práci nad obrazem kořenového adresáře pouze pro čtení se změnami zapsanými do samostatný adresář v tmpfs (změny v této konfiguraci se po restartu ztratí) . Analogicky systemd-nspawn přidal možnost „--volatile=overlay“ pro použití podobné funkce v kontejnerech;
  • systemd-nspawn přidal možnost "--oci-bundle", která umožňuje použití runtime balíčků pro izolované spouštění kontejnerů, které vyhovují specifikaci Open Container Initiative (OCI). Pro použití v jednotkách příkazového řádku a nspawn je navržena podpora různých možností popsaných ve specifikaci OCI, například možnosti „--inaccessible“ a „Inaccessible“ lze použít k vyloučení částí systému souborů a možnosti „ byly přidány volby --console pro konfiguraci standardních výstupních proudů a "-pipe";
  • Přidána možnost ovládat chování systemd-logind pomocí proměnných prostředí: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU a
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Pomocí těchto proměnných můžete připojit své vlastní obslužné rutiny procesu restartování (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu a
    /run/systemd/reboot-to-boot-loader-entry) nebo je úplně zakázat (pokud je hodnota nastavena na false);

  • Přidány možnosti „-boot-load-menu=“ a
    „—boot-loader-entry=“, což vám umožní vybrat konkrétní položku nabídky spouštění nebo režim zavádění po restartu;

  • Přidán nový příkaz izolace sandboxu „RestrictSUIDSGID=“, který používá seccomp k zákazu vytváření souborů s příznaky SUID/SGID;
  • Zajištěno, že omezení „NoNewPrivileges“ a „RestrictSUIDSGID“ jsou ve výchozím nastavení aplikována ve službách s režimem dynamického generování ID uživatele (povoleno „DynamicUser“);
  • Výchozí nastavení MACAddressPolicy=persistent v souborech .link bylo změněno, aby pokrylo více zařízení. Rozhraní síťových mostů, tunelů (tun, tap) a agregovaných spojů (bond) se neidentifikují kromě názvu síťového rozhraní, takže tento název se nyní používá jako základ pro vazbu MAC a IPv4 adres. Navíc bylo přidáno nastavení „MACAddressPolicy=random“, které lze použít k navázání MAC a IPv4 adres na zařízení v náhodném pořadí;
  • Soubory jednotek ".device" generované pomocí systemd-fstab-generator již neobsahují odpovídající jednotky ".mount" jako závislosti v sekci "Wants=". Pouhým připojením zařízení se již automaticky nespustí jednotka k připojení, ale takové jednotky lze stále spouštět z jiných důvodů, například jako součást local-fs.target nebo jako závislost na jiných jednotkách, které závisí na local-fs.target ;
  • Přidána podpora pro masky („*“ atd.) do příkazů „networkctl list/status/lldp“ pro odfiltrování určitých skupin síťových rozhraní podle části jejich názvu;
  • Proměnná prostředí $PIDFILE je nyní nastavena pomocí absolutní cesty nakonfigurované ve službách pomocí parametru "PIDFile=;".
  • Veřejné servery Cloudflare (1.1.1.1) byly přidány k počtu záložních serverů DNS používaných v případě, že hlavní DNS není explicitně definován. Chcete-li předefinovat seznam záložních serverů DNS, můžete použít volbu „-Ddns-servers=“;
  • Při detekci přítomnosti USB Device Controlleru se automaticky spustí nová obsluha usb-gadget.target (když systém běží na USB periferním zařízení);
  • Pro soubory jednotek bylo implementováno nastavení „CPUQuotaPeriodSec=“, které určuje časové období, vzhledem k němuž se měří kvóta času CPU, nastavená pomocí nastavení „CPUQuota=“;
  • Pro soubory jednotek bylo implementováno nastavení „ProtectHostname=“, které zakazuje službám měnit informace o názvu hostitele, i když mají příslušná oprávnění;
  • Pro soubory jednotek bylo implementováno nastavení “NetworkNamespacePath=”, které vám umožňuje svázat jmenný prostor se službami nebo soketovými jednotkami zadáním cesty k souboru jmenného prostoru v pseudo-FS /proc;
  • Přidána možnost zakázat nahrazování proměnných prostředí pro procesy spuštěné pomocí nastavení „ExecStart=“ přidáním znaku „:“ před příkaz start;
  • Pro časovače (jednotky .timer) nové příznaky „OnClockChange=“ a
    „OnTimezoneChange=“, pomocí kterého můžete ovládat volání jednotky, když se změní systémový čas nebo časové pásmo;

  • Přidána nová nastavení „ConditionMemory=“ a „ConditionCPUs=“, která určují podmínky pro volání jednotky v závislosti na velikosti paměti a počtu jader CPU (např. službu náročnou na zdroje lze spustit pouze v případě, že požadované množství RAM je k dispozici);
  • Byla přidána nová jednotka time-set.target, která akceptuje lokálně nastavený systémový čas, bez použití sladění s externími časovými servery pomocí jednotky time-sync.target. Novou jednotku mohou využívat služby, které potřebují přesnost nesynchronizovaných místních hodin;
  • Možnost „--show-transaction“ byla přidána k „systemctl start“ a podobným příkazům, pokud jsou zadány, zobrazí se souhrn všech úloh přidaných do fronty kvůli požadované operaci;
  • systemd-networkd implementuje definici nového „zotročeného“ stavu, který se používá místo „degradovaného“ nebo „nosného“ pro síťová rozhraní, která jsou součástí agregovaných spojů nebo síťových mostů. U primárních rozhraní byl v případě problémů s jedním ze složených spojů přidán stav 'degradovaná nosná';
  • Přidána možnost “IgnoreCarrierLoss=” do jednotek .network pro uložení nastavení sítě v případě ztráty spojení;
  • Prostřednictvím nastavení “RequiredForOnline=” v jednotkách .network nyní můžete nastavit minimální přijatelný stav propojení vyžadovaný pro přenos síťového rozhraní na “online” a spuštění obsluhy systemd-networkd-wait-online;
  • Přidána možnost „--any“ do systemd-networkd-wait-online, aby čekala na připravenost kteréhokoli ze zadaných síťových rozhraní namísto všech, a také možnost „--operational-state=“ pro určení stavu odkaz označující připravenost;
  • Přidáno nastavení „UseAutonomousPrefix=“ a „UseOnLinkPrefix=“ do jednotek .network, které lze použít k ignorování předpon při příjmu
    oznámení ze směrovače IPv6 (RA, Router Advertisement);

  • V jednotkách .network byla přidána nastavení „MulticastFlood=“, „NeighborSuppression=“ a „Learning=“ pro změnu provozních parametrů síťového mostu a také nastavení „TripleSampling=“ pro změnu režimu TRIPLE-SAMPLING virtuálních rozhraní CAN;
  • Do jednotek .netdev byla přidána nastavení „PrivateKeyFile=“ a „PresharedKeyFile=“, pomocí kterých můžete určit soukromé a sdílené (PSK) klíče pro rozhraní WireGuard VPN;
  • Do /etc/crypttab byly přidány volby same-cpu-crypt a submit-from-crypt-cpus, které řídí chování plánovače při migraci práce související se šifrováním mezi jádry CPU;
  • systemd-tmpfiles poskytuje zpracování souborů zámku před prováděním operací v adresářích s dočasnými soubory, což umožňuje zakázat práci na čištění zastaralých souborů po dobu trvání určitých akcí (například při rozbalování archivu tar v /tmp mohou být velmi staré soubory otevřené, které nelze smazat před ukončením akce s nimi);
  • Příkaz „systemd-analyze cat-config“ poskytuje možnost analyzovat konfiguraci rozdělenou do několika souborů, například uživatelské a systémové předvolby, obsah tmpfiles.d a sysusers.d, pravidla udev atd.
  • Přidána možnost "--cursor-file=" do "journalctl" pro specifikaci souboru pro načtení a uložení kurzoru;
  • Přidána definice ACRN hypervisoru a WSL subsystému (Windows Subsystem for Linux) do systemd-detect-virt pro následné větvení pomocí podmíněného operátoru „ConditionVirtualization“;
  • Během instalace systemd (při provádění "ninja install") se vytvoří symbolické odkazy na soubory systemd-networkd.service, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service a systemd-timesyncd.service. Chcete-li tyto soubory vytvořit, musíte nyní spustit příkaz „systemctl preset-all“.

Zdrojopennet.ru

[En]

Po dvou měsících vývoje prezentovány vydání správce systému systémové 242. Z novinek můžeme zaznamenat podporu L2TP tunelů, možnost ovládat chování systemd-logind při restartu pomocí proměnných prostředí, podporu rozšířených spouštěcích oddílů XBOOTLDR pro připojení /boot, možnost bootovat s kořenovým oddílem v overlayf, a také velké množství nových nastavení pro různé typy jednotek.

Hlavní změny:

  • systemd-networkd poskytuje podporu pro L2TP tunely;
  • sd-boot a bootctl poskytují podporu pro XBOOTLDR (Extended Boot Loader) oddíly navržené k připojení na /boot, navíc k ESP oddílům připojeným na /efi nebo /boot/efi. Jádra, nastavení, obrazy initrd a EFI lze nyní zavést z oddílů ESP i XBOOTLDR. Tato změna umožňuje používat zavaděč sd-boot v konzervativnějších scénářích, kdy je samotný zavaděč umístěn v ESP a načtená jádra a související metadata jsou umístěna v samostatné sekci;
  • Přidána možnost spouštění s volbou „systemd.volatile=overlay“ předanou jádru, která vám umožňuje umístit kořenový oddíl do překryvných fólií a organizovat práci nad obrazem kořenového adresáře pouze pro čtení se změnami zapsanými do samostatný adresář v tmpfs (změny v této konfiguraci se po restartu ztratí) . Analogicky systemd-nspawn přidal možnost „--volatile=overlay“ pro použití podobné funkce v kontejnerech;
  • systemd-nspawn přidal možnost "--oci-bundle", která umožňuje použití runtime balíčků pro izolované spouštění kontejnerů, které vyhovují specifikaci Open Container Initiative (OCI). Pro použití v jednotkách příkazového řádku a nspawn je navržena podpora různých možností popsaných ve specifikaci OCI, například možnosti „--inaccessible“ a „Inaccessible“ lze použít k vyloučení částí systému souborů a možnosti „ byly přidány volby --console pro konfiguraci standardních výstupních proudů a "-pipe";
  • Přidána možnost ovládat chování systemd-logind pomocí proměnných prostředí: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU a
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Pomocí těchto proměnných můžete připojit své vlastní obslužné rutiny procesu restartování (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu a
    /run/systemd/reboot-to-boot-loader-entry) nebo je úplně zakázat (pokud je hodnota nastavena na false);

  • Přidány možnosti „-boot-load-menu=“ a
    „—boot-loader-entry=“, což vám umožní vybrat konkrétní položku nabídky spouštění nebo režim zavádění po restartu;

  • Přidán nový příkaz izolace sandboxu „RestrictSUIDSGID=“, který používá seccomp k zákazu vytváření souborů s příznaky SUID/SGID;
  • Zajištěno, že omezení „NoNewPrivileges“ a „RestrictSUIDSGID“ jsou ve výchozím nastavení aplikována ve službách s režimem dynamického generování ID uživatele (povoleno „DynamicUser“);
  • Výchozí nastavení MACAddressPolicy=persistent v souborech .link bylo změněno, aby pokrylo více zařízení. Rozhraní síťových mostů, tunelů (tun, tap) a agregovaných spojů (bond) se neidentifikují kromě názvu síťového rozhraní, takže tento název se nyní používá jako základ pro vazbu MAC a IPv4 adres. Navíc bylo přidáno nastavení „MACAddressPolicy=random“, které lze použít k navázání MAC a IPv4 adres na zařízení v náhodném pořadí;
  • Soubory jednotek ".device" generované pomocí systemd-fstab-generator již neobsahují odpovídající jednotky ".mount" jako závislosti v sekci "Wants=". Pouhým připojením zařízení se již automaticky nespustí jednotka k připojení, ale takové jednotky lze stále spouštět z jiných důvodů, například jako součást local-fs.target nebo jako závislost na jiných jednotkách, které závisí na local-fs.target ;
  • Přidána podpora pro masky („*“ atd.) do příkazů „networkctl list/status/lldp“ pro odfiltrování určitých skupin síťových rozhraní podle části jejich názvu;
  • Proměnná prostředí $PIDFILE je nyní nastavena pomocí absolutní cesty nakonfigurované ve službách pomocí parametru "PIDFile=;".
  • Veřejné servery Cloudflare (1.1.1.1) byly přidány k počtu záložních serverů DNS používaných v případě, že hlavní DNS není explicitně definován. Chcete-li předefinovat seznam záložních serverů DNS, můžete použít volbu „-Ddns-servers=“;
  • Při detekci přítomnosti USB Device Controlleru se automaticky spustí nová obsluha usb-gadget.target (když systém běží na USB periferním zařízení);
  • Pro soubory jednotek bylo implementováno nastavení „CPUQuotaPeriodSec=“, které určuje časové období, vzhledem k němuž se měří kvóta času CPU, nastavená pomocí nastavení „CPUQuota=“;
  • Pro soubory jednotek bylo implementováno nastavení „ProtectHostname=“, které zakazuje službám měnit informace o názvu hostitele, i když mají příslušná oprávnění;
  • Pro soubory jednotek bylo implementováno nastavení “NetworkNamespacePath=”, které vám umožňuje svázat jmenný prostor se službami nebo soketovými jednotkami zadáním cesty k souboru jmenného prostoru v pseudo-FS /proc;
  • Přidána možnost zakázat nahrazování proměnných prostředí pro procesy spuštěné pomocí nastavení „ExecStart=“ přidáním znaku „:“ před příkaz start;
  • Pro časovače (jednotky .timer) nové příznaky „OnClockChange=“ a
    „OnTimezoneChange=“, pomocí kterého můžete ovládat volání jednotky, když se změní systémový čas nebo časové pásmo;

  • Přidána nová nastavení „ConditionMemory=“ a „ConditionCPUs=“, která určují podmínky pro volání jednotky v závislosti na velikosti paměti a počtu jader CPU (např. službu náročnou na zdroje lze spustit pouze v případě, že požadované množství RAM je k dispozici);
  • Byla přidána nová jednotka time-set.target, která akceptuje lokálně nastavený systémový čas, bez použití sladění s externími časovými servery pomocí jednotky time-sync.target. Novou jednotku mohou využívat služby, které potřebují přesnost nesynchronizovaných místních hodin;
  • Možnost „--show-transaction“ byla přidána k „systemctl start“ a podobným příkazům, pokud jsou zadány, zobrazí se souhrn všech úloh přidaných do fronty kvůli požadované operaci;
  • systemd-networkd implementuje definici nového „zotročeného“ stavu, který se používá místo „degradovaného“ nebo „nosného“ pro síťová rozhraní, která jsou součástí agregovaných spojů nebo síťových mostů. U primárních rozhraní byl v případě problémů s jedním ze složených spojů přidán stav 'degradovaná nosná';
  • Přidána možnost “IgnoreCarrierLoss=” do jednotek .network pro uložení nastavení sítě v případě ztráty spojení;
  • Prostřednictvím nastavení “RequiredForOnline=” v jednotkách .network nyní můžete nastavit minimální přijatelný stav propojení vyžadovaný pro přenos síťového rozhraní na “online” a spuštění obsluhy systemd-networkd-wait-online;
  • Přidána možnost „--any“ do systemd-networkd-wait-online, aby čekala na připravenost kteréhokoli ze zadaných síťových rozhraní namísto všech, a také možnost „--operational-state=“ pro určení stavu odkaz označující připravenost;
  • Přidáno nastavení „UseAutonomousPrefix=“ a „UseOnLinkPrefix=“ do jednotek .network, které lze použít k ignorování předpon při příjmu
    oznámení ze směrovače IPv6 (RA, Router Advertisement);

  • V jednotkách .network byla přidána nastavení „MulticastFlood=“, „NeighborSuppression=“ a „Learning=“ pro změnu provozních parametrů síťového mostu a také nastavení „TripleSampling=“ pro změnu režimu TRIPLE-SAMPLING virtuálních rozhraní CAN;
  • Do jednotek .netdev byla přidána nastavení „PrivateKeyFile=“ a „PresharedKeyFile=“, pomocí kterých můžete určit soukromé a sdílené (PSK) klíče pro rozhraní WireGuard VPN;
  • Do /etc/crypttab byly přidány volby same-cpu-crypt a submit-from-crypt-cpus, které řídí chování plánovače při migraci práce související se šifrováním mezi jádry CPU;
  • systemd-tmpfiles poskytuje zpracování souborů zámku před prováděním operací v adresářích s dočasnými soubory, což umožňuje zakázat práci na čištění zastaralých souborů po dobu trvání určitých akcí (například při rozbalování archivu tar v /tmp mohou být velmi staré soubory otevřené, které nelze smazat před ukončením akce s nimi);
  • Příkaz „systemd-analyze cat-config“ poskytuje možnost analyzovat konfiguraci rozdělenou do několika souborů, například uživatelské a systémové předvolby, obsah tmpfiles.d a sysusers.d, pravidla udev atd.
  • Přidána možnost "--cursor-file=" do "journalctl" pro specifikaci souboru pro načtení a uložení kurzoru;
  • Přidána definice ACRN hypervisoru a WSL subsystému (Windows Subsystem for Linux) do systemd-detect-virt pro následné větvení pomocí podmíněného operátoru „ConditionVirtualization“;
  • Během instalace systemd (při provádění "ninja install") se vytvoří symbolické odkazy na soubory systemd-networkd.service, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service a systemd-timesyncd.service. Chcete-li tyto soubory vytvořit, musíte nyní spustit příkaz „systemctl preset-all“.

Zdroj: opennet.ru

[:]

Přidat komentář