Π‘Π»Π΅Π΄ ΠΊΡΠ°Ρ Π½Π° ΠΏΠ΅Ρ ΠΌΠ΅ΡΠ΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π±eΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ systemd 252. ΠΠ»ΡΡΠΎΠ²Π°ΡΠ° ΠΏΡΠΎΠΌΡΠ½Π° Π² Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΡΠ΅Ρ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎ ΡΠΈΡΡΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ Π½Π΅ ΡΠ°ΠΌΠΎ Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°ΡΠ°, Π½ΠΎ ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ½Π° ΡΡΠ΅Π΄Π°.
ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½ ΠΎΠ±ΡΠ°Π· Π½Π° ΡΠ΄ΡΠΎΡΠΎ UKI (Unified Kernel Image) ΠΏΡΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅, ΠΊΠΎΠΉΡΠΎ ΠΎΠ±Π΅Π΄ΠΈΠ½ΡΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΎΡ UEFI (UEFI boot stub), ΠΎΠ±ΡΠ°Π· Π½Π° ΡΠ΄ΡΠΎΡΠΎ Linux, ΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½ΠΎΡΠΎ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ initrd, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΎ Π·Π° Π½Π°ΡΠ°Π»Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠ΅Π΄ΠΈ ΠΌΠΎΠ½ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΡΠ΅Π½ΠΎΠ²Π°ΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²Π° ΡΠΈΡΡΠ΅ΠΌΠ°. UKI-ΠΎΠ±ΡΠ°Π·ΡΡ Π΅ ΠΎΡΠΎΡΠΌΠ΅Π½ ΠΊΠ°ΡΠΎ Π΅Π΄ΠΈΠ½ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌ ΡΠ°ΠΉΠ» Π² ΡΠΎΡΠΌΠ°Ρ PE, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π·Π°ΡΠ΅Π΄Π΅Π½ ΡΡΠ΅Π· ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°ΡΠΈ ΠΈΠ»ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ°Π½ ΠΎΡ UEFI ΡΡΡΠΌΡΠ΅ΡΠ°. ΠΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ ΠΎΡ UEFI ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° ΠΈ Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎΡΡΡΠ° ΠΏΠΎ ΡΠΈΡΡΠΎΠ²Π° ΠΏΠΎΠ΄ΠΏΠΈΡ Π½Π° Π½Π΅ ΡΠ°ΠΌΠΎ ΡΠ΄ΡΠΎΡΠΎ, Π½ΠΎ ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° initrd.
ΠΠ° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ΅ TPM PCR (Trusted Platform Module Platform Configuration Register), ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° ΠΈ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠΎΠ²Π° ΠΏΠΎΠ΄ΠΏΠΈΡ Π½Π° ΠΎΠ±ΡΠ°Π·Π° UKI, Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° Π½ΠΎΠ²Π° ΡΡΠΈΠ»ΠΈΡΠ° systemd-measure. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΡ Π² ΠΏΠΎΠ΄ΠΏΠΈΡΠ° ΠΏΡΠ±Π»ΠΈΡΠ΅Π½ ΠΊΠ»ΡΡ ΠΈ ΡΡΠΏΡΡΡΡΠ²Π°ΡΠ°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° PCR ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π²Π³ΡΠ°Π΄Π΅Π½ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² Π·Π°ΡΠ΅ΠΆΠ΄Π°ΡΠΈΡ ΠΎΠ±ΡΠ°Π· UKI (ΠΊΠ»ΡΡΡΡ ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΡΡ ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π² ΡΠ°ΠΉΠ»Π° Π² ΡΠΎΡΠΌΠ°Ρ PE Π² ΠΏΠΎΠ»Π΅ΡΠ° β.pcrsigβ ΠΈ β.pcrkeyβ) ΠΈ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈ ΠΎΡ Π½Π΅Π³ΠΎ ΠΎΡ Π²ΡΠ½ΡΠ½ΠΈ ΠΈΠ»ΠΈ Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΡΡΠΈΠ»ΠΈΡΠΈ.
ΠΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ° Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½ΠΈ ΡΡΠΈΠ»ΠΈΡΠΈΡΠ΅ systemd-cryptsetup, systemd-cryptenroll ΠΈ systemd-creds, ΡΡΠ΅Π· ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ΠΈ Π΄ΠΈΡΠΊΠΎΠ²ΠΈ Π΄ΡΠ»ΠΎΠ²Π΅ Ρ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ ΡΠΈΡΡΠΎΠ²Π° ΠΏΠΎΠ΄ΠΏΠΈΡ Π½Π° ΡΠ΄ΡΠΎΡΠΎ (Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π΄ΠΎΡΡΡΠΏΡΡ Π΄ΠΎ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½ΠΈΡ Π΄ΡΠ» ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΠΎΠ±ΡΠ°Π·ΡΡ UKI Π΅ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π» Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΏΠΎ ΡΠΈΡΡΠΎΠ²Π° ΠΏΠΎΠ΄ΠΏΠΈΡ Π½Π° Π±Π°Π·Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅, ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈ Π² TPM).
ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½Π° ΡΡΠΈΠ»ΠΈΡΠ° systemd-pcrphase, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ²ΡΡΠ·Π°Π½ΠΎΡΡΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠ°Π·ΠΈ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅, ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π½Π° ΠΊΡΠΈΠΏΡΠΎΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈΡΠ΅, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°ΡΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° TPM 2.0 (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ ΠΊΠ»ΡΡΡΡ Π·Π° Π΄Π΅ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΡΠ» LUKS2 Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΡΠ°ΠΌΠΎ Π² ΠΎΠ±ΡΠ°Π·Π° initrd ΠΈ Π΄Π° ΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΠ° Π΄ΠΎΡΡΡΠΏΡΡ Π΄ΠΎ Π½Π΅Π³ΠΎ Π½Π° ΠΏΠΎ-ΠΊΡΡΠ½ΠΈ Π΅ΡΠ°ΠΏΠΈ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅).
ΠΡΠΊΠΎΠΈ Π΄ΡΡΠ³ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ:
- ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π»ΠΎΠΊΠ°Π» C.UTF-8, Π°ΠΊΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Π½Π΅ Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π΄ΡΡΠ³Π° Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°ΡΠΈΡ.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ ΠΏΡΠ»Π½ΠΎ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΡΡΡΠΎΠΉΠ²Π°Π½Π΅ Π½Π° ΡΡΠ»ΡΠ³ΠΈΡΠ΅ (Β«systemctl presetΒ») ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΏΡΡΠ²ΠΎΡΠΎ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅. ΠΠ° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½Π°ΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Ρ ΠΎΠΏΡΠΈΡΡΠ° Β«-Dfirst-boot-full-presetΒ», Π½ΠΎ Π² Π±ΡΠ΄Π΅ΡΠΈ Π²Π΅ΡΡΠΈΠΈ ΡΡ ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° Π±ΡΠ΄Π΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
- Π ΠΌΠΎΠ΄ΡΠ»ΠΈΡΠ΅ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Ρ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ CPU, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ CPUWeight Π·Π° Π²ΡΠΈΡΠΊΠΈ slice-ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π·Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π½Π° ΡΠ°ΡΡΠΈ (app.slice, background.slice, session.slice) Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΡΡΠ»ΡΠ³ΠΈ, ΡΡΡΡΠ΅Π·Π°Π²Π°ΡΠΈ ΡΠ΅ Π·Π° ΡΠ΅ΡΡΡΡΠΈ Π½Π° CPU. Π CPUWeight ΡΡΡΠΎ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Β«idleΒ» Π·Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ.
- Π Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ (Β«transientΒ») ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Π² ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° systemd-repart Π΅ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΏΡΠ΅Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠ΅Π· ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° drop-in ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡΠ° /etc/systemd/system/ΠΈΠΌΠ΅.d/.
- ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΠ΅ ΠΎΠ±ΡΠ°Π·ΠΈ Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΎ ΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΡΠ»Π°Π³Π° Π·Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° (βsupport-endedβ), ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠΉΠΊΠΈ ΡΠΎΠ·ΠΈ ΡΠ°ΠΊΡ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Π½Π° Π½ΠΎΠ²ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Β«SUPPORT_END=Β» Π² ΡΠ°ΠΉΠ»Π° /etc/os-release.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Β«ConditionCredential=Β» ΠΈ Β«AssertCredential=Β», ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΠΈΠ³Π½ΠΎΡΠΈΡΠ°Π½Π΅ ΠΈΠ»ΠΈ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎ ΠΏΡΠΈΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡΠ»ΠΈΡΠ΅ ΠΏΡΠΈ ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°.
- Π system.conf ΠΈ user.conf ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Β«DefaultSmackProcessLabel=Β» ΠΈ Β«DefaultDeviceTimeoutSec=Β» Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ SMACK ΠΈ ΡΠ°ΠΉΠΌΠ°ΡΡΠ° Π·Π° Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡΠ»Π°, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°Ρ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
- Π Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ Β«ConditionFirmware=Β» ΠΈ Β«AssertFirmware=Β» Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ ΠΏΠΎΡΠΎΡΠ²Π°Ρ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΠΎΠ»Π΅ΡΠ° SMBIOS, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠΎΠ΄ΡΠ»Π° ΡΠ°ΠΌΠΎ Π² ΡΠ»ΡΡΠ°ΠΉ, ΡΠ΅ ΠΏΠΎΠ»Π΅ΡΠΎ /sys/class/dmi/id/board_name ΡΡΠ΄ΡΡΠΆΠ° ΡΡΠΎΠΉΠ½ΠΎΡΡΡΠ° Β«Custom BoardΒ», ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π°Π΄Π°Π΄Π΅ Β«ConditionFirmware=smbios-field(board_name = Β«Custom BoardΒ»)Β».
- Π ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ (PID 1) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠΌΠΏΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΏΠΎΠ»Π΅ΡΠ° SMBIOS (Π’ΠΈΠΏ 11, Β«OEM vendor stringsΒ») Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΡΡΡ Π½ΠΎΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ ΡΡΠ΅Π· qemu_fwcfg, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠΏΡΠΎΡΡΡΠ²Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ Π΄Π°Π½Π½ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»ΡΡ Π²ΡΠ½ΡΠ½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ, ΠΊΠ°ΡΠΎ cloud-init ΠΈ ignition.
- ΠΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π·Π°Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π΅ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½Π° Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π½Π° Π΄Π΅ΠΌΠΎΠ½ΡΠΈΡΠΌΠ°Π½Π΅ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ (proc, sys) ΠΈ Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½ΠΎ Π·Π°ΠΏΠΈΡΠ²Π°Π½Π΅ΡΠΎ Π² Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΡΠΎΡΠ΅ΡΠΈΡΠ΅, Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠΈ Π΄Π΅ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ.
- Π ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌ εΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌ εΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌ εΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌεΌ,εεεεεεεεεεεεεεγ
- Π Π·Π°Π³ΡΡΠ·ΡΠΈΠΊΠ° sd-boot Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π² ΡΠΌΠ΅ΡΠ΅Π½ ΡΠ΅ΠΆΠΈΠΌ, ΠΏΡΠΈ ΠΊΠΎΠΉΡΠΎ 64-Π±ΠΈΡΠΎΠ²ΠΎΡΠΎ ΡΠ΄ΡΠΎ Π½Π° Linux ΡΡΠ°ΡΡΠΈΡΠ° ΠΎΡ 32-Π±ΠΈΡΠΎΠ²ΠΈΡ ΡΡΡΠΌΡΠ΅Ρ UEFI. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π΅ SecureBoot ΠΎΡ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ Π² ESP (EFI system partition).
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° bootctl Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π½ΠΎΠ²ΠΈ ΠΎΠΏΡΠΈΠΈ ββall-architecturesβ Π·Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½Π΅ Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ EFI, ββroot=β ΠΈ ββimage=β Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ ΠΈΠ»ΠΈ Π΄ΠΈΡΠΊΠΎΠ² ΠΎΠ±ΡΠ°Π·, ββinstall-source=β Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊΠ° Π·Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡ, 'βefi-boot-option-description=' Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΈΠΌΠ΅Π½Π°ΡΠ° Π½Π° ΡΡΠ°ΡΡΠΎΠ²ΠΈΡΠ΅ Π·Π°ΠΏΠΈΡΠΈ.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° systemctl Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° βlist-automountsβ Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠΏΠΈΡΡΠΊ Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ·ΠΈ ΠΈ ΠΎΠΏΡΠΈΡ ββimage=β Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΡΠΊΠ°Π·Π°Π½ Π΄ΠΈΡΠΊ. Π ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ 'show' ΠΈ 'status' Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΡΠΈΠΈ ββstate=β ΠΈ ββtype=β.
- Π systemd-networkd Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΡΠΈΠΈ βTCPCongestionControlAlgorithm=β Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° ΠΏΡΠ΅Π½Π°ΡΠΈΡΠ°Π½Π΅ Π½Π° TCP, βKeepFileDescriptor=β Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈΡ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ Π½Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈΡΠ΅ TUN/TAP, βNetLabel=β Π·Π° Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΅ΡΠΈΠΊΠ΅ΡΠΈ NetLabel, βRapidCommit=β Π·Π° ΡΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° ΡΡΠ΅Π· DHCPv6 (RFC 3315). Π ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° βRouteTable=β ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π΅ ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΈΠΌΠ΅Π½Π° Π½Π° ΡΠ°Π±Π»ΠΈΡΠΈ Π·Π° ΠΌΠ°ΡΡΡΡΡΠΈΠ·ΠΈΡΠ°Π½Π΅.
- Π systemd-nspawn ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΠΏΡΡΠΈΡΠ° Π² ΠΎΠΏΡΠΈΠΈΡΠ΅ ββbind=β ΠΈ ββoverlay=β. Π ΠΎΠΏΡΠΈΡΡΠ° ββbind=β Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° βrootidmapβ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ root Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΠΊΠ° Π½Π° ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π½Π° Ρ ΠΎΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°.
- Π systemd-resolved Π·Π° Π±Π΅ΠΊΠ΅Π½Π΄ Π·Π° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠ°ΠΊΠ΅Ρ OpenSSL (ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° gnutls Π΅ Π·Π°ΠΏΠ°Π·Π΅Π½Π° ΠΊΠ°ΡΠΎ ΠΎΠΏΡΠΈΡ). ΠΠ΅ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π½Π° DNSSEC ΡΠ΅Π³Π° ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ, Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° Π²ΡΡΡΠ°Ρ Π³ΡΠ΅ΡΠΊΠ° (SERVFAIL).
- Π systemd-sysusers, systemd-tmpfiles ΠΈ systemd-sysctl ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΡΠ΅Π· ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° systemd-analyze Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° βcompare-versionsβ Π·Π° ΡΡΠ°Π²Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΠΈΠ½Π³ΠΎΠ²Π΅ Ρ Π²Π΅ΡΡΠΈΠΈ (ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ βrpmdev-vercmpβ ΠΈ βdpkg βcompare-versionsβ). Π ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βsystemd-analyze dumpβ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΠΈ ΠΏΠΎ ΠΌΠ°ΡΠΊΠ°.
- ΠΡΠΈ ΠΈΠ·Π±ΠΎΡΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΡΡΠ΅ΠΏΠ΅Π½Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΡΠ½ (suspend-then-hibernate, ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π² ΡΠΏΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ»Π΅Π΄ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅), Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΠΏΡΠ΅ΡΡΠΎΠΉ Π² ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ ΡΠ΅Π³Π° ΡΠ΅ ΠΈΠ·Π±ΠΈΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΡΠΎΠ³Π½ΠΎΠ·Π°ΡΠ° Π·Π° ΠΎΡΡΠ°Π²Π°ΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½Π° ΡΠ°Π±ΠΎΡΠ°. ΠΠ³Π½ΠΎΠ²Π΅Π½ ΠΏΡΠ΅Ρ ΠΎΠ΄ Π² ΡΠΏΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°, ΠΊΠΎΠ³Π°ΡΠΎ ΠΎΡΡΠ°Π²Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ 5% Π·Π°ΡΡΠ΄ Π½Π° Π±Π°ΡΠ΅ΡΠΈΡΡΠ°.
- Π βjournalctlβ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ Π½ΠΎΠ² ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΠΈΠ·Ρ ΠΎΠ΄ Β«-o short-deltaΒ», ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠΊΠ°Π·Π²Π° ΡΠ°Π·Π»ΠΈΠΊΠ°ΡΠ° Π²ΡΠ² Π²ΡΠ΅ΠΌΠ΅ΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² ΠΆΡΡΠ½Π°Π»Π°.
- Π systemd-repart Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΄ΡΠ»ΠΎΠ²Π΅ Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Squashfs ΠΈ Π΄ΡΠ»ΠΎΠ²Π΅ Π·Π° dm-verity, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Ρ ΡΠΈΡΡΠΎΠ²ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ.
- Π systemd-logind Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Β«StopIdleSessionSec=Β» Π·Π° ΠΏΡΠΈΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π½Π΅Π°ΠΊΡΠΈΠ²Π½Π°ΡΠ° ΡΠ΅ΡΠΈΡ ΡΠ»Π΅Π΄ ΠΈΠ·ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈΡ ΡΠ°ΠΉΠΌΠ°ΡΡ.
- Π systemd-cryptenroll Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βunlock-key-file=Β» Π·Π° ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΠ»ΡΡΠ° Π·Π° Π΄Π΅ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ ΠΎΡ ΡΠ°ΠΉΠ», Π° Π½Π΅ ΡΡΠ΅Π· ΠΈΠ·Ρ ΠΎΠ΄Π° Π½Π° Π·Π°ΡΠ²ΠΊΠ° ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ.
- ΠΡΠΈΠ³ΡΡΠ΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° systemd-growfs Π² ΡΡΠ΅Π΄ΠΈ Π±Π΅Π· udev.
- Π systemd-backlight Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π³ΡΠ°ΡΠΈΡΠ½ΠΈ ΠΊΠ°ΡΡΠΈ.
- ΠΠΈΡΠ΅Π½Π·ΡΡ Π·Π° ΠΏΡΠΈΠΌΠ΅ΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ΄Π°, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°, Π΅ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ ΠΎΡ CC0 Π½Π° MIT-0.
ΠΡΠΎΠΌΠ΅Π½ΠΈ, Π½Π°ΡΡΡΠ°Π²Π°ΡΠΈ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΠ°:
- ΠΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π½ΠΎΠΌΠ΅ΡΠ° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°ΡΠ° ConditionKernelVersion, Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈΡΠ΅ β=β ΠΈ β!=β ΡΠ΅Π³Π° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΠΏΡΠΎΡΡΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π° Π½ΠΈΠ·ΠΎΠ²Π΅, Π° Π°ΠΊΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡΡ Π·Π° ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠΎ Π½Π΅ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈ ΡΡΠΏΠΎΡΡΠ°Π²ΡΠ½Π΅ ΠΏΠΎ glob-ΠΌΠ°ΡΠΊΠ° Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ β*β, β?β ΠΈ β[β, β]β. ΠΠ° ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π° Π²Π΅ΡΡΠΈΠΈ ΡΡΠΈΠ» stverscmp() ΡΠ»Π΅Π΄Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΈΡΠ΅ ββ, β=β.
- ΠΡΠΈΠΊΠ΅ΡΡΡ SELinux, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π΄ΠΎΡΡΡΠΏΠ° ΠΎΡ unit-ΡΠ°ΠΉΠ», ΡΠ΅Π³Π° ΡΠ΅ ΡΠ΅ΡΠ΅ Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ°ΠΉΠ»Π°, Π° Π½Π΅ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π΄ΠΎΡΡΡΠΏΠ°.
- Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ΡΠΎ Β«ConditionFirstBootΒ» ΡΠ΅Π³Π° ΡΡΠ°Π±ΠΎΡΠ²Π° ΠΏΡΠΈ ΠΏΡΡΠ²ΠΎΡΠΎ Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΡΠ°ΠΌΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½ΠΎ Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ ΠΈ Π²ΡΡΡΠ° Β«falseΒ» ΠΏΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΡΠ½ΠΈΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ ΠΏΡΠΈΠΊΠ»ΡΡΠ²Π°Π½Π΅ Π½Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ.
- ΠΡΠ΅Π· 2024 Π³ΠΎΠ΄ΠΈΠ½Π° Π² systemd ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈΡΠ΅ cgroup v1, ΠΊΠΎΠΉΡΠΎ Π±Π΅ΡΠ΅ ΠΎΠ±ΡΠ²Π΅Π½ Π·Π° ΠΎΡΡΠ°ΡΡΠ» Π² ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ systemd 248. ΠΠ΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π° Π΄Π° ΡΠ΅ ΠΏΠΎΠ³ΡΠΈΠΆΠ°Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π·Π° ΠΌΠΈΠ³ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ»ΡΠ³ΠΈΡΠ΅, Π·Π°Π²ΠΈΡΠΈΠΌΠΈ ΠΎΡ cgroup v1, ΠΊΡΠΌ cgroup v2. ΠΠ»ΡΡΠΎΠ²ΠΎΡΠΎ ΠΎΡΠ»ΠΈΡΠΈΠ΅ Π½Π° cgroups v2 ΠΎΡ v1 Π΅ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ° ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡ Π½Π° cgroups Π·Π° Π²ΡΠΈΡΠΊΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ ΡΠ΅ΡΡΡΡΠΈ, Π²ΠΌΠ΅ΡΡΠΎ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΠΈ Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° CPU, ΡΠ΅Π³ΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ Π²Ρ ΠΎΠ΄/ΠΈΠ·Ρ ΠΎΠ΄. ΠΡΠ΄Π΅Π»Π½ΠΈΡΠ΅ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΠ²Π°Ρ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΡΠΈΡΠ΅ ΠΈ Π²ΠΎΠ΄ΡΡ Π΄ΠΎ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ Π½Π° ΡΠ΅ΡΡΡΡΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΏΡΠΈΠ»Π°Π³Π°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π° Π·Π° ΠΏΡΠΎΡΠ΅ΡΠΈ, ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΠΈ.
- ΠΡΠ΅Π· Π²ΡΠΎΡΠ°ΡΠ° ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° Π½Π° 2023 Π³ΠΎΠ΄ΠΈΠ½Π° ΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΠ° Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈΡΠ΅ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΠΈ Π½Π° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, ΠΊΠΎΠ³Π°ΡΠΎ /usr Π΅ ΠΌΠΎΠ½ΡΠΈΡΠ°Π½ΠΎ ΠΎΡΠ΄Π΅Π»Π½ΠΎ ΠΎΡ ΠΊΠΎΡΠ΅Π½ΠΎΠ²Π°ΡΠ° Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΈΠ»ΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈΡΠ΅ /bin ΠΈ /usr/bin, /lib ΠΈ /usr/lib ΡΠ° ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
