rilis manajer sistem systemd 244

Setelah tiga bulan pengembangan disajikan rilis manajer sistem systemd 244.

Perubahan besar:

  • Menambahkan dukungan untuk pengontrol sumber daya cpuset berdasarkan cgroups v2, yang menyediakan mekanisme untuk mengikat proses ke CPU tertentu (pengaturan “AllowedCPUs”) dan node memori NUMA (pengaturan “AllowedMemoryNodes”);
  • Menambahkan dukungan untuk memuat pengaturan dari variabel SystemdOptions EFI untuk konfigurasi systemd, yang memungkinkan Anda untuk menyesuaikan perilaku systemd dalam situasi di mana mengubah opsi baris perintah kernel menjadi masalah dan konfigurasi dari disk terlambat dibaca (misalnya, ketika Anda perlu mengonfigurasi opsi terkait dengan hierarki cgroup). Untuk mengatur variabel di EFI, Anda dapat menggunakan perintah 'bootctl systemd-efi-options';
  • Menambahkan dukungan ke unit untuk memuat pengaturan dari direktori “{unit_type}.d/” yang terkait dengan jenis unit (misalnya, “service.d/”), yang dapat digunakan untuk menambahkan pengaturan yang mencakup semua file unit dari jenis tertentu di sekali;
  • Untuk unit layanan, mode isolasi kotak pasir baru ProtectKernelLogs telah ditambahkan, yang memungkinkan Anda menolak akses program ke buffer log kernel, dapat diakses melalui panggilan sistem syslog (jangan bingung dengan API dengan nama yang sama yang disediakan di libc). Jika mode ini diaktifkan, akses aplikasi ke /proc/kmsg, /dev/kmsg dan CAP_SYSLOG akan diblokir;
  • Untuk unit, pengaturan RestartKillSignal telah diusulkan, yang memungkinkan Anda untuk mendefinisikan ulang jumlah sinyal yang digunakan untuk menghentikan proses selama tugas dimulai ulang (Anda dapat mengubah perilaku menghentikan proses pada tahap persiapan untuk memulai ulang);
  • Perintah “systemctl clean” telah diadaptasi untuk digunakan dengan unit soket, mount, dan swap;
  • Pada tahap awal pemuatan, pembatasan intensitas keluaran pesan kernel melalui panggilan printk dinonaktifkan, yang memungkinkan log yang lebih lengkap tentang kemajuan pemuatan diakumulasikan pada tahap ketika penyimpanan log belum terhubung (log terakumulasi dalam buffer ring kernel). Menetapkan batas printk dari baris perintah kernel akan diutamakan dan memungkinkan Anda mengesampingkan perilaku systemd. Program Systemd yang secara langsung mengeluarkan log ke /dev/kmsg (ini hanya dilakukan di awal fase booting) menggunakan batasan internal terpisah untuk melindungi terhadap penyumbatan buffer;
  • Perintah 'stop --job-mode=triggering' telah ditambahkan ke utilitas systemctl, yang memungkinkan Anda menghentikan unit yang ditentukan pada baris perintah dan semua unit yang dapat memanggilnya;
  • Informasi status unit sekarang mencakup informasi tentang unit panggilan dan panggilan;
  • Dimungkinkan untuk menggunakan pengaturan “RuntimeMaxSec” di unit cakupan (sebelumnya hanya digunakan di unit layanan). Misalnya, "RuntimeMaxSec" sekarang dapat digunakan untuk membatasi waktu sesi PAM melalui pembuatan unit cakupan
    untuk akun pengguna. Batas waktu juga dapat diatur melalui opsi systemd.runtime_max_sec di parameter modul PAM pam_systemd;

  • Menambahkan grup panggilan sistem baru “@pkey”, ketika membatasi kontainer dan layanan, membuatnya lebih mudah untuk memasukkan panggilan sistem ke daftar putih yang terkait dengan perlindungan memori;
  • Menambahkan tanda "w+" ke systemd-tmpfiles untuk menulis dalam mode penambahan file;
  • Menambahkan informasi ke keluaran analisis sistem tentang apakah konfigurasi memori kernel cocok dengan pengaturan sistemd (misalnya, jika beberapa program pihak ketiga telah mengubah parameter kernel);
  • Opsi "--base-time" telah ditambahkan ke analisis sistem, ketika ditentukan, data kalender dihitung relatif terhadap waktu yang ditentukan dalam opsi ini, dan bukan relatif terhadap waktu sistem saat ini;
  • “journalctl —update-catalog” memastikan konsistensi dalam urutan elemen dalam output (berguna untuk mengatur build yang dapat diulang);
  • Menambahkan kemampuan untuk menentukan nilai default untuk pengaturan "WatchdogSec" yang digunakan dalam layanan systemd. Pada waktu kompilasi, nilai dasar dapat ditentukan melalui opsi "-Dservice-watchdog" (jika disetel ke kosong, pengawas akan dinonaktifkan);
  • Menambahkan opsi build "-Duser-path" untuk mengganti nilai $PATH;
  • Menambahkan opsi "-u" ("--uuid") ke systemd-id128 untuk menghasilkan pengidentifikasi 128-bit dalam UUID (representasi kanonik UUID);
  • Build sekarang memerlukan setidaknya libcryptsetup versi 2.0.1.

Perubahan terkait pengaturan jaringan:

  • Systemd-networkd telah menambahkan dukungan untuk mengkonfigurasi ulang tautan dengan cepat, yang mana perintah "reload" dan "reconfigure DEVICE..." telah ditambahkan ke networkctl untuk memuat ulang pengaturan dan mengkonfigurasi ulang perangkat;
  • systemd-networkd telah berhenti membuat rute default untuk tautan IPv4 lokal dengan alamat intranet 169.254.0.0/16 (Tautan-lokal). Sebelumnya, pembuatan rute default secara otomatis untuk tautan tersebut mengakibatkan perilaku tak terduga dan masalah perutean dalam beberapa kasus. Untuk mengembalikan perilaku lama, gunakan pengaturan “DefaultRouteOnDevice=yes”. Demikian pula, penetapan alamat IPv6 lokal dihentikan jika perutean IPv6 lokal tidak diaktifkan untuk tautan;
  • Di systemd-networkd, saat menghubungkan ke jaringan nirkabel dalam mode ad-hoc, konfigurasi default diimplementasikan dengan pengalamatan link-local (link-local);
  • Menambahkan parameter RxBufferSiz dan TxBufferSize untuk mengonfigurasi ukuran buffer penerima dan pengirim antarmuka jaringan;
  • systemd-networkd mengimplementasikan iklan rute IPv6 tambahan, diatur melalui opsi Route dan LifetimeSec di bagian “[IPv6RoutePrefix]”;
  • systemd-networkd telah menambahkan kemampuan untuk mengonfigurasi rute “hop berikutnya” menggunakan opsi “Gateway” dan “Id” di bagian “[NextHop]”;
  • systemd-networkd dan networkctl untuk DHCP menyediakan pembaruan langsung dari pengikatan alamat IP (sewa), yang diterapkan dengan perintah 'networkctl renew';
  • systemd-networkd memastikan bahwa konfigurasi DHCP disetel ulang saat restart (gunakan opsi KeepConfiguration untuk menyimpan pengaturan). Nilai default pengaturan SendRelease telah diubah menjadi “true”;
  • Klien DHCPv4 memastikan bahwa nilai opsi OPTION_INFORMATION_REFRESH_TIME yang dikirim oleh server digunakan. Untuk meminta opsi tertentu dari server, parameter "RequestOptions" diusulkan, dan untuk mengirim opsi ke server - "SendOption". Untuk mengkonfigurasi jenis layanan IP oleh klien DHCP, parameter “IPServiceType” telah ditambahkan;
  • Untuk menggantikan daftar server SIP (Session Initiation Protocol) dengan server DHCPv4, parameter “EmitSIP” dan “SIP” telah ditambahkan. Di sisi klien, penerimaan parameter SIP dari server dapat diaktifkan menggunakan pengaturan “UseSIP=yes”;
  • Menambahkan parameter "PrefixDelegationHint" ke klien DHCPv6 untuk meminta awalan alamat;
  • File .network menyediakan dukungan untuk pemetaan jaringan nirkabel berdasarkan SSID dan BSSID, misalnya untuk mengikat nama titik akses dan alamat MAC. Nilai SSID dan BSSID ditampilkan dalam output networkctl untuk antarmuka nirkabel. Selain itu, kemampuan untuk membandingkan berdasarkan jenis jaringan nirkabel telah ditambahkan (parameter WLANInterfaceType);
  • systemd-networkd telah menambahkan kemampuan untuk mengonfigurasi disiplin antrian untuk mengontrol lalu lintas menggunakan parameter Induk baru,
    NetworkEmulatorDelaySec, NetworkEmulatorDelayJitterSec,
    NetworkEmulatorPacketLimit dan NetworkEmulatorLossRate,
    NetworkEmulatorDuplicationRate di bagian “[TrafficControlQueueingDiscipline]”;

  • systemd-resolved menyediakan verifikasi alamat IP dalam sertifikat saat membangun dengan GnuTLS.

perubahan terkait udev:

  • Systemd-udevd telah menghapus batas waktu 30 detik untuk memaksa penangan yang macet berhenti. Systemd-udevd sekarang menunggu penyelesaian penangan yang mana 30 detik tidak cukup untuk menyelesaikan operasi secara normal dalam instalasi besar (misalnya, batas waktu dapat mengganggu inisialisasi driver selama proses peralihan partisi yang dipasang ke sistem file root). Saat menggunakan systemd, batas waktu tunggu systemd-udevd sebelum keluar dapat diatur melalui pengaturan TimeoutStopSec di systemd-udevd.service. Saat dijalankan tanpa systemd, batas waktu dikontrol oleh parameter udev.event_timeout;
  • Menambahkan program fido_id untuk udev, yang mengidentifikasi token FIDO CTAP1
    (“U2F”)/CTAP2 berdasarkan data tentang penggunaan sebelumnya dan menampilkan variabel lingkungan yang diperlukan (program ini memungkinkan Anda melakukannya tanpa daftar putih eksternal dari semua token yang diketahui yang digunakan sebelumnya);

  • Menerapkan pembuatan aturan penangguhan otomatis udev secara otomatis untuk perangkat dari daftar putih yang diimpor dari Chromium OS (perubahan ini memungkinkan Anda memperluas penggunaan mode hemat daya untuk perangkat tambahan);
  • Pengaturan "CONST{key}=value" baru telah ditambahkan ke udev untuk memungkinkan pemetaan nilai konstanta sistem secara langsung tanpa menjalankan penangan pemeriksaan terpisah. Saat ini hanya kunci "arch" dan "virt" yang didukung;
  • Mengaktifkan CDROM untuk dibuka dalam mode non-eksklusif saat melakukan operasi permintaan untuk mode yang didukung (perubahan ini memecahkan masalah dengan program yang mengakses CDROM dan mengurangi risiko gangguan program penulisan disk yang tidak menggunakan mode akses eksklusif).

Sumber: opennet.ru

Tambah komentar