Systemd System Manager versió 249

Després de tres mesos de desenvolupament, es presenta la versió del gestor del sistema systemd 249. La nova versió ofereix la possibilitat de definir usuaris/grups en format JSON, estabilitza el protocol Journal, simplifica l'organització de la càrrega de particions successives del disc, afegeix la capacitat de enllaça programes BPF amb serveis i implementa usuaris de mapatge d'identificadors en particions muntades, s'ofereix una gran part de noves configuracions de xarxa i oportunitats per llançar contenidors.

Principals canvis:

  • El protocol Journal està documentat i es pot utilitzar als clients en lloc del protocol syslog per al lliurament local de registres de registre. El protocol Journal s'ha implementat des de fa molt de temps i ja s'utilitza en algunes biblioteques de clients, però, tot just s'acaba d'anunciar el seu suport oficial.
  • Userdb i nss-systemd ofereixen suport per llegir definicions d'usuari addicionals situades als directoris /etc/userdb/, /run/userdb/, /run/host/userdb/ i /usr/lib/userdb/, especificats en format JSON. Cal assenyalar que aquesta característica proporcionarà un mecanisme addicional per crear usuaris al sistema, proporcionant-li una integració completa amb NSS i /etc/shadow. El suport JSON per a les entrades d'usuaris/grups també permetrà adjuntar diverses gestions de recursos i altres configuracions als usuaris que reconeixen pam_systemd i systemd-logind.
  • nss-systemd proporciona una síntesi d'entrades d'usuari/grup a /etc/shadow utilitzant contrasenyes hash de systemd-homed.
  • S'ha implementat un mecanisme que simplifica l'organització de les actualitzacions mitjançant particions de disc que se substitueixen entre si (una partició està activa i la segona és de recanvi: l'actualització es copia a la partició de recanvi, després de la qual s'activa). Si hi ha dues particions root o /usr a la imatge de disc i udev no ha detectat la presència del paràmetre 'root=' o està processant imatges de disc especificades mitjançant l'opció "--image" a systemd-nspawn i systemd -Dissect utilities, la partició d'arrencada es pot calcular comparant les etiquetes GPT (suposant que l'etiqueta GPT esmenta el número de versió del contingut de la partició i systemd seleccionarà la partició amb els canvis més recents).
  • S'ha afegit una configuració BPFProgram als fitxers de servei, amb la qual podeu organitzar la càrrega de programes BPF al nucli i gestionar-los amb vinculació a serveis de sistema específics.
  • Systemd-fstab-generator i systemd-repart afegeixen la possibilitat d'arrencar des de discs que només tenen una partició /usr i cap partició arrel (la partició arrel la generarà systemd-repart durant el primer arrencada).
  • A systemd-nspawn, l'opció "--private-user-chown" s'ha substituït per l'opció més genèrica "--private-user-ownership", que pot acceptar valors "chown" com a equivalent de "-- private-user-chown", "off" per desactivar la configuració antiga, "map" per mapejar els ID d'usuari en sistemes de fitxers muntats i "auto" per seleccionar "map" si la funcionalitat necessària està present al nucli (5.12+) o retrocedir. a una crida recursiva a "chown" en cas contrari. Mitjançant l'assignació, podeu assignar fitxers d'un usuari en una partició estrangera muntada a un altre usuari del sistema actual, facilitant la compartició de fitxers entre diferents usuaris. En el mecanisme de directori d'inici portàtil amb sistema d'inici, el mapeig permetrà als usuaris moure els seus directoris d'inici a mitjans externs i utilitzar-los en diferents ordinadors que no tenen la mateixa disposició d'identificació d'usuari.
  • A systemd-nspawn, l'opció "--private-user" ara pot utilitzar el valor "identity" per reflectir directament els ID d'usuari quan es configura un espai de noms d'usuari, és a dir. L'UID 0 i l'UID 1 del contenidor es reflectiran a l'UID 0 i l'UID 1 al costat de l'amfitrió, per reduir els vectors d'atac (el contenidor només rebrà capacitats de procés al seu espai de noms).
  • L'opció "--bind-user" s'ha afegit a systemd-nspawn per reenviar un compte d'usuari existent a l'entorn amfitrió al contenidor (el directori d'inici es munta al contenidor, s'afegeix una entrada d'usuari/grup i mapeig UID es realitza entre el contenidor i l'entorn host).
  • S'ha afegit suport per sol·licitar contrasenyes establertes a systemd-ask-password i systemd-sysusers (passwd.hashed-password. i passwd.plaintext-password. ) utilitzant el mecanisme introduït a systemd 247 per transferir de manera segura dades sensibles mitjançant fitxers intermedis en un directori separat. Per defecte, les credencials s'accepten del procés amb PID1, que les rep, per exemple, del gestor de gestió de contenidors, que permet configurar la contrasenya de l'usuari al primer arrencada.
  • systemd-firstboot afegeix suport per utilitzar el mecanisme de transferència segura de dades sensibles per consultar diversos paràmetres del sistema, que es poden utilitzar per inicialitzar la configuració del sistema quan s'inicia per primera vegada una imatge de contenidor que no té la configuració necessària al directori /etc.
  • El procés PID 1 garanteix que tant el nom com la descripció de la unitat es mostrin durant l'arrencada. Podeu canviar la sortida mitjançant el paràmetre "StatusUnitFormat=combined" a system.conf o l'opció de línia d'ordres del nucli "systemd.status-unit-format=combined"
  • S'ha afegit l'opció "--image" a les utilitats systemd-machine-id-setup i systemd-repart per transferir un fitxer amb un identificador de màquina a una imatge de disc o per augmentar la mida d'una imatge de disc.
  • S'ha afegit un paràmetre MakeDirectories al fitxer de configuració de partició utilitzat per la utilitat systemd-repart, que es pot utilitzar per crear directoris arbitraris al sistema de fitxers creat abans de reflectir-se a la taula de particions (per exemple, per crear directoris per als punts de muntatge a la partició arrel perquè pugueu muntar immediatament la partició en mode de només lectura). Per controlar els indicadors GPT a les seccions creades, s'han afegit els paràmetres corresponents Flags, ReadOnly i NoAuto. El paràmetre CopyBlocks té el valor "auto" per seleccionar automàticament la partició d'arrencada actual com a font quan copieu blocs (per exemple, quan necessiteu transferir la vostra pròpia partició arrel a un nou suport).
  • GPT implementa la marca "grow-file-system", que és similar a l'opció de muntatge x-systemd.growfs i proporciona una expansió automàtica de la mida FS als límits del dispositiu de bloc si la mida FS és més petita que la partició. El senyalador és aplicable als sistemes de fitxers Ext3, XFS i Btrfs i es pot aplicar a les particions detectades automàticament. El senyalador està habilitat per defecte per a particions escrivibles creades automàticament mitjançant systemd-repart. S'ha afegit l'opció GrowFileSystem per configurar la marca a systemd-repart.
  • El fitxer /etc/os-release proporciona suport per a noves variables IMAGE_VERSION i IMAGE_ID per determinar la versió i l'ID de les imatges actualitzades atòmicament. Es proposen els especificadors %M i %A per substituir els valors especificats en diverses ordres.
  • S'ha afegit el paràmetre "--extension" a la utilitat portablectl per activar les imatges d'extensió del sistema portàtil (per exemple, mitjançant elles podeu distribuir imatges amb serveis addicionals integrats a la partició arrel).
  • La utilitat systemd-coredump proporciona l'extracció d'informació d'ID de compilació ELF quan es genera un abocament bàsic d'un procés, que pot ser útil per determinar a quin paquet pertany un procés que falla si es va crear informació sobre el nom i la versió dels paquets deb o rpm. als fitxers ELF.
  • S'ha afegit una nova base de maquinari per a dispositius FireWire (IEEE 1394) a udev.
  • A udev, s'han afegit tres canvis a l'esquema de selecció de noms de la interfície de xarxa "net_id" que violen la compatibilitat amb les versions anteriors: ara els caràcters incorrectes dels noms de les interfícies es substitueixen per "_"; Els noms de les ranures PCI hotplug per als sistemes s390 es processen en forma hexadecimal; Es permet l'ús de fins a 65535 dispositius PCI integrats (abans es bloquejaven els números superiors a 16383).
  • systemd-resolved afegeix el domini "home.arpa" a la llista NTA (Ancoratges de confiança negatius), que es recomana per a xarxes domèstiques locals, però no s'utilitza a DNSSEC.
  • El paràmetre CPUAffinity proporciona l'anàlisi dels especificadors "%".
  • S'ha afegit un paràmetre ManageForeignRoutingPolicyRules als fitxers .network, que es pot utilitzar per excloure systemd-networkd del processament de polítiques d'encaminament de tercers.
  • El paràmetre RequiredFamilyForOnline s'ha afegit als fitxers ".network" per determinar la presència d'una adreça IPv4 o IPv6 com a senyal que la interfície de xarxa està en estat "en línia". Networkctl proporciona una visualització de l'estat "en línia" de cada enllaç.
  • S'ha afegit el paràmetre OutgoingInterface als fitxers .network per definir interfícies de sortida quan es configuren ponts de xarxa.
  • S'ha afegit un paràmetre de grup als fitxers ".network", que us permet configurar un grup de camins múltiples per a les entrades de la secció "[NextHop]".
  • S'han afegit les opcions "-4" i "-6" a systemd-network-wait-online per limitar les esperes de connexió només a IPv4 o IPv6.
  • S'ha afegit un paràmetre RelayTarget a la configuració del servidor DHCP, que canvia el servidor al mode DHCP Ralay. Per a una configuració addicional del relé DHCP, s'ofereixen les opcions RelayAgentCircuitId i RelayAgentRemoteId.
  • El paràmetre ServerAddress s'ha afegit al servidor DHCP, la qual cosa us permet establir explícitament l'adreça IP del servidor (en cas contrari, l'adreça es selecciona automàticament).
  • El servidor DHCP implementa la secció [DHCPServerStaticLease], que us permet configurar enllaços d'adreces estàtiques (arrendaments DHCP), especificant enllaços IP fixes a adreces MAC i viceversa.
  • La configuració RestrictAddressFamilies admet el valor "cap", el que significa que el servei no tindrà accés als sòcols de cap família d'adreces.
  • Als fitxers ".network" de les seccions [Address], [DHCPv6PrefixDelegation] i [IPv6Prefix], s'implementa el suport per a la configuració RouteMetric, que us permet especificar la mètrica per al prefix de ruta creat per a l'adreça especificada.
  • nss-myhostname i systemd-resolved proporcionen una síntesi de registres DNS amb adreces per a amfitrions amb un nom especial "_outbound", per al qual sempre s'emet una IP local, escollida d'acord amb les rutes predeterminades utilitzades per a les connexions sortints.
  • Als fitxers .network, a la secció "[DHCPv4]", s'ha afegit una configuració activa per defecte de RoutesToNTP, que requereix afegir una ruta separada a través de la interfície de xarxa actual per accedir a l'adreça del servidor NTP obtinguda per a aquesta interfície mitjançant DHCP (similar a DNS). , la configuració us permet garantir que el trànsit al servidor NTP s'encaminarà a través de la interfície a través de la qual s'ha rebut aquesta adreça).
  • S'ha afegit la configuració de SocketBindAllow i SocketBindDeny per controlar l'accés als sòcols vinculats al servei actual.
  • Per als fitxers d'unitat, s'ha implementat un paràmetre condicional anomenat ConditionFirmware, que us permet crear comprovacions que avaluen les funcions del microprogramari, com ara el treball en sistemes UEFI i device.tree, així com comprovar la compatibilitat amb determinades capacitats de l'arbre de dispositius.
  • S'ha implementat l'opció ConditionOSRelease per comprovar els camps del fitxer /etc/os-release. Quan es defineixen les condicions per comprovar els valors dels camps, els operadors “=”, “!=”, “<“, “<=”, “>=”, “>” són acceptables.
  • A la utilitat hostnamectl, ordres com "get-xyz" i "set-xyz" s'alliberen dels prefixos "get" i "set", per exemple, en lloc de "hostnamectl get-hostname" i "hostnamectl "set-hostname" podeu utilitzar l'ordre "hostnamectl hostname" , l'assignació d'un valor en el qual es determina especificant un argument addicional ("hostnamectl hostname value"). S'ha mantingut el suport per a ordres antigues per garantir la compatibilitat.
  • La utilitat systemd-detect-virt i la configuració ConditionVirtualization garanteixen la identificació correcta dels entorns Amazon EC2.
  • La configuració LogLevelMax dels fitxers d'unitat ara s'aplica no només als missatges de registre generats pel servei, sinó també als missatges de procés PID 1 que mencionen el servei.
  • Proporciona la possibilitat d'incloure dades SBAT (UEFI Secure Boot Advanced Targeting) als fitxers EFI PE d'arrencada systemd.
  • /etc/crypttab implementa noves opcions "headless" i "password-echo": la primera us permet saltar totes les operacions associades amb la sol·licitud interactiva de contrasenyes i PIN a l'usuari, i la segona us permet configurar el mètode per mostrar l'entrada de contrasenya (no mostrar res, mostrar caràcter a caràcter i mostrar asteriscs). L'opció "--echo" s'ha afegit a systemd-ask-password amb finalitats similars.
  • systemd-cryptenroll, systemd-cryptsetup i systemd-homed han ampliat el suport per desbloquejar particions LUKS2 xifrades mitjançant fitxes FIDO2. S'han afegit noves opcions "--fido2-with-user-presence", "--fido2-with-user-verification" i "-fido2-with-client-pin" per controlar la verificació de la presència física de l'usuari, la verificació i la necessitat d'entrar un codi PIN.
  • S'han afegit opcions "--user", "--system", "--merge" i "--file" a systemd-journal-gatewayd, de manera similar a les opcions journalctl.
  • A més de les dependències directes entre unitats especificades mitjançant els paràmetres OnFailure i Slice, s'ha afegit suport per a les dependències inverses implícites OnFailureOf i SliceOf, que poden ser útils, per exemple, per determinar totes les unitats incloses en slice.
  • S'han afegit nous tipus de dependències entre unitats: OnSuccess i OnSuccessOf (al contrari d'OnFailure, cridats en finalitzar amb èxit); PropagatesStopTo i StopPropagatedFrom (permeten propagar l'esdeveniment d'aturada d'una unitat a una altra unitat); Upholds i UpheldBy (alternativa a Restart).
  • La utilitat systemd-ask-password ara té una opció "--emoji" per controlar l'aparició del símbol del cadenat (🔐) a la línia d'entrada de la contrasenya.
  • S'ha afegit documentació sobre l'estructura de l'arbre de fonts de systemd.
  • Per a les unitats, s'ha afegit una propietat MemoryAvailable, que mostra quanta memòria li queda a la unitat abans d'arribar al límit establert mitjançant els paràmetres MemoryMax, MemoryHigh o MemoryAvailable.

Font: opennet.ru

Afegeix comentari