rilis manajer sistem systemd 242

[:ru]

Setelah dua bulan pengembangan disajikan rilis manajer sistem systemd 242. Fitur-fitur baru termasuk dukungan untuk terowongan L2TP, kemampuan untuk mengontrol perilaku systemd-logind saat restart melalui variabel lingkungan, dukungan untuk partisi boot XBOOTLDR yang diperluas untuk pemasangan / boot, kemampuan untuk boot dengan partisi root di overlayfs, dan sejumlah besar pengaturan baru untuk berbagai jenis unit.

Perubahan besar:

  • systemd-networkd menyediakan dukungan untuk terowongan L2TP;
  • sd-boot dan bootctl mendukung partisi XBOOTLDR (Extended Boot Loader) yang dipasang di/boot, selain partisi ESP yang dipasang di/efi atau/boot/efi. Kernel, pengaturan, gambar initrd dan EFI sekarang dapat dimuat dari partisi ESP dan XBOOTLDR. Perubahan ini memungkinkan penggunaan bootloader sd-boot dalam skenario yang lebih konservatif, ketika bootloader itu sendiri ditempatkan di ESP, dan kernel yang dapat di-boot serta metadata terkait dipindahkan ke bagian terpisah;
  • Menambahkan kemampuan untuk boot dengan opsi "systemd.volatile=overlay" yang diteruskan ke kernel, yang memungkinkan Anda menempatkan partisi root di overlayfs dan mengatur pekerjaan di atas gambar read-only dari direktori root dengan perubahan yang ditulis ke a direktori terpisah di tmpfs (perubahan dalam konfigurasi ini hilang setelah restart). Dengan analogi, opsi "--volatile=overlay" telah ditambahkan ke systemd-nspawn untuk menggunakan fungsi serupa dalam container;
  • Menambahkan opsi "--oci-bundle" ke systemd-nspawn untuk memungkinkan penggunaan bundel runtime guna memungkinkan berjalannya kontainer secara terisolasi yang mematuhi spesifikasi Open Container Initiative (OCI). Dukungan untuk berbagai opsi yang dijelaskan dalam spesifikasi OCI diusulkan untuk digunakan pada baris perintah dan unit nspawn, misalnya, pengaturan "--inaccessible" dan "Inaccessible" dapat digunakan untuk mengecualikan bagian dari sistem file, dan "- Opsi -console" telah ditambahkan untuk mengonfigurasi aliran keluaran standar dan "—pipe";
  • Menambahkan kemampuan untuk mengontrol perilaku systemd-logind melalui variabel lingkungan: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_MENU dan
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_ENTRY. Dengan menggunakan variabel-variabel ini, Anda dapat menghubungkan penangan proses reboot Anda sendiri (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu dan
    /run/systemd/reboot-to-boot-loader-entry) atau nonaktifkan semuanya (bila disetel ke false);

  • Menambahkan opsi "--boot-load-menu=" ke perintah "systemctl reboot" dan
    "--boot-loader-entry=", memungkinkan Anda memilih item menu boot tertentu atau mode boot setelah reboot;

  • Menambahkan perintah isolasi sandbox baru "RestrictSUIDSGID=" yang menggunakan seccomp untuk mencegah pembuatan file dengan tanda SUID/SGID;
  • Menerapkan pembatasan default "NoNewPrivileges" dan "RestrictSUIDSGID" pada layanan dengan pembuatan ID pengguna dinamis yang diaktifkan ("DynamicUser");
  • Pengaturan default MACAddressPolicy=persistent di file .link telah diubah untuk mencakup lebih banyak perangkat. Antarmuka jembatan jaringan, terowongan (tun, tap) dan tautan gabungan (bond) tidak mengidentifikasi dirinya sendiri kecuali dengan nama antarmuka jaringan, sehingga nama ini sekarang digunakan sebagai dasar untuk mengikat alamat MAC dan IPv4. Selain itu, pengaturan "MACAddressPolicy=random" telah ditambahkan, yang dapat digunakan untuk mengikat alamat MAC dan IPv4 ke perangkat dalam urutan acak;
  • File unit ".device" yang dihasilkan melalui systemd-fstab-generator tidak lagi menyertakan unit ".mount" yang sesuai sebagai dependensi di bagian "Wants=". Cukup dengan memasang perangkat tidak lagi secara otomatis meluncurkan unit pemasangan, namun unit tersebut masih dapat diluncurkan karena alasan lain, seperti bagian dari local-fs.target atau sebagai ketergantungan pada unit lain yang bergantung pada local-fs.target;
  • Dukungan untuk masker ("*", dll.) telah ditambahkan ke perintah "networkctl list/status/lldp" untuk menyaring grup antarmuka jaringan tertentu berdasarkan bagian namanya;
  • Variabel lingkungan $PIDFILE sekarang disetel menggunakan jalur absolut yang dikonfigurasi dalam layanan melalui 'PIDFile=;
  • Menambahkan server Cloudflare publik (1.1.1.1) ke jumlah server DNS cadangan yang digunakan ketika DNS primer tidak ditentukan secara eksplisit. Untuk mengganti daftar server DNS cadangan, Anda dapat menggunakan opsi "-Ddns-servers=";
  • Ketika Pengontrol Perangkat USB terdeteksi, pengendali usb-gadget.target baru diluncurkan secara otomatis (saat sistem berjalan pada perangkat USB);
  • Untuk file unit, pengaturan "CPUQuotaPeriodSec=" diterapkan, yang menentukan periode waktu relatif terhadap pengukuran kuota waktu CPU, yang diatur melalui pengaturan "CPUQuota=";
  • Untuk file unit, pengaturan "ProtectHostname=" diterapkan, yang melarang layanan mengubah informasi tentang nama host, meskipun layanan tersebut memiliki izin yang sesuai;
  • Untuk file unit, pengaturan "NetworkNamespacePath=" diterapkan, yang memungkinkan Anda mengikat namespace ke layanan atau unit soket dengan menentukan jalur ke file namespace di /proc pseudo-FS;
  • Menambahkan kemampuan untuk menonaktifkan substitusi variabel lingkungan untuk proses yang diluncurkan menggunakan pengaturan "ExecStart=" dengan menambahkan karakter ":" sebelum perintah start;
  • Untuk pengatur waktu (unit .timer), tanda baru "OnClockChange=" dan
    "OnTimezoneChange=", yang dengannya Anda dapat mengontrol panggilan unit saat mengubah waktu sistem atau zona waktu;

  • Menambahkan pengaturan baru "ConditionMemory=" dan "ConditionCPUs=" yang menentukan kondisi pemanggilan unit bergantung pada ukuran memori dan jumlah inti CPU (misalnya, layanan intensif sumber daya hanya dapat dimulai jika jumlah yang diperlukan RAM tersedia);
  • Unit time-set.target baru telah ditambahkan yang menerima waktu sistem yang ditetapkan secara lokal, tanpa menggunakan rekonsiliasi dengan server waktu tepat eksternal menggunakan unit time-sync.target. Unit baru ini dapat digunakan oleh layanan yang membutuhkan ketepatan jam lokal yang tidak tersinkronisasi;
  • Menambahkan opsi "--show-transaction" ke "systemctl start" dan perintah serupa untuk menampilkan ringkasan semua pekerjaan yang ditambahkan ke antrian karena operasi yang diminta;
  • systemd-networkd telah menerapkan definisi untuk keadaan baru, 'diperbudak', digunakan sebagai pengganti 'terdegradasi' atau 'pembawa' untuk antarmuka jaringan yang merupakan bagian dari tautan gabungan atau jembatan jaringan. Untuk antarmuka primer, jika terjadi masalah dengan salah satu tautan gabungan, status 'pembawa terdegradasi' telah ditambahkan;
  • Menambahkan opsi "IgnoreCarrierLoss=" ke unit .network untuk menyimpan pengaturan jaringan jika terjadi kegagalan koneksi;
  • Melalui pengaturan “RequiredForOnline=” di unit .network, Anda sekarang dapat mengatur status tautan minimum yang diperbolehkan yang diperlukan untuk mentransfer antarmuka jaringan ke “online” dan memicu pengendali systemd-networkd-wait-online;
  • Menambahkan opsi "--any" ke systemd-networkd-wait-online untuk menunggu antarmuka jaringan yang ditentukan siap, dan opsi "--operational-state=" untuk menentukan status tautan yang menunjukkan bahwa sudah siap;
  • Menambahkan pengaturan "UseAutonomousPrefix=" dan "UseOnLinkPrefix=" ke unit .network yang dapat digunakan untuk mengabaikan awalan saat mendapatkan
    pengumuman dari router IPv6 (RA, Router Advertisement);

  • Menambahkan pengaturan “MulticastFlood=”, “NeighborSuppression=” dan “Learning=” ke unit .network untuk mengubah parameter operasi jembatan jaringan, serta pengaturan “TripleSampling=” untuk mengubah mode TRIPLE-SAMPLING antarmuka CAN virtual;
  • Menambahkan pengaturan “PrivateKeyFile=” dan “PresharedKeyFile=” ke unit .netdev, yang dengannya Anda dapat menentukan kunci pribadi dan bersama (PSK) untuk antarmuka WireGuard VPN;
  • Menambahkan opsi same-cpu-crypt dan submit-from-crypt-cpus ke /etc/crypttab untuk mengontrol perilaku penjadwal saat memigrasikan pekerjaan terkait enkripsi antar inti CPU;
  • systemd-tmpfiles menyediakan pemrosesan file kunci sebelum melakukan operasi di direktori dengan file sementara, yang memungkinkan Anda menonaktifkan pekerjaan pembersihan file usang selama tindakan tertentu (misalnya, saat membongkar arsip tar di / tmp, sangat lama file dapat dibuka yang tidak dapat dihapus sebelum tindakannya berakhir);
  • Perintah “systemd-analyze cat-config” menyediakan kemampuan untuk menganalisis konfigurasi yang dibagi menjadi beberapa file, misalnya, preset pengguna dan sistem, konten tmpfiles.d dan sysusers.d, aturan udev, dll.
  • Menambahkan opsi "--cursor-file=" ke "journalctl" untuk menentukan file yang akan dimuat dan menyimpan posisi kursor;
  • Menambahkan definisi hypervisor ACRN dan subsistem WSL (Subsistem Windows untuk Linux) ke systemd-detect-virt untuk percabangan berikutnya menggunakan operator kondisional "ConditionVirtualization";
  • Berhenti membuat tautan simbolik di /etc ke systemd-networkd.service, systemd-networkd.socket, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service dan systemd-timesyncd.service. Untuk membuat file-file ini, Anda sekarang perlu menjalankan perintah “systemctl preset-all”.

Источникopennet.ru

[: En]

Setelah dua bulan pengembangan disajikan rilis manajer sistem systemd 242. Fitur-fitur baru termasuk dukungan untuk terowongan L2TP, kemampuan untuk mengontrol perilaku systemd-logind saat restart melalui variabel lingkungan, dukungan untuk partisi boot XBOOTLDR yang diperluas untuk pemasangan / boot, kemampuan untuk boot dengan partisi root di overlayfs, dan sejumlah besar pengaturan baru untuk berbagai jenis unit.

Perubahan besar:

  • systemd-networkd menyediakan dukungan untuk terowongan L2TP;
  • sd-boot dan bootctl mendukung partisi XBOOTLDR (Extended Boot Loader) yang dipasang di/boot, selain partisi ESP yang dipasang di/efi atau/boot/efi. Kernel, pengaturan, gambar initrd dan EFI sekarang dapat dimuat dari partisi ESP dan XBOOTLDR. Perubahan ini memungkinkan penggunaan bootloader sd-boot dalam skenario yang lebih konservatif, ketika bootloader itu sendiri ditempatkan di ESP, dan kernel yang dapat di-boot serta metadata terkait dipindahkan ke bagian terpisah;
  • Menambahkan kemampuan untuk boot dengan opsi "systemd.volatile=overlay" yang diteruskan ke kernel, yang memungkinkan Anda menempatkan partisi root di overlayfs dan mengatur pekerjaan di atas gambar read-only dari direktori root dengan perubahan yang ditulis ke a direktori terpisah di tmpfs (perubahan dalam konfigurasi ini hilang setelah restart). Dengan analogi, opsi "--volatile=overlay" telah ditambahkan ke systemd-nspawn untuk menggunakan fungsi serupa dalam container;
  • Menambahkan opsi "--oci-bundle" ke systemd-nspawn untuk memungkinkan penggunaan bundel runtime guna memungkinkan berjalannya kontainer secara terisolasi yang mematuhi spesifikasi Open Container Initiative (OCI). Dukungan untuk berbagai opsi yang dijelaskan dalam spesifikasi OCI diusulkan untuk digunakan pada baris perintah dan unit nspawn, misalnya, pengaturan "--inaccessible" dan "Inaccessible" dapat digunakan untuk mengecualikan bagian dari sistem file, dan "- Opsi -console" telah ditambahkan untuk mengonfigurasi aliran keluaran standar dan "—pipe";
  • Menambahkan kemampuan untuk mengontrol perilaku systemd-logind melalui variabel lingkungan: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_MENU dan
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_ENTRY. Dengan menggunakan variabel-variabel ini, Anda dapat menghubungkan penangan proses reboot Anda sendiri (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu dan
    /run/systemd/reboot-to-boot-loader-entry) atau nonaktifkan semuanya (bila disetel ke false);

  • Menambahkan opsi "--boot-load-menu=" ke perintah "systemctl reboot" dan
    "--boot-loader-entry=", memungkinkan Anda memilih item menu boot tertentu atau mode boot setelah reboot;

  • Menambahkan perintah isolasi sandbox baru "RestrictSUIDSGID=" yang menggunakan seccomp untuk mencegah pembuatan file dengan tanda SUID/SGID;
  • Menerapkan pembatasan default "NoNewPrivileges" dan "RestrictSUIDSGID" pada layanan dengan pembuatan ID pengguna dinamis yang diaktifkan ("DynamicUser");
  • Pengaturan default MACAddressPolicy=persistent di file .link telah diubah untuk mencakup lebih banyak perangkat. Antarmuka jembatan jaringan, terowongan (tun, tap) dan tautan gabungan (bond) tidak mengidentifikasi dirinya sendiri kecuali dengan nama antarmuka jaringan, sehingga nama ini sekarang digunakan sebagai dasar untuk mengikat alamat MAC dan IPv4. Selain itu, pengaturan "MACAddressPolicy=random" telah ditambahkan, yang dapat digunakan untuk mengikat alamat MAC dan IPv4 ke perangkat dalam urutan acak;
  • File unit ".device" yang dihasilkan melalui systemd-fstab-generator tidak lagi menyertakan unit ".mount" yang sesuai sebagai dependensi di bagian "Wants=". Cukup dengan memasang perangkat tidak lagi secara otomatis meluncurkan unit pemasangan, namun unit tersebut masih dapat diluncurkan karena alasan lain, seperti bagian dari local-fs.target atau sebagai ketergantungan pada unit lain yang bergantung pada local-fs.target;
  • Dukungan untuk masker ("*", dll.) telah ditambahkan ke perintah "networkctl list/status/lldp" untuk menyaring grup antarmuka jaringan tertentu berdasarkan bagian namanya;
  • Variabel lingkungan $PIDFILE sekarang disetel menggunakan jalur absolut yang dikonfigurasi dalam layanan melalui 'PIDFile=;
  • Menambahkan server Cloudflare publik (1.1.1.1) ke jumlah server DNS cadangan yang digunakan ketika DNS primer tidak ditentukan secara eksplisit. Untuk mengganti daftar server DNS cadangan, Anda dapat menggunakan opsi "-Ddns-servers=";
  • Ketika Pengontrol Perangkat USB terdeteksi, pengendali usb-gadget.target baru diluncurkan secara otomatis (saat sistem berjalan pada perangkat USB);
  • Untuk file unit, pengaturan "CPUQuotaPeriodSec=" diterapkan, yang menentukan periode waktu relatif terhadap pengukuran kuota waktu CPU, yang diatur melalui pengaturan "CPUQuota=";
  • Untuk file unit, pengaturan "ProtectHostname=" diterapkan, yang melarang layanan mengubah informasi tentang nama host, meskipun layanan tersebut memiliki izin yang sesuai;
  • Untuk file unit, pengaturan "NetworkNamespacePath=" diterapkan, yang memungkinkan Anda mengikat namespace ke layanan atau unit soket dengan menentukan jalur ke file namespace di /proc pseudo-FS;
  • Menambahkan kemampuan untuk menonaktifkan substitusi variabel lingkungan untuk proses yang diluncurkan menggunakan pengaturan "ExecStart=" dengan menambahkan karakter ":" sebelum perintah start;
  • Untuk pengatur waktu (unit .timer), tanda baru "OnClockChange=" dan
    "OnTimezoneChange=", yang dengannya Anda dapat mengontrol panggilan unit saat mengubah waktu sistem atau zona waktu;

  • Menambahkan pengaturan baru "ConditionMemory=" dan "ConditionCPUs=" yang menentukan kondisi pemanggilan unit bergantung pada ukuran memori dan jumlah inti CPU (misalnya, layanan intensif sumber daya hanya dapat dimulai jika jumlah yang diperlukan RAM tersedia);
  • Unit time-set.target baru telah ditambahkan yang menerima waktu sistem yang ditetapkan secara lokal, tanpa menggunakan rekonsiliasi dengan server waktu tepat eksternal menggunakan unit time-sync.target. Unit baru ini dapat digunakan oleh layanan yang membutuhkan ketepatan jam lokal yang tidak tersinkronisasi;
  • Menambahkan opsi "--show-transaction" ke "systemctl start" dan perintah serupa untuk menampilkan ringkasan semua pekerjaan yang ditambahkan ke antrian karena operasi yang diminta;
  • systemd-networkd telah menerapkan definisi untuk keadaan baru, 'diperbudak', digunakan sebagai pengganti 'terdegradasi' atau 'pembawa' untuk antarmuka jaringan yang merupakan bagian dari tautan gabungan atau jembatan jaringan. Untuk antarmuka primer, jika terjadi masalah dengan salah satu tautan gabungan, status 'pembawa terdegradasi' telah ditambahkan;
  • Menambahkan opsi "IgnoreCarrierLoss=" ke unit .network untuk menyimpan pengaturan jaringan jika terjadi kegagalan koneksi;
  • Melalui pengaturan “RequiredForOnline=” di unit .network, Anda sekarang dapat mengatur status tautan minimum yang diperbolehkan yang diperlukan untuk mentransfer antarmuka jaringan ke “online” dan memicu pengendali systemd-networkd-wait-online;
  • Menambahkan opsi "--any" ke systemd-networkd-wait-online untuk menunggu antarmuka jaringan yang ditentukan siap, dan opsi "--operational-state=" untuk menentukan status tautan yang menunjukkan bahwa sudah siap;
  • Menambahkan pengaturan "UseAutonomousPrefix=" dan "UseOnLinkPrefix=" ke unit .network yang dapat digunakan untuk mengabaikan awalan saat mendapatkan
    pengumuman dari router IPv6 (RA, Router Advertisement);

  • Menambahkan pengaturan “MulticastFlood=”, “NeighborSuppression=” dan “Learning=” ke unit .network untuk mengubah parameter operasi jembatan jaringan, serta pengaturan “TripleSampling=” untuk mengubah mode TRIPLE-SAMPLING antarmuka CAN virtual;
  • Menambahkan pengaturan “PrivateKeyFile=” dan “PresharedKeyFile=” ke unit .netdev, yang dengannya Anda dapat menentukan kunci pribadi dan bersama (PSK) untuk antarmuka WireGuard VPN;
  • Menambahkan opsi same-cpu-crypt dan submit-from-crypt-cpus ke /etc/crypttab untuk mengontrol perilaku penjadwal saat memigrasikan pekerjaan terkait enkripsi antar inti CPU;
  • systemd-tmpfiles menyediakan pemrosesan file kunci sebelum melakukan operasi di direktori dengan file sementara, yang memungkinkan Anda menonaktifkan pekerjaan pembersihan file usang selama tindakan tertentu (misalnya, saat membongkar arsip tar di / tmp, sangat lama file dapat dibuka yang tidak dapat dihapus sebelum tindakannya berakhir);
  • Perintah “systemd-analyze cat-config” menyediakan kemampuan untuk menganalisis konfigurasi yang dibagi menjadi beberapa file, misalnya, preset pengguna dan sistem, konten tmpfiles.d dan sysusers.d, aturan udev, dll.
  • Menambahkan opsi "--cursor-file=" ke "journalctl" untuk menentukan file yang akan dimuat dan menyimpan posisi kursor;
  • Menambahkan definisi hypervisor ACRN dan subsistem WSL (Subsistem Windows untuk Linux) ke systemd-detect-virt untuk percabangan berikutnya menggunakan operator kondisional "ConditionVirtualization";
  • Berhenti membuat tautan simbolik di /etc ke systemd-networkd.service, systemd-networkd.socket, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service dan systemd-timesyncd.service. Untuk membuat file-file ini, Anda sekarang perlu menjalankan perintah “systemctl preset-all”.

Sumber: opennet.ru

[:]

Tambah komentar