Выпуск систСмного ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° systemd 250

ПослС пяти мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прСдставлСн Ρ€Π΅Π»ΠΈΠ· систСмного ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° systemd 250. Π’ Π½ΠΎΠ²ΠΎΠΌ выпускС появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ хранСния ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° вСрификация автоматичСски опрСдСляСмых GPT-Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΏΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи, ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… возникновСния Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ ΠΏΡ€ΠΈ запускС сСрвисов, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ для ограничСния доступа сСрвиса ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌ систСмам ΠΈ сСтСвым интСрфСйсам, обСспСчСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° контроля цСлостности Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ модуля dm-integrity, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° автообновлСния sd-boot.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ измСнСния:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ для бСзопасного хранСния ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ SSL-ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ доступа. Π Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… производится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ нСобходимости ΠΈ Π² привязкС ΠΊ локальной установкС ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΡŽ. Π”Π°Π½Π½Ρ‹Π΅ ΡˆΠΈΡ„Ρ€ΡƒΡŽΡ‚ΡΡ автоматичСски с использованиСм симмСтричных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠ»ΡŽΡ‡ для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС, Π² Ρ‡ΠΈΠΏΠ΅ TPM2 ΠΈΠ»ΠΈ с использованиСм ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ схСмы. ΠŸΡ€ΠΈ запускС сСрвиса ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ автоматичСски Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈ становятся доступны сСрвису Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° ‘systemd-creds’, Π° для сСрвисов ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ настройки LoadCredentialEncrypted ΠΈ SetCredentialEncrypted.
  • Π’ sd-stub, исполняСмый Ρ„Π°ΠΉΠ» для EFI, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° EFI Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ядро Linux, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ядра с использованиСм ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° LINUX_EFI_INITRD_MEDIA_GUID EFI. Π’Π°ΠΊΠΆΠ΅ Π² sd-stub Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΡƒΡ‡Ρ‘Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² sysext Π² Π°Ρ€Ρ…ΠΈΠ² cpio ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ этого Π°Ρ€Ρ…ΠΈΠ²Π° ядру вмСстС с initrd (Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /.extra/). Указанная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ позволяСт Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ initrd, дополняСмоС ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ sysexts ΠΈ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.
  • БущСствСнно Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° спСцификация Discoverable Partitions, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ срСдства для опрСдСлСния, монтирования ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ систСмных Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… GPT (GUID Partition Tables). По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΌΠΈ выпусками для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ Π² спСцификации Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π° ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π° /usr, Π² Ρ‚ΠΎΠΌ числС для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… UEFI.

    Π’ Discoverable Partitions Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… вСрифицируСтся ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ dm-verity с использованиСм Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй PKCS#7, Ρ‡Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ созданиС ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… дисковых ΠΎΠ±Ρ€Π°Π·ΠΎΠ². ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π° Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ дисковыми ΠΎΠ±Ρ€Π°Π·Π°ΠΌΠΈ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ systemd-nspawn, systemd-sysext, systemd-dissect, сСрвисы с RootImage, systemd-tmpfiles ΠΈ systemd-sysusers.

  • Для Π΄ΠΎΠ»Π³ΠΎ запускаСмых ΠΈΠ»ΠΈ останавливаСмых unit-ΠΎΠ² Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΠΎΠΊΠ°Π·Ρƒ Π°Π½ΠΈΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ прСдоставлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Π° свСдСний ΠΎ состоянии, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ происходит с сСрвисом Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ выполнСния ΠΊΠ°ΠΊΠΎΠ³ΠΎ сСрвиса ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ систСмный ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€.
  • Π’ /etc/systemd/system.conf ΠΈ /etc/systemd/user.conf Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ DefaultOOMScoreAdjust, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΡ‚ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ€ΠΎΠ³ срабатывания OOM-killer ΠΏΡ€ΠΈ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠ΅ памяти, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ΠΉ ΠΊ процСссам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ запускаСт systemd для систСмы ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ вСс систСмных сСрвисов Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ…, Ρ‚.Π΅. ΠΏΡ€ΠΈ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠ΅ памяти Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… сСрвисов Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ систСмных.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка RestrictFileSystems, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ доступ сСрвисов ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм. Для просмотра доступных Ρ‚ΠΈΠΏΠΎΠ² Π€Π‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ «systemd-analyze filesystems». По Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция RestrictNetworkInterfaces, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ сСтСвым интСрфСйсам. РСализация основана Π½Π° BPF-ΠΌΠΎΠ΄ΡƒΠ»Π΅ LSM, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΌ доступ Π³Ρ€ΡƒΠΏΠΏΡ‹ процСссов ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ ядра.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ /etc/integritytab ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° systemd-integritysetup, Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ dm-integrity для контроля цСлостности Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… сСкторов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для гарантирования нСизмСнности Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Authenticated Encryption, Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ Π±Ρ‹Π» ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ ΠΎΠ±Ρ…ΠΎΠ΄Π½Ρ‹ΠΌ ΠΏΡƒΡ‚Ρ‘ΠΌ). Π€ΠΎΡ€ΠΌΠ°Ρ‚ Ρ„Π°ΠΉΠ»Π° /etc/integritytab Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ Ρ„Π°ΠΉΠ»Π°ΠΌ /etc/crypttab ΠΈ /etc/veritytab, Π·Π° Ρ‚Π΅ΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ вмСсто dm-crypt ΠΈ dm-verity примСняСтся dm-integrity.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ unit-Ρ„Π°ΠΉΠ» systemd-boot-update.service, ΠΏΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ установлСнного Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° sd-boot, systemd автоматичСски Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° sd-boot, поддСрТивая ΠΊΠΎΠ΄ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° всСгда Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии. Π‘Π°ΠΌ sd-boot Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ собираСтся с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° SBAT (UEFI Secure Boot Advanced Targeting), Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΎΡ‚Π·Ρ‹Π²ΠΎΠΌ сСртификатов для UEFI Secure Boot. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² sd-boot обСспСчСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Π±ΠΎΡ€Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Ρ… настроСк Microsoft Windows для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ формирования Π½Π°Π·Π²Π°Π½ΠΈΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹Ρ… Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² с Windows ΠΈ ΠΏΠΎΠΊΠ°Π·Π° вСрсии Windows.

    Π’ sd-boot Ρ‚Π°ΠΊΠΆΠ΅ прСдоставлСна Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ опрСдСлСния Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠΉ схСмы Π½Π° этапС сборки. Π’ процСссС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° смСны Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ экрана Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ клавиши «r». Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° горячая клавиша «f» для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² интСрфСйс настройки ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ€Π΅ΠΆΠΈΠΌ автоматичСской Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ систСмы, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ элСмСнту мСню, Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅. Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ автоматичСской Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ EFI-Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½Π½Ρ‹Ρ… Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /EFI/systemd/drivers/ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ESP (EFI System Partition).

  • Π’ состав Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π½ΠΎΠ²Ρ‹ΠΉ unit-Ρ„Π°ΠΉΠ» factory-reset.target, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π² systemd-logind ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с опСрациями reboot, poweroff, suspend ΠΈ hibernate, ΠΈ примСняСмый для создания ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² для выполнСния сброса ΠΊ заводским настройкам.
  • ΠŸΡ€ΠΎΡ†Π΅ΡΡ systemd-resolved Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ создаёт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΡΠ»ΡƒΡˆΠ°ΡŽΡ‰ΠΈΠΉ сокСт Π½Π° адрСсС 127.0.0.54 Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ 127.0.0.53. ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΡΡ‰ΠΈΠ΅ Π½Π° адрСс 127.0.0.54 запросы всСгда ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° Π²Ρ‹ΡˆΠ΅ΡΡ‚ΠΎΡΡ‰ΠΈΠΉ DNS-сСрвСр ΠΈ Π½Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ локально.
  • ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ сборки systemd-importd ΠΈ systemd-resolved с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ OpenSSL вмСсто libgcrypt.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ LoongArch, примСняСмой Π² процСссорах Loongson.
  • Π’ systemd-gpt-auto-generator Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ автоматичСской настройки опрСдСляСмых систСмой Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² ΠΏΠΎΠ΄ΠΊΠ°Ρ‡ΠΊΠΈ, Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… подсистСмой LUKS2.
  • Π’ ΠΊΠΎΠ΄Π΅ Ρ€Π°Π·Π±ΠΎΡ€Π° GPT-ΠΎΠ±Ρ€Π°Π·ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌ Π² systemd-nspawn, systemd-dissect ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°Ρ…, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ дСкодирования ΠΎΠ±Ρ€Π°Π·ΠΎΠ² для Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ systemd-nspawn для запуска ΠΎΠ±Ρ€Π°Π·ΠΎΠ² Π² эмуляторах Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€.
  • ΠŸΡ€ΠΈ инспСктировании дисковых ΠΎΠ±Ρ€Π°Π·ΠΎΠ² Π² systemd-dissect Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ выводятся свСдСния ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Ρ€Π°Π·Π΄Π΅Π»Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, пригодности Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· UEFI ΠΈΠ»ΠΈ запускС Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅.
  • Π’ Ρ„Π°ΠΉΠ»Ρ‹ system-extension.d/ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΠΎΠ»Π΅ «SYSEXT_SCOPE», ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ примСнСния систСмного ΠΎΠ±Ρ€Π°Π·Π° — «initrd», «system» ΠΈΠ»ΠΈ «portable».
  • Π’ Ρ„Π°ΠΉΠ» os-release Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΠΎΠ»Π΅ «PORTABLE_PREFIXES», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² пСрСносимых ΠΎΠ±Ρ€Π°Π·Π°Ρ… для опрСдСлСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… прСфиксов unit-Ρ„Π°ΠΉΠ»ΠΎΠ².
  • Π’ systemd-logind Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ настройки HandlePowerKeyLongPress, HandleRebootKeyLongPress, HandleSuspendKeyLongPress ΠΈ HandleHibernateKeyLongPress, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для опрСдСлСния дСйствий ΠΏΡ€ΠΈ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… клавиш дольшС 5 сСкунд (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ быстром Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ клавиши Suspend ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΆΠ΄ΡƒΡ‰ΠΈΠΉ Ρ€Π΅ΠΆΠΈΠΌ, Π° ΠΏΡ€ΠΈ ΡƒΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ — Π² спящий).
  • Для unit-ΠΎΠ² Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ настройки StartupAllowedCPUs ΠΈ StartupAllowedMemoryNodes, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Ρ… настроСк Π±Π΅Π· прСфикса Startup Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° этапС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Ρ‡Ρ‚ΠΎ позволяСт Π²Ρ‹ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΠ½Ρ‹Π΅ ограничСния рСсурсов ΠΏΡ€ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ [Condition|Assert][Memory|CPU|IO]Pressure, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ошибкой Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΡŽ unit-Π° Π² случаС опрСдСлСния Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ PSI большой Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ, CPU ΠΈ Π²Π²ΠΎΠ΄/Π²Ρ‹Π²ΠΎΠ΄ Π² систСмС.
  • УстанавливаСмоС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π½Π° максимальноС число inode ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΎ для Ρ€Π°Π·Π΄Π΅Π»Π° /dev с 64k Π΄ΠΎ 1M, Π° для /tmp с 400k Π΄ΠΎ 1M.
  • Для сСрвисов ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° настройка ExecSearchPath, Π΄Π°ΡŽΡ‰Π°Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚ΡŒ для поиска исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ², запускаСмых Ρ‡Π΅Ρ€Π΅Π· настройки, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ExecStart.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка RuntimeRandomizedExtraSec, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ внСсти случайныС отклонСния Π² Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚ RuntimeMaxSec, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ врСмя выполнСния ΡŽΠ½ΠΈΡ‚Π°.
  • Π Π°ΡΡˆΠΈΡ€Π΅Π½ синтаксис настроСк RuntimeDirectory, StateDirectory, CacheDirectory ΠΈ LogsDirectory, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния, Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Π΄Π²ΠΎΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅ΠΌ, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ созданиС символичСской ссылки Π½Π° Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ доступа ΠΏΠΎ нСскольким путям.
  • Для сСрвисов ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ настройки TTYRows ΠΈ TTYColumns для задания числа строк ΠΈ столбцов Π² устройствС TTY.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка ExitType, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ опрСдСлСния Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ сСрвиса. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ systemd отслСТиваСт Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ основного процСсса, Π½ΠΎ ΠΏΡ€ΠΈ выставлСнии ExitType=cgroup систСмный ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΆΠ΄Π°Ρ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ послСднСго процСсса Π² cgroup.
  • РСализация ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ TPM2/FIDO2/PKCS11 Π² systemd-cryptsetup Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ собираСтся Π² Π²ΠΈΠ΄Π΅ ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΊ cryptsetup, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cryptsetup для разблокирования ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°.
  • Π’ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅ TPM2 Π² systemd-cryptsetup/systemd-cryptsetup Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅ΠΉ RSA, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ECC, для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ совмСстимости с Ρ‡ΠΈΠΏΠ°ΠΌΠΈ, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌΠΈ ECC.
  • Π’ /etc/crypttab Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция token-timeout, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ максимальноС врСмя оТидания ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚ΠΎΠΊΠ΅Π½Π° PKCS#11/FIDO2, послС истСчСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ запрос Π²Π²ΠΎΠ΄Π° пароля ΠΈΠ»ΠΈ ΠΊΠ»ΡŽΡ‡Π° восстановлСния.
  • Π’ systemd-timesyncd Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° настройка SaveIntervalSec, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ пСриодичСски ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ систСмного Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° диск, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½Ρ‹Ρ… часов Π½Π° систСмах Π±Π΅Π· RTC.
  • Π’ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ systemd-analyze Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ: «—image» ΠΈ «—root» для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ unit-Ρ„Π°ΠΉΠ»ΠΎΠ² Π²Π½ΡƒΡ‚Ρ€ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±Ρ€Π°Π·Π° ΠΈΠ»ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°, «—recursive-errors» для ΡƒΡ‡Ρ‘Ρ‚Π° зависимых ΡŽΠ½ΠΈΡ‚ΠΎΠ² ΠΏΡ€ΠΈ выявлСнии ошибки, «—offline» для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ сохранённых Π½Π° диск unit-Ρ„Π°ΠΉΠ»ΠΎΠ², «—json» для Π²Ρ‹Π²ΠΎΠ΄Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON, «—quiet» для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅Π²Π°ΠΆΠ½Ρ‹Ρ… сообщСний, «—profile» для привязки ΠΊ пСрСносимому ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŽ. Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° inspect-elf для Ρ€Π°Π·Π±ΠΎΡ€Π° core-Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ELF ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ unit-Ρ„Π°ΠΉΠ»ΠΎΠ² с Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡŽΠ½ΠΈΡ‚Π°, нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ совпадаСт Π»ΠΈ это имя с ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„Π°ΠΉΠ»Π°.
  • Π’ systemd-networkd Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡˆΠΈΠ½Ρ‹ CAN (Controller Area Network). Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ настройки для управлСния Ρ€Π΅ΠΆΠΈΠΌΠ°ΠΌΠΈ CAN: Loopback, OneShot, PresumeAck ΠΈ ClassicDataLengthCode. Π’ ΡΠ΅ΠΊΡ†ΠΈΡŽ [CAN] Ρ„Π°ΠΉΠ»ΠΎΠ² .network Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΎΠΏΡ†ΠΈΠΈ TimeQuantaNSec, PropagationSegment, PhaseBufferSegment1, PhaseBufferSegment2, SyncJumpWidth, DataTimeQuantaNSec, DataPropagationSegment, DataPhaseBufferSegment1, DataPhaseBufferSegment2 ΠΈ DataSyncJumpWidth для управлСния Π±ΠΈΡ‚ΠΎΠ²ΠΎΠΉ синхронизациСй интСрфСйса CAN.
  • Π’ systemd-networkd для ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° DHCPv4 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Label, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ адрСсов, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡƒΡŽ ΠΏΡ€ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ адрСсов IPv4.
  • Π’ systemd-udevd для «ethtool» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ «max», Π²Ρ‹ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±ΡƒΡ„Π΅Ρ€Π° Π² максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.
  • Π’ .link-Ρ„Π°ΠΉΠ»Π°Ρ… для systemd-udevd Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ объСдинСния сСтСвых Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² (offload).
  • Π’ systemd-networkd ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ .network-Ρ„Π°ΠΉΠ»Ρ‹: 80-container-vb.network для опрСдСлСния сСтСвых мостов, созданных ΠΏΡ€ΠΈ запускС systemd-nspawn с опциями «—network-bridge» ΠΈΠ»ΠΈ «—network-zone»; 80-6rd-tunnel.network для опрСдСлСния Ρ‚ΡƒΠ½Π½Π΅Π»Π΅ΠΉ, автоматичСски созданных ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ DHCP-ΠΎΡ‚Π²Π΅Ρ‚Π° с ΠΎΠΏΡ†ΠΈΠ΅ΠΉ 6RD.
  • Π’ systemd-networkd ΠΈ systemd-udevd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° проброса IP ΠΏΠΎΠ²Π΅Ρ€Ρ… интСрфСйсов InfiniBand, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² Ρ„Π°ΠΉΠ»Ρ‹ systemd.netdev Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° сСкция «[IPoIB]», Π° Π² настройкС Kind Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° значСния «ipoib».
  • Π’ systemd-networkd обСспСчСна автоматичСская настройка ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΎΠ² для адрСсов, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ AllowedIPs, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ настроСна Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ RouteTable ΠΈ RouteMetric Π² сСкциях [WireGuard] ΠΈ [WireGuardPeer].
  • Π’ systemd-networkd обСспСчСна автоматичСская гСнСрация Π½Π΅ ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ MAC-адрСсов для интСрфСйсов batadv ΠΈ bridge. Для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ повСдСния ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ MACAddress=none Π² Ρ„Π°ΠΉΠ»Π°Ρ… .netdev.
  • Π’ Ρ„Π°ΠΉΠ»Ρ‹ .link Π² ΡΠ΅ΠΊΡ†ΠΈΡŽ «[Link]» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка WakeOnLanPassword, для опрСдСлСния пароля ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ WoL Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ «SecureOn».
  • Π’ ΡΠ΅ΠΊΡ†ΠΈΡŽ «[CAKE]» Ρ„Π°ΠΉΠ»ΠΎΠ² .network Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ настройки AutoRateIngress, CompensationMode, FlowIsolationMode, NAT, MPUBytes, PriorityQueueingPreset, FirewallMark, Wash, SplitGSO ΠΈ UseRawPacketSize для опрСдСлСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° управлСния сСтСвыми очСрСдями CAKE (Common Applications Kept Enhanced).
  • Π’ ΡΠ΅ΠΊΡ†ΠΈΡŽ «[Network]» Ρ„Π°ΠΉΠ»ΠΎΠ² .network Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° настройка IgnoreCarrierLoss, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ ΠΆΠ΄Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΏΠΎΡ‚Π΅Ρ€ΡŽ нСсущСго сигнала.
  • Π’ systemd-nspawn, homectl, machinectl ΠΈ systemd-run Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ синтаксис ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° «—setenv» — Ссли ΡƒΠΊΠ°Π·Π°Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (Π±Π΅Π· «=»), Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ взято ΠΈΠ· ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ «—setenv=FOO» Π±ΡƒΠ΄Π΅Ρ‚ взято Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния $FOO ΠΈ использовано Π² выставляСмой Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅ ΠΎΠ΄Π½ΠΎΠΈΠΌΡ‘Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ окруТСния).
  • Π’ systemd-nspawn Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция «—suppress-sync» для ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ выполнСния систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² sync()/fsync()/fdatasync() ΠΏΡ€ΠΈ создании ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° (ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° сохранСниС сборочных Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚ΠΎΠ² Π² случаС сбоя Π½Π΅ Π²Π°ΠΆΠ½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ созданы Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° новая Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… hwdb, Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠ² сигналов (ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΌΠ΅Ρ‚Ρ€Ρ‹, Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², осциллографы ΠΈ Ρ‚.ΠΏ.). Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ ΠΊΠ°ΠΌΠ΅Ρ€Π°Ρ… Π² hwdb Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ»Π΅ΠΌ с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Ρ‚ΠΈΠΏΠ΅ ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ (обычная ΠΈΠ»ΠΈ инфракрасная) ΠΈ размСщСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π° (спСрСди ΠΈΠ»ΠΈ сзади).
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° гСнСрация Π½Π΅ ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΈΠΌΡ‘Π½ сСтСвых интСрфСйсов для устройств netfront, примСняСмых Π² Xen.
  • Анализ core-Ρ„Π°ΠΉΠ»ΠΎΠ² ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ΠΎΠΉ systemd-coredump Π½Π° Π±Π°Π·Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ libdw/libelf Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ производится Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ процСссС, ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π² sandbox-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ.
  • Π’ systemd-importd Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния $SYSTEMD_IMPORT_BTRFS_SUBVOL, $SYSTEMD_IMPORT_BTRFS_QUOTA, $SYSTEMD_IMPORT_SYNC, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Btrfs, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠ²ΠΎΡ‚Ρ‹ ΠΈ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ дисков.
  • Π’ systemd-journald Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСмах с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Ρ€Π΅ΠΆΠΈΠΌΠ° copy-on-write обСспСчСно ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΆΠΈΠΌΠ° COW для Π°Ρ€Ρ…ΠΈΠ²Π½Ρ‹Ρ… ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ², Ρ‡Ρ‚ΠΎ позволяСт ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΈΡ… сТатиС силами Btrfs.
  • Π’ systemd-journald Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° дСдупликация ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ Π² ΠΎΠ΄Π½ΠΎΠΌ сообщСнии, которая выполняСтся Π½Π° этапС ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ сообщСния Π² ΠΆΡƒΡ€Π½Π°Π».
  • Π’ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ shutdown Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция «—show» для отобраТСния Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ