Systemd System Manager versió 242

[:ru]

Després de dos mesos de desenvolupament presentat llançament del gestor del sistema systemd 242. Entre les innovacions, podem destacar el suport per a túnels L2TP, la capacitat de controlar el comportament de systemd-logind en reiniciar mitjançant variables d'entorn, suport per a particions d'arrencada XBOOTLDR esteses per muntar /boot, la capacitat d'arrencar amb una partició arrel en overlayfs, així com un gran nombre de noves configuracions per a diferents tipus d'unitats.

Principals canvis:

  • systemd-networkd proporciona suport per a túnels L2TP;
  • sd-boot i bootctl ofereixen suport per a les particions XBOOTLDR (Extended Boot Loader) dissenyades per muntar-se a /boot, a més de les particions ESP muntades a /efi o /boot/efi. Els nuclis, la configuració, les imatges initrd i EFI ara es poden arrencar des de les particions ESP i XBOOTLDR. Aquest canvi us permet utilitzar el carregador d'arrencada sd-boot en escenaris més conservadors, quan el mateix carregador d'arrencada es troba a l'ESP i els nuclis carregats i les metadades associades es col·loquen en una secció separada;
  • S'ha afegit la possibilitat d'arrencar amb l'opció "systemd.volatile=overlay" passat al nucli, que us permet col·locar la partició arrel en overlayfs i organitzar el treball a sobre d'una imatge de només lectura del directori arrel amb els canvis escrits en un directori separat a tmpfs (els canvis en aquesta configuració es perden després d'un reinici). Per analogia, systemd-nspawn ha afegit l'opció "--volatile=overlay" per utilitzar una funcionalitat similar als contenidors;
  • systemd-nspawn ha afegit l'opció "--oci-bundle" per permetre l'ús de paquets de temps d'execució per proporcionar un llançament aïllat de contenidors que compleixin l'especificació de la Iniciativa de contenidors oberts (OCI). Per al seu ús a les unitats de línia d'ordres i nspawn, es proposa suport per a diverses opcions descrites a l'especificació OCI, per exemple, les opcions "--inaccessible" i "Inaccessible" es poden utilitzar per excloure parts del sistema de fitxers, i el " S'han afegit opcions --console per configurar fluxos de sortida estàndard i "-pipe";
  • S'ha afegit la capacitat de controlar el comportament de systemd-logind mitjançant variables d'entorn: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU i
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Amb aquestes variables, podeu connectar els vostres propis controladors de procés de reinici (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu i
    /run/systemd/reboot-to-boot-loader-entry) o desactiveu-los del tot (si el valor està definit com a fals);

  • S'han afegit les opcions "-boot-load-menu=" i
    “—boot-loader-entry=”, que us permet seleccionar un element específic del menú d'arrencada o un mode d'arrencada després d'un reinici;

  • S'ha afegit una nova ordre d'aïllament de sandbox "RestrictSUIDSGID=", que utilitza seccomp per prohibir la creació de fitxers amb senyals SUID/SGID;
  • Assegureu-vos que les restriccions "NoNewPrivileges" i "RestrictSUIDSGID" s'apliquen de manera predeterminada als serveis amb el mode de generació d'ID d'usuari dinàmic ("DynamicUser" habilitat);
  • La configuració predeterminada MACAddressPolicy=persistent als fitxers .link s'ha canviat per cobrir més dispositius. Les interfícies de ponts de xarxa, túnels (tun, tap) i enllaços agregats (bond) no s'identifiquen excepte pel nom de la interfície de xarxa, de manera que aquest nom s'utilitza ara com a base per a l'enllaç d'adreces MAC i IPv4. A més, s'ha afegit la configuració "MACAddressPolicy=aleatori", que es pot utilitzar per vincular adreces MAC i IPv4 als dispositius en un ordre aleatori;
  • Els fitxers d'unitats ".device" generats mitjançant systemd-fstab-generator ja no inclouen les unitats ".mount" corresponents com a dependències a la secció "Wants=". Simplement connectant un dispositiu ja no s'inicia automàticament una unitat per muntar-la, però aquestes unitats encara es poden llançar per altres motius, com ara com a part de local-fs.target o com a dependència d'altres unitats que depenen de local-fs.target. ;
  • S'ha afegit suport per a màscares ("*", etc.) a les ordres "networkctl list/status/lldp" per filtrar determinats grups d'interfícies de xarxa per part del seu nom;
  • La variable d'entorn $PIDFILE s'estableix ara utilitzant la ruta absoluta configurada als serveis mitjançant el paràmetre "PIDFile=;".
  • Els servidors públics de Cloudflare (1.1.1.1) s'han afegit al nombre de servidors DNS de còpia de seguretat utilitzats si el DNS principal no està definit explícitament. Per redefinir la llista de servidors DNS de còpia de seguretat, podeu utilitzar l'opció "-Ddns-servers=";
  • Quan es detecta la presència d'un controlador de dispositiu USB, s'inicia automàticament un nou controlador usb-gadget.target (quan el sistema s'executa en un dispositiu perifèric USB);
  • Per als fitxers d'unitats, s'ha implementat la configuració "CPUQuotaPeriodSec=", que determina el període de temps relatiu al qual es mesura la quota de temps de la CPU, establerta mitjançant la configuració "CPUQuota=";
  • Per als fitxers d'unitat, s'ha implementat la configuració "ProtectHostname=", que prohibeix als serveis canviar la informació sobre el nom de l'amfitrió, encara que tinguin els permisos adequats;
  • Per als fitxers d'unitats, s'ha implementat la configuració "NetworkNamespacePath=", que us permet vincular un espai de noms a serveis o unitats de sòcol especificant el camí al fitxer d'espai de noms al pseudo-FS /proc;
  • S'ha afegit la possibilitat de desactivar la substitució de variables d'entorn per als processos llançats mitjançant la configuració "ExecStart=" afegint un caràcter ":" abans de l'ordre d'inici;
  • Per als temporitzadors (unitats .timer) noves banderes "OnClockChange=" i
    “OnTimezoneChange=”, amb el qual podeu controlar la trucada de la unitat quan canvia l'hora del sistema o la zona horària;

  • S'han afegit nous paràmetres "ConditionMemory=" i "ConditionCPUs=", que determinen les condicions per trucar a una unitat en funció de la mida de la memòria i el nombre de nuclis de CPU (per exemple, un servei que consumeix molts recursos només es pot iniciar si la quantitat necessària de RAM disponible);
  • S'ha afegit una nova unitat time-set.target que accepta l'hora del sistema establerta localment, sense utilitzar la reconciliació amb servidors de temps externs mitjançant la unitat time-sync.target. La nova unitat pot ser utilitzada pels serveis que necessiten la precisió dels rellotges locals no sincronitzats;
  • L'opció "--show-transaction" s'ha afegit a "systemctl start" i ordres similars, quan s'especifiquen, es mostra un resum de tots els treballs afegits a la cua a causa de l'operació sol·licitada;
  • systemd-networkd implementa la definició d'un nou estat "esclavitzat", utilitzat en lloc de "degradat" o "portador" per a les interfícies de xarxa que formen part d'enllaços agregats o ponts de xarxa. Per a les interfícies primàries, en cas de problemes amb un dels enllaços compostos, s'ha afegit l'estat "portador degradat";
  • S'ha afegit l'opció "IgnoreCarrierLoss=" a les unitats .network per desar la configuració de la xarxa en cas de pèrdua de connexió;
  • Mitjançant la configuració "RequiredForOnline=" a les unitats .network, ara podeu establir l'estat d'enllaç mínim acceptable necessari per transferir la interfície de xarxa a "en línia" i activar el controlador systemd-networkd-wait-online;
  • S'ha afegit l'opció "--any" a systemd-networkd-wait-online per esperar la preparació de qualsevol de les interfícies de xarxa especificades en lloc de totes, així com l'opció "--operational-state=" per determinar l'estat de l'enllaç que indica la preparació;
  • S'ha afegit la configuració "UseAutonomousPrefix=" i "UseOnLinkPrefix="" a les unitats .network, que es poden utilitzar per ignorar els prefixos en rebre
    anunci d'un encaminador IPv6 (RA, anunci d'encaminador);

  • A les unitats .network, s'han afegit els paràmetres "MulticastFlood=", "NeighborSuppression=" i "Learning=" per canviar els paràmetres de funcionament del pont de xarxa, així com el paràmetre "TripleSampling="" per canviar el mode TRIPLE-SAMPLING d'interfícies virtuals CAN;
  • S'ha afegit la configuració "PrivateKeyFile=" i "PresharedKeyFile=" a les unitats .netdev, amb les quals podeu especificar claus privades i compartides (PSK) per a les interfícies VPN WireGuard;
  • S'han afegit opcions same-cpu-crypt i submit-from-crypt-cpus a /etc/crypttab, que controlen el comportament del planificador quan es migra el treball relacionat amb el xifratge entre nuclis de CPU;
  • systemd-tmpfiles proporciona el processament de fitxers de bloqueig abans de realitzar operacions en directoris amb fitxers temporals, cosa que us permet desactivar el treball de neteja de fitxers obsolets durant determinades accions (per exemple, quan descomprimiu un arxiu tar a /tmp, els fitxers molt antics poden ser obert que no es pot esborrar abans del final de l'acció amb ells);
  • L'ordre "systemd-analyze cat-config" ofereix la possibilitat d'analitzar una configuració dividida en diversos fitxers, per exemple, valors predefinits d'usuari i sistema, el contingut de tmpfiles.d i sysusers.d, regles udev, etc.
  • S'ha afegit l'opció "--cursor-file=" a "journalctl" per especificar un fitxer per carregar i desar el cursor de posició;
  • S'ha afegit la definició de l'hipervisor ACRN i el subsistema WSL (subsistema de Windows per a Linux) a systemd-detect-virt per a ramificacions posteriors mitjançant l'operador condicional "ConditionVirtualization";
  • Durant la instal·lació de systemd (quan s'executa "ninja install"), la creació d'enllaços simbòlics als fitxers systemd-networkd.service, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service i systemd-timesyncd.service. Per crear aquests fitxers, ara heu d'executar l'ordre "systemctl preset-all".

Fontopennet.ru

[: És]

Després de dos mesos de desenvolupament presentat llançament del gestor del sistema systemd 242. Entre les innovacions, podem destacar el suport per a túnels L2TP, la capacitat de controlar el comportament de systemd-logind en reiniciar mitjançant variables d'entorn, suport per a particions d'arrencada XBOOTLDR esteses per muntar /boot, la capacitat d'arrencar amb una partició arrel en overlayfs, així com un gran nombre de noves configuracions per a diferents tipus d'unitats.

Principals canvis:

  • systemd-networkd proporciona suport per a túnels L2TP;
  • sd-boot i bootctl ofereixen suport per a les particions XBOOTLDR (Extended Boot Loader) dissenyades per muntar-se a /boot, a més de les particions ESP muntades a /efi o /boot/efi. Els nuclis, la configuració, les imatges initrd i EFI ara es poden arrencar des de les particions ESP i XBOOTLDR. Aquest canvi us permet utilitzar el carregador d'arrencada sd-boot en escenaris més conservadors, quan el mateix carregador d'arrencada es troba a l'ESP i els nuclis carregats i les metadades associades es col·loquen en una secció separada;
  • S'ha afegit la possibilitat d'arrencar amb l'opció "systemd.volatile=overlay" passat al nucli, que us permet col·locar la partició arrel en overlayfs i organitzar el treball a sobre d'una imatge de només lectura del directori arrel amb els canvis escrits en un directori separat a tmpfs (els canvis en aquesta configuració es perden després d'un reinici). Per analogia, systemd-nspawn ha afegit l'opció "--volatile=overlay" per utilitzar una funcionalitat similar als contenidors;
  • systemd-nspawn ha afegit l'opció "--oci-bundle" per permetre l'ús de paquets de temps d'execució per proporcionar un llançament aïllat de contenidors que compleixin l'especificació de la Iniciativa de contenidors oberts (OCI). Per al seu ús a les unitats de línia d'ordres i nspawn, es proposa suport per a diverses opcions descrites a l'especificació OCI, per exemple, les opcions "--inaccessible" i "Inaccessible" es poden utilitzar per excloure parts del sistema de fitxers, i el " S'han afegit opcions --console per configurar fluxos de sortida estàndard i "-pipe";
  • S'ha afegit la capacitat de controlar el comportament de systemd-logind mitjançant variables d'entorn: $SYSTEMD_REBOOT_ TO_FIRMWARE_SETUP,
    $SYSTEMD_REBOOT_TO_BOOT_LOADER_MENU i
    $SYSTEMD_REBOOT_ TO_BOOT_LOADER_ENTRY. Amb aquestes variables, podeu connectar els vostres propis controladors de procés de reinici (/run/systemd/reboot-to-firmware-setup, /run/systemd/reboot-to-boot-loader-menu i
    /run/systemd/reboot-to-boot-loader-entry) o desactiveu-los del tot (si el valor està definit com a fals);

  • S'han afegit les opcions "-boot-load-menu=" i
    “—boot-loader-entry=”, que us permet seleccionar un element específic del menú d'arrencada o un mode d'arrencada després d'un reinici;

  • S'ha afegit una nova ordre d'aïllament de sandbox "RestrictSUIDSGID=", que utilitza seccomp per prohibir la creació de fitxers amb senyals SUID/SGID;
  • Assegureu-vos que les restriccions "NoNewPrivileges" i "RestrictSUIDSGID" s'apliquen de manera predeterminada als serveis amb el mode de generació d'ID d'usuari dinàmic ("DynamicUser" habilitat);
  • La configuració predeterminada MACAddressPolicy=persistent als fitxers .link s'ha canviat per cobrir més dispositius. Les interfícies de ponts de xarxa, túnels (tun, tap) i enllaços agregats (bond) no s'identifiquen excepte pel nom de la interfície de xarxa, de manera que aquest nom s'utilitza ara com a base per a l'enllaç d'adreces MAC i IPv4. A més, s'ha afegit la configuració "MACAddressPolicy=aleatori", que es pot utilitzar per vincular adreces MAC i IPv4 als dispositius en un ordre aleatori;
  • Els fitxers d'unitats ".device" generats mitjançant systemd-fstab-generator ja no inclouen les unitats ".mount" corresponents com a dependències a la secció "Wants=". Simplement connectant un dispositiu ja no s'inicia automàticament una unitat per muntar-la, però aquestes unitats encara es poden llançar per altres motius, com ara com a part de local-fs.target o com a dependència d'altres unitats que depenen de local-fs.target. ;
  • S'ha afegit suport per a màscares ("*", etc.) a les ordres "networkctl list/status/lldp" per filtrar determinats grups d'interfícies de xarxa per part del seu nom;
  • La variable d'entorn $PIDFILE s'estableix ara utilitzant la ruta absoluta configurada als serveis mitjançant el paràmetre "PIDFile=;".
  • Els servidors públics de Cloudflare (1.1.1.1) s'han afegit al nombre de servidors DNS de còpia de seguretat utilitzats si el DNS principal no està definit explícitament. Per redefinir la llista de servidors DNS de còpia de seguretat, podeu utilitzar l'opció "-Ddns-servers=";
  • Quan es detecta la presència d'un controlador de dispositiu USB, s'inicia automàticament un nou controlador usb-gadget.target (quan el sistema s'executa en un dispositiu perifèric USB);
  • Per als fitxers d'unitats, s'ha implementat la configuració "CPUQuotaPeriodSec=", que determina el període de temps relatiu al qual es mesura la quota de temps de la CPU, establerta mitjançant la configuració "CPUQuota=";
  • Per als fitxers d'unitat, s'ha implementat la configuració "ProtectHostname=", que prohibeix als serveis canviar la informació sobre el nom de l'amfitrió, encara que tinguin els permisos adequats;
  • Per als fitxers d'unitats, s'ha implementat la configuració "NetworkNamespacePath=", que us permet vincular un espai de noms a serveis o unitats de sòcol especificant el camí al fitxer d'espai de noms al pseudo-FS /proc;
  • S'ha afegit la possibilitat de desactivar la substitució de variables d'entorn per als processos llançats mitjançant la configuració "ExecStart=" afegint un caràcter ":" abans de l'ordre d'inici;
  • Per als temporitzadors (unitats .timer) noves banderes "OnClockChange=" i
    “OnTimezoneChange=”, amb el qual podeu controlar la trucada de la unitat quan canvia l'hora del sistema o la zona horària;

  • S'han afegit nous paràmetres "ConditionMemory=" i "ConditionCPUs=", que determinen les condicions per trucar a una unitat en funció de la mida de la memòria i el nombre de nuclis de CPU (per exemple, un servei que consumeix molts recursos només es pot iniciar si la quantitat necessària de RAM disponible);
  • S'ha afegit una nova unitat time-set.target que accepta l'hora del sistema establerta localment, sense utilitzar la reconciliació amb servidors de temps externs mitjançant la unitat time-sync.target. La nova unitat pot ser utilitzada pels serveis que necessiten la precisió dels rellotges locals no sincronitzats;
  • L'opció "--show-transaction" s'ha afegit a "systemctl start" i ordres similars, quan s'especifiquen, es mostra un resum de tots els treballs afegits a la cua a causa de l'operació sol·licitada;
  • systemd-networkd implementa la definició d'un nou estat "esclavitzat", utilitzat en lloc de "degradat" o "portador" per a les interfícies de xarxa que formen part d'enllaços agregats o ponts de xarxa. Per a les interfícies primàries, en cas de problemes amb un dels enllaços compostos, s'ha afegit l'estat "portador degradat";
  • S'ha afegit l'opció "IgnoreCarrierLoss=" a les unitats .network per desar la configuració de la xarxa en cas de pèrdua de connexió;
  • Mitjançant la configuració "RequiredForOnline=" a les unitats .network, ara podeu establir l'estat d'enllaç mínim acceptable necessari per transferir la interfície de xarxa a "en línia" i activar el controlador systemd-networkd-wait-online;
  • S'ha afegit l'opció "--any" a systemd-networkd-wait-online per esperar la preparació de qualsevol de les interfícies de xarxa especificades en lloc de totes, així com l'opció "--operational-state=" per determinar l'estat de l'enllaç que indica la preparació;
  • S'ha afegit la configuració "UseAutonomousPrefix=" i "UseOnLinkPrefix="" a les unitats .network, que es poden utilitzar per ignorar els prefixos en rebre
    anunci d'un encaminador IPv6 (RA, anunci d'encaminador);

  • A les unitats .network, s'han afegit els paràmetres "MulticastFlood=", "NeighborSuppression=" i "Learning=" per canviar els paràmetres de funcionament del pont de xarxa, així com el paràmetre "TripleSampling="" per canviar el mode TRIPLE-SAMPLING d'interfícies virtuals CAN;
  • S'ha afegit la configuració "PrivateKeyFile=" i "PresharedKeyFile=" a les unitats .netdev, amb les quals podeu especificar claus privades i compartides (PSK) per a les interfícies VPN WireGuard;
  • S'han afegit opcions same-cpu-crypt i submit-from-crypt-cpus a /etc/crypttab, que controlen el comportament del planificador quan es migra el treball relacionat amb el xifratge entre nuclis de CPU;
  • systemd-tmpfiles proporciona el processament de fitxers de bloqueig abans de realitzar operacions en directoris amb fitxers temporals, cosa que us permet desactivar el treball de neteja de fitxers obsolets durant determinades accions (per exemple, quan descomprimiu un arxiu tar a /tmp, els fitxers molt antics poden ser obert que no es pot esborrar abans del final de l'acció amb ells);
  • L'ordre "systemd-analyze cat-config" ofereix la possibilitat d'analitzar una configuració dividida en diversos fitxers, per exemple, valors predefinits d'usuari i sistema, el contingut de tmpfiles.d i sysusers.d, regles udev, etc.
  • S'ha afegit l'opció "--cursor-file=" a "journalctl" per especificar un fitxer per carregar i desar el cursor de posició;
  • S'ha afegit la definició de l'hipervisor ACRN i el subsistema WSL (subsistema de Windows per a Linux) a systemd-detect-virt per a ramificacions posteriors mitjançant l'operador condicional "ConditionVirtualization";
  • Durant la instal·lació de systemd (quan s'executa "ninja install"), la creació d'enllaços simbòlics als fitxers systemd-networkd.service, systemd-networkd.socket,
    systemd-resolved.service, remote-cryptsetup.target, remote-fs.target,
    systemd-networkd-wait-online.service i systemd-timesyncd.service. Per crear aquests fitxers, ara heu d'executar l'ordre "systemctl preset-all".

Font: opennet.ru

[:]

Afegeix comentari