Pas pesë muajsh zhvillimi lëshimi i menaxherit të sistemit . Ndër risitë, mund të përmendim integrimin e një menaxhuesi të mungesës së memories në PID 1, suportin për bashkimin e programeve të veta BPF për filtrimin e trafikut të njësive, shumë opsione të reja për systemd-networkd, një mod për monitorimin e kapacitetit të ndërfaqeve rrjetë, përdorimin e numrave PID 22-bit në sistemet 64-bit si parazgjedhje në vend të atyre 16-bit, kalimin në një hierarki të unifikuar cgroups, si dhe përfshirjen e systemd-network-generator.
Ndryshimet kryesore:
- Në menaxhuesin PID 1 është shtuar njohja e sinjaleve të gjeneruara nga bërthama për mungesën e memories (Out-Of-Memory, OOM) për të transferuar njësitë që kanë arritur kufirin në përdorimin e memories, në një gjendje të veçantë me mundësinë opsionale të përfundimit apo ndalimit të tyre;
- Për skedarët e njësive janë realizuar parametrat e rinj IPIngressFilterPath dhe
IPEgressFilterPath, që lejojnë lidhjen e programeve BPF me menaxhues të rastësishëm për filtrimin e paketimeve IP që vijnë dhe dalin, të gjeneruara nga proceset e lidhura me këtë njësi. Këto mundësi lejojnë krijimin e një lloji të firewall për shërbimet systemd. të një filtrin të thjeshtë të rrjetit mbi BPF; - Në utilitarin systemctl është shtuar komanda "clean" për të fshirë cache-n, skedarët e runtime, informacionin mbi gjendjen dhe katalogët e logeve;
- Në systemd-networkd është shtuar mbështetje për ndërfaqet rrjetë MACsec, nlmon, IPVTAP dhe Xfrm;
- Në systemd-networkd është realizuar konfigurimi i veçantë i stekëve DHCPv4 dhe DHCPv6 nëpërmjet seksioneve "[DHCPv4]" dhe "[DHCPv6]" në skedarin e konfigurimit. Është shtuar një opsion RoutesToDNS për të shtuar një rrugë të veçantë për serverin DNS, i cili specifikohet në parametrat e marrë nga serveri DHCP (në mënyrë që trafiku në DNS të dërgohet përmes të njëjtit lidhje si rruga kryesore e marrë nga DHCP). Për DHCPv4 janë shtuar opsione të reja: MaxAttempts — numri maksimal i kërkesave për të marrë adresë, BlackList — lista e zezë e serverëve DHCP, SendRelease — aktivizimi i dërgimit të mesazheve DHCP RELEASE kur seanca përfundon;
- Në utilitarin systemd-analyze janë shtuar komanda të reja:
- "systemd-analyze timestamp" — analiza dhe transformimi i kohës;
- "systemd-analyze timespan" — analiza dhe transformimi i intervaleve të kohës;
- "systemd-analyze condition" — analiza dhe testimi i shprehjeve ConditionXYZ;
- "systemd-analyze exit-status" — analiza dhe transformimi i kodave të përfundimit nga numrat në emra dhe anasjelltas;
- "systemd-analyze unit-files" — printimi i listës së të gjitha rrugëve të skedareve për njësitë dhe pseudonimet e njësive.
- Opsionet SuccessExitStatus, RestartPreventExitStatus dhe
RestartForceExitStatus tani mbështesin jo vetëm kodet numerike të kthimit, por edhe identifikuesit e tyre tekstualë (për shembull, "DATAERR"). Mund të shihni listën e lidhjes së kodeve me identifikuesit përmes komandës "systemd-analyze exit-status"; - Në utilitarin networkctl është shtuar komanda "delete" për fshirjen e pajisjeve të virtualizuara rrjetë, si dhe opsioni "—stats" për printimin e statistikave për pajisjet;
- Në networkd.conf janë shtuar konfigurime SpeedMeter dhe SpeedMeterIntervalSec për matjen periodike të kapacitetit të ndërfaqeve rrjetë. Statistikën e marrë nga matjet mund ta shihni në rezultatin e komandës 'networkctl status';
- është shtuar një utilitar i ri systemd-network-generator për gjenerimin e skedarëve
.network, .netdev dhe .link në bazë të konfigurimeve IP, të dërguara gjatë fillimit përmes komandës së kernel-it Linux në formatin e konfigurimeve Dracut; - Vlera sysctl "kernel.pid_max" në sistemet 64-bit tani vendoset si parazgjedhje në 4194304 (PID 22-bit në vend të 16-bit), e cila zvogëlon mundësitë e kolizionit në caktimin e PID, rrit limitin për numrin e proceseve që mund të funksionojnë njëkohësisht dhe ka një impakt pozitiv në siguri. Ndryshimi potencial mund të çojë në probleme me përputhshmërinë, por deri tani nuk janë raportuar probleme të tilla në praktikë;
- Si parazgjedhje, në fazën e ndërtimit është bërë kalimi në një hierarki të unifikuar cgroups-v2 ("-Ddefault-hierarchy=unified"). Më parë, si parazgjedhje ishte përcaktuar një mod hybrid ("-Ddefault-hierarchy=hybrid");
- Ka ndryshuar sjellja e filtrit të thirrjeve sistemike (SystemCallFilter), i cili në rast se kërkohet një thirrje sistemike e ndaluar përfundon të gjithë procesin, dhe jo vetëm disa nga thread-et, pasi përfundimi i thread-eve të veçanta mund të çojë në probleme të paparashikuara. Këto ndryshime vlejnë vetëm kur është prania e bërthames Linux 4.14+ dhe libseccomp 2.4.0+;
- Programet jo të privilegjuara kanë tani mundësinë të dërgojnë paketa ICMP Echo (ping) për shkak të vendosjes së sysctl "net.ipv4.ping_group_range" për të gjithë gamën e grupeve (për të gjithë proceset);
- Për të përshpejtuar procesin e ndërtimit, si parazgjedhje është ndaluar gjenerimi i man-manualeve (për ndërtimin e dokumentacionit të plotë, duhet të përdoret opsioni "-Dman=true" ose "-Dhtml=true" për manualet në formatin html). Për lehtësimin e shikimit të dokumentacionit janë përfshirë dy skripte build/man/man dhe build/man/html për gjenerimin dhe paraqitjen e manualeve të interesit;
- Për trajtimin e domain-eve me simbole të alfabeteve kombëtare, bibliotekën libidn2 përdoret si default (për të rikthyer libidn, përdorni opsionin "-Dlibidn=true");
- Mbështetje për skedarin ekzekutiv /usr/sbin/halt.local, i cili ofronte funksionalitete që nuk u përhapën siç duhet në distribucione, është ndërprerë. Për të organizuar ekzekutimin e komandave gjatë mbylljes, rekomandohet të përdoren skriptet në /usr/lib/systemd/system-shutdown/ ose të përcaktohet një njësi e re, e varur nga final.target;
- Në fazën e fundit të mbylljes, systemd tani automatikisht rrit nivelin e logeve në sysctl "kernel.printk", që zgjidh problemin me shfaqjen në log të ngjarjeve që ndodhin në faza të vona të mbylljes, kur demonët e zakonshëm të regjistrimit tashmë janë mbyllur;
- Në journalctl dhe në utilitat e tjera që shfaqin loge, paralajmërimet janë theksuar me ngjyrë të verdhë dhe shenjat e auditimit me ngjyrë të blertë për t'i bërë ato më të dukshme nga masa e përgjithshme;
- Në variablën e ambientit $PATH, rruga për bin/ tani duhet të jetë përpara rrugës për sbin/, dmth. nëse ka emra ekzekutivë të njëjtë në të dy katalogët, do të ekzekutohet skedari nga bin/;
- Në systemd-logind, është siguruar thirrja SetBrightness() për të ndryshuar në mënyrë të sigurt ndriçimin e ekranit për çdo sesion;
- Në komandën "udevadm info" është shtuar flagu "—wait-for-initialization" për të pritur përfundimin e inicimit të pajisjes;
- Gjatë ngarkesës së sistemit, procesori PID 1 tani shfaq emrat e njësive në ekran, në vend të një rreshti përshkrimi. Për të rikthyer sjelljen e kaluar, mund të përdorni opsionin StatusUnitFormat në /etc/systemd/system.conf ose parametrin e bërthamës systemd.status_unit_format;
- Në /etc/systemd/system.conf për watchdog në PID 1, është shtuar opsioni KExecWatchdogSec, që përcakton kufirin për rinisjen me përdorimin e kexec. Konfigurimi i vjetër ShutdownWatchdogSec është rinovuar në RebootWatchdogSec dhe përcakton një kufi për punët gjatë procesit të mbylljes ose rinisjes së zakonshme;
ShutdownWatchdogSec переименована в RebootWatchdogSec и определяет таймаут для работ в процессе завершения работы или обычного перезапуска; - Për shërbimet është shtuar një opsion i ri ExecCondition, që lejon përcaktimin e komandave që do të ekzekutohen para ExecStartPre. Në bazë të kodit të kthyer nga komanda, merret vendimi për ekzekutimin e mëtejshëm të njësisë — nëse kodi i kthyer është 0, vazhdon ekzekutimi, nëse ndodhet nga 1 deri në 254 përfundon pa shenja dështimi, kurse nëse është 255, përfundon me shenjë dështimi; , позволяющая задать команды, которые будут выполнены до ExecStartPre. На основе возвращённого командой кода ошибки принимается решение о дальнейшем выполнении юнита — если возвращён код 0 запуск юнита продолжается, если с 1 до 254 молча завершается без пометки возникновения сбоя, если 255 — завершается с пометкой возникновения сбоя;
- Është shtuar një shërbim i ri systemd-pstore.service për nxjerrjen e të dhënave nga sys/fs/pstore/ dhe për ruajtjen në /var/lib/pstore për analizë të mëtejshme;
- Në utilitarin timedatectl janë shtuar komanda të reja për konfigurimin e parametrave NTP për systemd-timesyncd në lidhje me ndërfaqet rrjetë;
- Në komandën "localectl list-locales" është ndërprerë shfaqja e lokalëve që nuk janë UTF-8;
- Janë injoruar gabimet e caktuara të variablave në skedarët sysctl.d/, nëse emri i variablës fillon me simbolet "-";
- Shërbimi теперь полностью отвечает за инициализацию пула энтропии генератора псевдослучайных чисел ядра Linux. Сервисы которым требуется корректно инициализированный /dev/urandom должны запускаться после systemd-random-seed.service;
- Në ngarkuesin systemd-boot është siguruar mundësia opsionale për të mbajtur seed-në në një skedë EFI System Partition (ESP); со случайной последовательностью в разделе EFI System Partition (ESP);
- Në utilitarin bootctl janë shtuar komanda të reja "bootctl random-seed" për të gjeneruar seed-në në ESP dhe "bootctl is-installed" për të verifikuar instalimin e ngarkuesit systemd-boot. Në bootctl gjithashtu janë krijuar paralajmërime për konfigurimin e gabuar të regjistrimeve të ngarkimit (për shembull, kur imazhi i bërthamës është fshirë, por regjistrimi për ngarkimin e tij është lënë);
- është siguruar zgjedhja automatike e skedës së shkarkimit kur sistemi kalon në modalitetin e gjumit. Skeda zgjidhet në përputhje me prioritetin e vendosur për të, dhe në rast të prioriteteve të njëjta – sipas madhësisë së hapësirës së lirë;
- Në /etc/crypttab është shtuar opsioni keyfile-timeout për të caktuar kohën e pritjes së pajisjes me çelësin e enkriptimit përpara se të shfaqet kërkesa për fjalëkalimin për qasje në skedën e enkriptuar;
- është shtuar opsioni IOWeight për vendosjen e peshës së hyrjes/ daljeve për planifikuesin BFQ;
- Në systemd-resolved është shtuar një mod i fortë (‘strict’) për DNS-over-TLS dhe është realizuar mundësia e cache-imit vetëm të përgjigjeve pozitive DNS ("Cache no-negative" në resolved.conf);
- Për VXLAN në systemd-networkd është shtuar opsioni GenericProtocolExtension për aktivizimin e zgjerimeve të protokollit VXLAN. Për VXLAN dhe GENEVE është shtuar opsioni IPDoNotFragment për vendosjen e flamurit të ndalimit të fraksionimin për paketat e daljes;
- Në systemd-networkd në seksionin "[Route]" ka dalë opsioni FastOpenNoCookie për aktivizimin e mekanizmit për hapjen e shpejtë të lidhjeve TCP (TFO — TCP Fast Open, RFC 7413) në lidhje me rrugët e veçanta, si dhe opsioni TTLPropagate për konfigurimin e TTL LSP (Label Switched Path). Në opsionin "Type" është siguruar mbështetje për modulet e përshkallëzimit local, broadcast, anycast, multicast, any dhe xresolve;
- Në systemd-networkd, në seksionin «[Network]» është propozuar opsioni DefaultRouteOnDevice për konfigurimin automat të rrugës standarde për një pajisje rrjeti të caktuar;
- Në systemd-networkd janë shtuar opsionet ProxyARP dhe ProxyARPWifi për urat rrjetore, për të konfiguruar sjelljen e proxy ARP, MulticastRouter për të caktuar parametrat e routing në mënyrë multicast, MulticastIGMPVersion për të ndryshuar versionin e IGMP (Internet Group Management Protocol) për multicast;
Në systemd-networkd për tunellet FooOverUDP janë shtuar opsionet Local, Peer dhe PeerPort për të konfiguruar adresat IP të anës lokale dhe të largët, si dhe numrin e portit rrjetit. Për tunellet TUN është shtuar opsioni VnetHeader për të aktivizuar mbështetje për GSO (Generic Segment Offload); - Në systemd-networkd, në skedarët .network dhe .link në seksionin [Match] ka një opsion të ri Property, që lejon identifikimin e pajisjeve përmes pronave specifike për to në udev;
- Në systemd-networkd për tunellet është shtuar opsioni AssignToLoopback, që menaxhon lidhjen e fundit të tunelit me pajisjen loopback 'lo';
- Në systemd-networkd është automatizuar aktivizimi i IPv6-stack në rast se është bllokuar përmes sysctl disable_ipv6 — IPv6 aktivizohet nëse për ndërfaqen rrjetore janë caktuar konfigurime IPv6 (statike ose DHCPv6), përndryshe, vlera e caktuar e sysctl nuk ndryshohet;
- Në skedarët .network, konfigurimi CriticalConnection është zëvendësuar me opsionin KeepConfiguration, që ofron më shumë mjete për të përcaktuar situatat («yes», «static», «dhcp-on-stop», «dhcp») në të cilat systemd-networkd nuk duhet të prekë lidhjet ekzistuese gjatë nisjes;
- CVE-2019-15718
- Është eliminuar një dobësi CVE-2019-9619
- Është eliminuar një dobësi Pas pesë muajve zhvillimi, është prezantuar lëshimi i menaxherit të sistemit systemd 243. Ndër risitë janë integrimi në PID 1 i menaxhuesit të mungesës së memories, mbështetja për bashkëngjitjen e programeve BPF të personalizuara për filtrimin e trafikut të unit-ve, shumë opsione të reja për systemd-networkd, moda e monitorimit të kapacitetit të ndërfaqeve rrjetore, aktivizimi për parazgjedhje në sistemet 64-bit të numrave të PID 22-bitësh në vend të 16-bitësh, kalimi në
Burimi: opennet.ru
