Po dvoch mesiacoch vývoja
Hlavné zmeny:
- systemd-networkd poskytuje podporu pre L2TP tunely;
- sd-boot a bootctl poskytujú podporu pre oddiely XBOOTLDR (Extended Boot Loader) navrhnuté na pripojenie na /boot, okrem oddielov ESP namontovaných na /efi alebo /boot/efi. Jadrá, nastavenia, obrazy initrd a EFI je teraz možné zaviesť z oddielov ESP aj XBOOTLDR. Táto zmena vám umožňuje používať bootloader sd-boot v konzervatívnejších scenároch, keď je samotný bootloader umiestnený v ESP a načítané jadrá a súvisiace metadáta sú umiestnené v samostatnej sekcii;
- Pridaná možnosť zaviesť systém pomocou voľby „systemd.volatile=overlay“ odovzdanej jadru, ktorá vám umožňuje umiestniť koreňový oddiel do prekryvných vrstiev a organizovať prácu nad obrazom koreňového adresára, ktorý je len na čítanie so zmenami zapísanými do samostatný adresár v tmpfs (zmeny v tejto konfigurácii sa po reštarte stratia) . Analogicky systemd-nspawn pridal možnosť „--volatile=overlay“ na použitie podobných funkcií v kontajneroch;
- systemd-nspawn pridal možnosť „--oci-bundle“, ktorá umožňuje používanie balíkov runtime na zabezpečenie izolovaného spúšťania kontajnerov, ktoré sú v súlade so špecifikáciou Open Container Initiative (OCI). Na použitie v príkazovom riadku a jednotkách nspawn sa navrhuje podpora rôznych možností popísaných v špecifikácii OCI, napríklad možnosti „--inaccessible“ a „Inaccessible“ možno použiť na vylúčenie častí systému súborov a možnosti „ boli pridané možnosti --console na konfiguráciu štandardných výstupných tokov a "-pipe";
- Pridaná možnosť ovládať správanie systemd-logind prostredníctvom premenných prostredia: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
$SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU a
$SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Pomocou týchto premenných môžete pripojiť svoje vlastné obslužné nástroje procesu reštartovania (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu a
/run/systemd/reboot-to-boot-loader-entry) alebo ich úplne zakázať (ak je hodnota nastavená na false); - Pridané možnosti „-boot-load-menu=“ a
„—boot-loader-entry=“, ktorý vám po reštarte umožňuje vybrať konkrétnu položku ponuky zavádzania alebo režim zavádzania; - Pridaný nový izolačný príkaz „RestrictSUIDSGID=“, ktorý používa seccomp na zákaz vytvárania súborov s príznakmi SUID/SGID;
- Zabezpečiť, aby sa obmedzenia „NoNewPrivileges“ a „RestrictSUIDSGID“ štandardne aplikovali v službách s dynamickým režimom generovania ID používateľa (povolený „DynamicUser“);
- Predvolené nastavenie MACAddressPolicy=persistent v súboroch .link bolo zmenené tak, aby pokrývalo viac zariadení. Rozhrania sieťových mostov, tunelov (tun, tap) a agregovaných spojení (bond) sa neidentifikujú okrem názvu sieťového rozhrania, takže tento názov sa teraz používa ako základ pre viazanie adries MAC a IPv4. Okrem toho bolo pridané nastavenie „MACAddressPolicy=random“, pomocou ktorého je možné viazať MAC a IPv4 adresy na zariadenia v náhodnom poradí;
- Súbory jednotiek ".device" vygenerované prostredníctvom systemd-fstab-generator už neobsahujú zodpovedajúce jednotky ".mount" ako závislosti v sekcii "Wants=". Jednoduchým pripojením zariadenia sa už automaticky nespustí jednotka na pripojenie, ale takéto jednotky možno stále spustiť z iných dôvodov, napríklad ako súčasť local-fs.target alebo ako závislosť od iných jednotiek, ktoré závisia od local-fs.target ;
- Pridaná podpora pre masky („*“ atď.) do príkazov „networkctl list/status/lldp“ na odfiltrovanie určitých skupín sieťových rozhraní podľa časti ich názvu;
- Premenná prostredia $PIDFILE je teraz nastavená pomocou absolútnej cesty nakonfigurovanej v službách pomocou parametra "PIDFile=;".
- Verejné servery Cloudflare (1.1.1.1) boli pridané k počtu použitých záložných serverov DNS, ak hlavný DNS nie je explicitne definovaný. Ak chcete predefinovať zoznam záložných serverov DNS, môžete použiť voľbu „-Ddns-servers=“;
- Pri detekcii prítomnosti ovládača zariadenia USB sa automaticky spustí nový ovládač usb-gadget.target (keď systém beží na periférnom zariadení USB);
- Pre súbory jednotiek bolo implementované nastavenie “CPUQuotaPeriodSec=”, ktoré určuje časové obdobie, vzhľadom na ktoré sa meria kvóta času CPU, nastavená cez nastavenie “CPUQuota=”;
- Pre súbory jednotiek bolo implementované nastavenie „ProtectHostname=“, ktoré zakazuje službám meniť informácie o názve hostiteľa, aj keď majú príslušné povolenia;
- Pre súbory jednotiek bolo implementované nastavenie „NetworkNamespacePath=“, ktoré vám umožňuje naviazať priestor názvov na služby alebo jednotky soketu zadaním cesty k súboru priestoru názvov v pseudo-FS /proc;
- Pridaná možnosť zakázať nahradenie premenných prostredia pre procesy spustené pomocou nastavenia „ExecStart=“ pridaním znaku „:“ pred príkaz štart;
- Pre časovače (.timer jednotky) nové príznaky “OnClockChange=” a
“OnTimezoneChange=”, pomocou ktorého môžete ovládať volanie jednotky, keď sa zmení systémový čas alebo časové pásmo; - Pridané nové nastavenia „ConditionMemory=“ a „ConditionCPUs=“, ktoré určujú podmienky pre volanie jednotky v závislosti od veľkosti pamäte a počtu jadier CPU (napríklad službu náročnú na zdroje je možné spustiť iba vtedy, ak je požadované množstvo RAM je k dispozícii);
- Pridaná nová jednotka time-set.target, ktorá akceptuje lokálne nastavený systémový čas, bez použitia zosúlaďovania s externými časovými servermi pomocou jednotky time-sync.target. Novú jednotku môžu využívať služby, ktoré potrebujú presnosť nesynchronizovaných lokálnych hodín;
- Voľba „--show-transaction“ bola pridaná k „systemctl start“ a podobným príkazom, ak sú špecifikované, zobrazí sa súhrn všetkých úloh pridaných do frontu kvôli požadovanej operácii;
- systemd-networkd implementuje definíciu nového „zotročeného“ stavu, ktorý sa používa namiesto „degradovaného“ alebo „nosného“ pre sieťové rozhrania, ktoré sú súčasťou agregovaných spojení alebo sieťových mostov. Pre primárne rozhrania bol v prípade problémov s jedným z kompozitných prepojení pridaný stav 'degradovaný-nosič';
- Pridaná možnosť “IgnoreCarrierLoss=” do .sieťových jednotiek na uloženie sieťových nastavení v prípade straty spojenia;
- Prostredníctvom nastavenia “RequiredForOnline=” v jednotkách .network teraz môžete nastaviť minimálny prijateľný stav spojenia potrebný na prenos sieťového rozhrania na “online” a spustenie obsluhy systemd-networkd-wait-online;
- Do systemd-networkd-wait-online bola pridaná možnosť „--any“ na čakanie na pripravenosť ktoréhokoľvek zo špecifikovaných sieťových rozhraní namiesto všetkých, ako aj možnosť „--operational-state=“ na určenie stavu odkaz označujúci pripravenosť;
- Do jednotiek .network boli pridané nastavenia „UseAutonomousPrefix=“ a „UseOnLinkPrefix=“, ktoré možno použiť na ignorovanie prefixov pri prijímaní
oznámenie z IPv6 smerovača (RA, Router Advertisement); - V jednotkách .network boli pridané nastavenia „MulticastFlood=“, „NeighborSuppression=“ a „Learning=“ na zmenu prevádzkových parametrov sieťového mosta, ako aj nastavenie „TripleSampling=“ na zmenu režimu TRIPLE-SAMPLING virtuálnych rozhraní CAN;
- Do jednotiek .netdev boli pridané nastavenia „PrivateKeyFile=“ a „PresharedKeyFile=“, pomocou ktorých môžete špecifikovať súkromné a zdieľané (PSK) kľúče pre rozhrania WireGuard VPN;
- Pridané možnosti same-cpu-crypt a submit-from-crypt-cpus do /etc/crypttab, ktoré riadia správanie plánovača pri migrácii práce súvisiacej so šifrovaním medzi jadrami CPU;
- systemd-tmpfiles poskytuje spracovanie uzamknutých súborov pred vykonaním operácií v adresároch s dočasnými súbormi, čo vám umožňuje zakázať prácu na čistení zastaraných súborov počas trvania určitých akcií (napríklad pri rozbaľovaní archívu tar v /tmp môžu byť veľmi staré súbory otvorené, ktoré nemožno odstrániť pred ukončením akcie s nimi);
- Príkaz „systemd-analyze cat-config“ poskytuje možnosť analyzovať konfiguráciu rozdelenú do niekoľkých súborov, napríklad používateľské a systémové predvoľby, obsah súborov tmpfiles.d a sysusers.d, pravidlá udev atď.
- Pridaná možnosť "--cursor-file=" do "journalctl" na určenie súboru na načítanie a uloženie kurzora;
- Pridaná definícia ACRN hypervízora a subsystému WSL (Windows Subsystem for Linux) do systemd-detect-virt pre následné vetvenie pomocou podmieneného operátora „ConditionVirtualization“;
- Počas inštalácie systemd (pri vykonávaní „ninja install“) sa vytvárajú symbolické odkazy na súbory systemd-networkd.service, systemd-networkd.socket,
systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
systemd-networkd-wait-online.service a systemd-timesyncd.service. Ak chcete vytvoriť tieto súbory, musíte teraz spustiť príkaz „systemctl preset-all“.
Zdrojopennet.ru
[En]Po dvoch mesiacoch vývoja
Hlavné zmeny:
- systemd-networkd poskytuje podporu pre L2TP tunely;
- sd-boot a bootctl poskytujú podporu pre oddiely XBOOTLDR (Extended Boot Loader) navrhnuté na pripojenie na /boot, okrem oddielov ESP namontovaných na /efi alebo /boot/efi. Jadrá, nastavenia, obrazy initrd a EFI je teraz možné zaviesť z oddielov ESP aj XBOOTLDR. Táto zmena vám umožňuje používať bootloader sd-boot v konzervatívnejších scenároch, keď je samotný bootloader umiestnený v ESP a načítané jadrá a súvisiace metadáta sú umiestnené v samostatnej sekcii;
- Pridaná možnosť zaviesť systém pomocou voľby „systemd.volatile=overlay“ odovzdanej jadru, ktorá vám umožňuje umiestniť koreňový oddiel do prekryvných vrstiev a organizovať prácu nad obrazom koreňového adresára, ktorý je len na čítanie so zmenami zapísanými do samostatný adresár v tmpfs (zmeny v tejto konfigurácii sa po reštarte stratia) . Analogicky systemd-nspawn pridal možnosť „--volatile=overlay“ na použitie podobných funkcií v kontajneroch;
- systemd-nspawn pridal možnosť „--oci-bundle“, ktorá umožňuje používanie balíkov runtime na zabezpečenie izolovaného spúšťania kontajnerov, ktoré sú v súlade so špecifikáciou Open Container Initiative (OCI). Na použitie v príkazovom riadku a jednotkách nspawn sa navrhuje podpora rôznych možností popísaných v špecifikácii OCI, napríklad možnosti „--inaccessible“ a „Inaccessible“ možno použiť na vylúčenie častí systému súborov a možnosti „ boli pridané možnosti --console na konfiguráciu štandardných výstupných tokov a "-pipe";
- Pridaná možnosť ovládať správanie systemd-logind prostredníctvom premenných prostredia: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
$SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU a
$SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Pomocou týchto premenných môžete pripojiť svoje vlastné obslužné nástroje procesu reštartovania (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu a
/run/systemd/reboot-to-boot-loader-entry) alebo ich úplne zakázať (ak je hodnota nastavená na false); - Pridané možnosti „-boot-load-menu=“ a
„—boot-loader-entry=“, ktorý vám po reštarte umožňuje vybrať konkrétnu položku ponuky zavádzania alebo režim zavádzania; - Pridaný nový izolačný príkaz „RestrictSUIDSGID=“, ktorý používa seccomp na zákaz vytvárania súborov s príznakmi SUID/SGID;
- Zabezpečiť, aby sa obmedzenia „NoNewPrivileges“ a „RestrictSUIDSGID“ štandardne aplikovali v službách s dynamickým režimom generovania ID používateľa (povolený „DynamicUser“);
- Predvolené nastavenie MACAddressPolicy=persistent v súboroch .link bolo zmenené tak, aby pokrývalo viac zariadení. Rozhrania sieťových mostov, tunelov (tun, tap) a agregovaných spojení (bond) sa neidentifikujú okrem názvu sieťového rozhrania, takže tento názov sa teraz používa ako základ pre viazanie adries MAC a IPv4. Okrem toho bolo pridané nastavenie „MACAddressPolicy=random“, pomocou ktorého je možné viazať MAC a IPv4 adresy na zariadenia v náhodnom poradí;
- Súbory jednotiek ".device" vygenerované prostredníctvom systemd-fstab-generator už neobsahujú zodpovedajúce jednotky ".mount" ako závislosti v sekcii "Wants=". Jednoduchým pripojením zariadenia sa už automaticky nespustí jednotka na pripojenie, ale takéto jednotky možno stále spustiť z iných dôvodov, napríklad ako súčasť local-fs.target alebo ako závislosť od iných jednotiek, ktoré závisia od local-fs.target ;
- Pridaná podpora pre masky („*“ atď.) do príkazov „networkctl list/status/lldp“ na odfiltrovanie určitých skupín sieťových rozhraní podľa časti ich názvu;
- Premenná prostredia $PIDFILE je teraz nastavená pomocou absolútnej cesty nakonfigurovanej v službách pomocou parametra "PIDFile=;".
- Verejné servery Cloudflare (1.1.1.1) boli pridané k počtu použitých záložných serverov DNS, ak hlavný DNS nie je explicitne definovaný. Ak chcete predefinovať zoznam záložných serverov DNS, môžete použiť voľbu „-Ddns-servers=“;
- Pri detekcii prítomnosti ovládača zariadenia USB sa automaticky spustí nový ovládač usb-gadget.target (keď systém beží na periférnom zariadení USB);
- Pre súbory jednotiek bolo implementované nastavenie “CPUQuotaPeriodSec=”, ktoré určuje časové obdobie, vzhľadom na ktoré sa meria kvóta času CPU, nastavená cez nastavenie “CPUQuota=”;
- Pre súbory jednotiek bolo implementované nastavenie „ProtectHostname=“, ktoré zakazuje službám meniť informácie o názve hostiteľa, aj keď majú príslušné povolenia;
- Pre súbory jednotiek bolo implementované nastavenie „NetworkNamespacePath=“, ktoré vám umožňuje naviazať priestor názvov na služby alebo jednotky soketu zadaním cesty k súboru priestoru názvov v pseudo-FS /proc;
- Pridaná možnosť zakázať nahradenie premenných prostredia pre procesy spustené pomocou nastavenia „ExecStart=“ pridaním znaku „:“ pred príkaz štart;
- Pre časovače (.timer jednotky) nové príznaky “OnClockChange=” a
“OnTimezoneChange=”, pomocou ktorého môžete ovládať volanie jednotky, keď sa zmení systémový čas alebo časové pásmo; - Pridané nové nastavenia „ConditionMemory=“ a „ConditionCPUs=“, ktoré určujú podmienky pre volanie jednotky v závislosti od veľkosti pamäte a počtu jadier CPU (napríklad službu náročnú na zdroje je možné spustiť iba vtedy, ak je požadované množstvo RAM je k dispozícii);
- Pridaná nová jednotka time-set.target, ktorá akceptuje lokálne nastavený systémový čas, bez použitia zosúlaďovania s externými časovými servermi pomocou jednotky time-sync.target. Novú jednotku môžu využívať služby, ktoré potrebujú presnosť nesynchronizovaných lokálnych hodín;
- Voľba „--show-transaction“ bola pridaná k „systemctl start“ a podobným príkazom, ak sú špecifikované, zobrazí sa súhrn všetkých úloh pridaných do frontu kvôli požadovanej operácii;
- systemd-networkd implementuje definíciu nového „zotročeného“ stavu, ktorý sa používa namiesto „degradovaného“ alebo „nosného“ pre sieťové rozhrania, ktoré sú súčasťou agregovaných spojení alebo sieťových mostov. Pre primárne rozhrania bol v prípade problémov s jedným z kompozitných prepojení pridaný stav 'degradovaný-nosič';
- Pridaná možnosť “IgnoreCarrierLoss=” do .sieťových jednotiek na uloženie sieťových nastavení v prípade straty spojenia;
- Prostredníctvom nastavenia “RequiredForOnline=” v jednotkách .network teraz môžete nastaviť minimálny prijateľný stav spojenia potrebný na prenos sieťového rozhrania na “online” a spustenie obsluhy systemd-networkd-wait-online;
- Do systemd-networkd-wait-online bola pridaná možnosť „--any“ na čakanie na pripravenosť ktoréhokoľvek zo špecifikovaných sieťových rozhraní namiesto všetkých, ako aj možnosť „--operational-state=“ na určenie stavu odkaz označujúci pripravenosť;
- Do jednotiek .network boli pridané nastavenia „UseAutonomousPrefix=“ a „UseOnLinkPrefix=“, ktoré možno použiť na ignorovanie prefixov pri prijímaní
oznámenie z IPv6 smerovača (RA, Router Advertisement); - V jednotkách .network boli pridané nastavenia „MulticastFlood=“, „NeighborSuppression=“ a „Learning=“ na zmenu prevádzkových parametrov sieťového mosta, ako aj nastavenie „TripleSampling=“ na zmenu režimu TRIPLE-SAMPLING virtuálnych rozhraní CAN;
- Do jednotiek .netdev boli pridané nastavenia „PrivateKeyFile=“ a „PresharedKeyFile=“, pomocou ktorých môžete špecifikovať súkromné a zdieľané (PSK) kľúče pre rozhrania WireGuard VPN;
- Pridané možnosti same-cpu-crypt a submit-from-crypt-cpus do /etc/crypttab, ktoré riadia správanie plánovača pri migrácii práce súvisiacej so šifrovaním medzi jadrami CPU;
- systemd-tmpfiles poskytuje spracovanie uzamknutých súborov pred vykonaním operácií v adresároch s dočasnými súbormi, čo vám umožňuje zakázať prácu na čistení zastaraných súborov počas trvania určitých akcií (napríklad pri rozbaľovaní archívu tar v /tmp môžu byť veľmi staré súbory otvorené, ktoré nemožno odstrániť pred ukončením akcie s nimi);
- Príkaz „systemd-analyze cat-config“ poskytuje možnosť analyzovať konfiguráciu rozdelenú do niekoľkých súborov, napríklad používateľské a systémové predvoľby, obsah súborov tmpfiles.d a sysusers.d, pravidlá udev atď.
- Pridaná možnosť "--cursor-file=" do "journalctl" na určenie súboru na načítanie a uloženie kurzora;
- Pridaná definícia ACRN hypervízora a subsystému WSL (Windows Subsystem for Linux) do systemd-detect-virt pre následné vetvenie pomocou podmieneného operátora „ConditionVirtualization“;
- Počas inštalácie systemd (pri vykonávaní „ninja install“) sa vytvárajú symbolické odkazy na súbory systemd-networkd.service, systemd-networkd.socket,
systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
systemd-networkd-wait-online.service a systemd-timesyncd.service. Ak chcete vytvoriť tieto súbory, musíte teraz spustiť príkaz „systemctl preset-all“.
Zdroj: opennet.ru
[:]