Este disponibil systemd 245 cu implementarea directoarelor home portabile

După trei luni de dezvoltare la sfârșitul anului 2019. Pe lângă protocoalele ActivityPub și diaspora, Hubzilla se federează în cadrul rețelei prin propriul său protocol lansarea managerului de sistem systemd 245. În noul număr au fost adăugate componentele systemd-homed și systemd-repart, a fost inclusă suportul pentru profilele de utilizator portabile în format JSON, s-a asigurat posibilitatea de a defini spațiile de nume în systemd-journald și a fost adăugat suportul pentru mecanismul „pidfd”. A fost complet refăcut site-ul proiectului, pe care este adunată cea mai mare parte a documentației disponibile și a fost propus un nou logo.

Este disponibil systemd 245 cu implementarea directoarelor home portabile

Principalele modificări:

  • A fost adăugat serviciul systemd-homed, care asigură gestionarea directoarelor de acasă portabile, livrate sub formă de fișier imagine montabil, datele din care sunt criptate. Systemd-homed permite crearea de medii autosuficiente pentru datele utilizatorului, care pot fi transferate între diferite sisteme, fără a se îngriji de sincronizarea identificatorilor și confidențialitate. Parametrii contului utilizatorului sunt legați de directorul de acasă, nu de setările sistemului — în loc de /etc/passwd, /etc/group și /etc/shadow se utilizează un profil în format JSON. Detalii suplimentare pot fi găsite în anunțul anterior systemd-homed.
  • A fost adăugat componentul asociat systemd-homed „userdb” („systemd-userdb”), care traduce conturile UNIX/glibc NSS în înregistrări JSON și oferă o API unificată Varlink pentru interogarea și parcurgerea înregistrărilor. În profilul JSON legat de directorul de acasă sunt specificate parametrii necesari funcționării utilizatorului, inclusiv informații despre nume, hash-ul parolei, cheile pentru criptare, cotele și resursele oferite. Profilul poate fi semnat digital, semnătura fiind stocată pe un token extern Yubikey. Pentru gestionarea profilurilor a fost propusă utilitarul „userdbctl”. Suportul pentru profilele în format JSON a fost adăugat în diverse componente systemd, inclusiv systemd-logind și pam-systemd, permițând utilizatorilor de directoare portabile organizarea autentificării, intrarea, configurarea variabilelor de mediu, crearea sesiunilor, stabilirea limitelor etc. În viitor se așteaptă apariția posibilității de generare a profilurilor JSON de către framework-ul sssd cu stocarea setărilor utilizatorilor în LDAP.
  • A fost adărată o nouă utilitară «systemd-repart», destinat reconfigurării tabelelor de partiții în format GPT. Structura partițiilor este definită într-o formă declarativă prin fișiere care descriu ce partiții ar trebui sau pot exista. La fiecare boot, tabela reală de partiții este comparată cu aceste fișiere, după care se adaugă partițiile lipsă sau, dacă dimensiunea specificată în setări nu coincide, se mărește dimensiunea partițiilor existente. Sunt permise doar modificări incrementale, adică ștergerea și reducerea dimensiunii nu este posibilă, iar partițiile pot fi doar adăugate și mărite.
    Utilitara este în principal proiectată pentru a fi rulată din initrd și determină automat discul pe care se află partiția rădăcină, ceea ce nu necesită configurare suplimentară, în afară de fișierele cu definiția modificărilor.

    În practică, systemd-repart poate fi util pentru imaginile sistemelor de operare care inițial pot fi livrate într-o formă minimă, iar după prima încărcare se pot extinde la dimensiunea dispozitivului de bloc existent sau se pot adăuga partiții suplimentare (de exemplu, partiția rădăcină poate fi extinsă pentru a acoperi întregul disc sau, după prima încărcare, se poate crea o partiție de swap sau /home). O altă aplicație poate fi configurațiile cu două partiții care se schimbă reciproc – inițial ar putea fi livrată doar prima partiție, iar a doua să fie creată la prima încărcare.

  • A fost disponibilă opțiunea de a rula mai multe instanțe systemd-journald, fiecare dintre acestea păstrând jurnalele în propriul său spațiu de nume. În afară de systemd-journald.service principal, în directorul .service a fost propus un șablon pentru a crea instanțe suplimentare, legate de spațiile lor de nume prin directiva «LogNamespace». Fiecare spațiu de nume al jurnalele este gestionat de un proces de fundal distinct, cu propriul set de configurații și limite. Opțiunea propusă poate fi utilă pentru a echilibra sarcina în cazul unui volum mare de jurnale sau pentru a spori izolarea aplicațiilor. În journalctl a fost adăugată opțiunea «—namespace», care limitează cererea doar la spațiul de nume specificat.
  • În systemd-udevd și în alte componente systemd a fost adăugată suport pentru mecanismul de atribuire a numelui alternativ pentru interfețele de rețea, permițând aplicarea simultană a mai multor denumiri pentru o singură interfață. Dimensiunea numelui poate ajunge la 128 de caractere (anterior, numele interfeței de rețea era limitat la 16 caractere). În mod implicit, systemd-udevd atribuie acum fiecărei interfețe de rețea toate variantele de nume generate de schemele de denumire acceptate. Astfel de comportament poate fi modificat prin noile setări AlternativeName și AlternativeNamesPolicy în fișierele .link. În systemd-nspawn a fost implementată generarea de nume alternative cu numele complet al containerului pentru link-urile veth create pe partea gazdei.
  • În API-ul sd-event.h a fost adăugată suport pentru subsistemul kernel-ului Linux „pidfd” pentru a gestiona situațiile de reutilizare a PID-urilor (pidfd se leagă de un proces specific și nu se schimbă, în timp ce PID-ul poate fi asociat cu un alt proces după finalizarea procesului curent asociat cu acest PID). Toate componentele systemd, cu excepția PID 1, au fost migrate pentru a utiliza pidfds, dacă acest subsistem este acceptat de kernel-ul curent.
  • În systemd-logind, prin PolicyKit, a fost asigurată verificarea accesului la operația de schimbare a terminalului virtual. În mod implicit, permisiunile de schimbare a terminalului activ sunt acordate doar utilizatorilor care au inițiat cel puțin o sesiune pe un terminal virtual local.
  • Pentru a simplifica crearea imaginilor initrd cu systemd, procesorul PID 1 acum determină utilizarea în initrd și, în acest caz, încarcă automat initrd.target în loc de default.target. Astfel, imaginile initrd și sistemul de bază pot diferi doar prin prezența fișierului /etc/initrd-release.
  • A fost adăugat un nou parametru al liniei de comandă a kernel-ului — „systemd.cpu_affinity”, echivalent opțiunii CPUAffinity din /etc/systemd/system.conf, permițând configurarea unei măști de legare la CPU pentru PID 1 și alte procese.
  • A fost asigurată reîncărcarea bazei SELinux împreună cu repornirea PID 1 prin comenzi similare cu „systemctl daemon-reload”.
  • În procesorul PID 1 a fost adăugată setarea „systemd.show-status=error”, care, atunci când este setată, va afișa pe consolă doar mesajele despre erori și întârzierile semnificative în timpul încărcării.
  • În systemd-sysusers a fost adăugat suport pentru crearea utilizatorilor cu numele grupului principal diferit de numele utilizatorului.
  • În systemd-growfs, prin opțiunea de montare x-systemd.growfs din /etc/fstab, a fost implementată suportul pentru extinderea partițiilor XFS, pe lângă extinderea anterior suportată a partițiilor cu Ext4 și Btrfs.
  • În /etc/crypttab a fost adăugată opțiunea x-initrd.attach pentru a specifica partiția criptată, deja deblocat în etapa initrd.
  • În systemd-cryptsetup a fost adăugată suportul (opțiunea pkcs11-uri în /etc/crypttab) pentru deblocarea partițiilor criptate folosind smartcard-uri PKCS#11, de exemplu, pentru a conecta criptarea partițiilor la brelocurile YubiKeys.
  • În /etc/fstab au fost adăugate noi opțiuni de montare „x-systemd.required-by” și „x-systemd.wanted-by” pentru a configura explicit unitățile care definesc operațiunile de montare, invocate în locul local-fs.target și remote-fs.target.
  • A fost adăugată o nouă opțiune de izolare a serviciilor — ProtectClock, care limitează scrierea în ceasurile de sistem (accesul este blocat la nivelul /dev/rtc, apeluri de sistem și permisiuni CAP_SYS_TIME/CAP_WAKE_ALARM).
  • În specificația Partiții Descoperibile și systemd-gpt-auto-generator a fost adăugată definirea partițiilor
    /var и /var/tmp.
  • În „systemctl list-unit-files”, la afișarea listei unităților a fost adăugat un nou coloana, care reflectă starea de activare sugerată în predeterminare de către producător pentru acest tip de unități.
  • În „systemctl” a fost adăugată opțiunea „—with-dependencies”, utilizând care comenzile precum „systemctl status” și „systemctl cat” vor afișa nu doar toate unitățile corespunzătoare, ci și unitățile de care depind.
  • În systemd-networkd, în configurația qdisc a fost adăugată posibilitatea de configurare a parametrilor TBF (Token Bucket Filter), SFQ (Stochastic Fairness Queuing), CoDel (Controlled-Delay Active Queue Management) și FQ (Fair Queue).
  • În systemd-networkd a fost adăugat suportul pentru dispozitivele de rețea IFB (Intermediate Functional Block).
  • În systemd-networkd în secțiunea [Route] a fost implementat parametrul MultiPathRoute pentru configurarea rutelor multipath.
  • În systemd-networkd pentru clientul DHCPv4 a fost adăugată opțiunea SendDecline, care, atunci când este specificată, verifică duplicarea adresei după primirea unui răspuns DHCP cu adresa și în cazul descoperirii unui conflict de adrese, adresa emisă este respinsă. De asemenea, pentru clientul DHCPv4 a fost adăugată opțiunea RouteMTUBytes, care permite definirea dimensiunii MTU pentru rute, generate din legăturile IP (lease-uri).
  • Configurarea PrefixRoute în secțiunea „[Address]” a fișierelor „.network” a fost declarat învechită. În locul acesteia a fost introdusă configurarea „AddPrefixRoute”, având un sens opus.
  • În fișierele .network, în setarea Gateway din secțiunea «[Route]» a fost adăugată suportul pentru o nouă valoare «_dhcp», prin care un traseu static este selectat pe baza gateway-ului configurat prin DHCP.
  • În fișierele .network, în secțiunea «[RoutingPolicyRule]» au apărut setări
    User și SuppressPrefixLength pentru a stabili rutare de la sursă (source routing) pe baza intervalelor UID și a dimensiunii prefixului.
  • În networkctl, comanda «status» a fost îmbunătățită pentru a permite afișarea jurnalele în legătură cu fiecare interfață de rețea.
  • În systemd-networkd-wait-online a fost adăugat suport pentru a stabili timpul maxim de așteptare pentru tranziția interfeței în stare de funcționare și așteptarea dispariției interfeței.
  • A fost întreruptă procesarea fișierelor .link și .network cu secțiuni «[Match]» goale sau comentate.
  • În fișierele .link și .network, în secțiunea «[Match]» a fost adăugată setarea «PermanentMACAddress» pentru a verifica adresa MAC permanentă a dispozitivelor în cazul utilizării unei adrese MAC generate aleatoriu.
  • Secțiunea «[TrafficControlQueueingDiscipline]» din fișierele .network a fost redenumită în «[NetworkEmulator]», iar prefixul «NetworkEmulator» a fost eliminat din denumirile setărilor corespunzătoare.
  • În systemd-resolved pentru DNS-over-TLS a fost adăugat suport pentru verificarea SNI.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster