Utgivning av systemhanteraren systemd 249

Efter tre mÄnaders utveckling har releasen av systemhanteraren systemd 249 presenterats. Den nya versionen möjliggör specificering av anvÀndare/grupper i JSON-format, stabiliserar Journal-protokollet, förenklar hanteringen av skivpartitioner som byter plats med varandra, lÀgger till möjligheten att koppla BPF-program till tjÀnster, implementerar mapping av anvÀndar-ID i monterade partitioner och erbjuder en större mÀngd nya nÀtverksinstÀllningar och möjligheter för att köra containrar.

Huvudsakliga förÀndringar:

  • Journal-protokollet har dokumenterats och kan anvĂ€ndas i klienter istĂ€llet för syslog-protokollet för lokal leverans av loggar. Journal-protokollet har funnits ganska lĂ€nge och anvĂ€nds redan i vissa klientbibliotek, Ă€ndĂ„ har dess officiella stöd först nu annonserats.
  • I userdb och nss-systemd sĂ€kerstĂ€lls lĂ€sning av extra anvĂ€ndardefinitioner som finns i katalogerna /etc/userdb/, /run/userdb/, /run/host/userdb/ och /usr/lib/userdb/, angivna i JSON-format. Det noteras att denna möjlighet kommer att tillhandahĂ„lla en extra mekanism för att skapa anvĂ€ndare i systemet, vilket ger full integrering med NSS och /etc/shadow. Stödet för JSON-formatet för anvĂ€ndar-/gruppposter kommer ocksĂ„ att möjliggöra koppling av olika resurskontrollparametrar och andra instĂ€llningar som kĂ€nns igen av pam_systemd och systemd-logind.
  • I nss-systemd sĂ€kerstĂ€lls syntesen av anvĂ€ndar-/gruppposter i /etc/shadow med hjĂ€lp av hashade lösenord frĂ„n systemd-homed.
  • En mekanism har implementerats som förenklar organiseringen av uppdateringar genom anvĂ€ndning av skivpartitioner som byter plats med varandra (en partition Ă€r aktiv, medan en annan Ă€r reserv — uppdateringen kopieras till den reserverade partitionen, som sedan blir aktiv). Om bildfilen innehĂ„ller tvĂ„ rot- eller /usr-partitioner, och udev inte har identifierat nĂ€rvaron av parametern 'root=' eller hanterar bildfiler angivna via alternativet "--image" i verktygen systemd-nspawn och systemd-dissect, kan den partition som ska anvĂ€ndas för boot berĂ€knas genom att jĂ€mföra GPT-etiketter (det underförstĂ„s att GPT-etiketten nĂ€mner versionsnumret för innehĂ„llet i partitionen och systemd kommer att vĂ€lja den partition med de nyaste Ă€ndringarna).
  • I filerna för tjĂ€nster har en instĂ€llning för BPFProgram lagts till, vilket möjliggör laddning av BPF-program i kĂ€rnan och hantering av dem i samband med specifika systemd-tjĂ€nster.
  • I systemd-fstab-generator och systemd-repart har möjligheten att ladda frĂ„n diskar lagts till dĂ€r det endast finns en /usr-partition och ingen rotnivĂ„-partition (rotnivĂ„-partitionen kommer att genereras av verktyget systemd-repart vid första uppstarten).
  • I systemd-nspawn har alternativet "—private-user-chown" ersatts med en mer universell variant "—private-user-ownership", som kan acceptera vĂ€rdena "chown" som motsvarighet till "—private-user-chown", "off" för att stĂ€nga av den gamla instĂ€llningen, "map" för mappning av anvĂ€ndaridentifierare i monterade filsystem och "auto" för att vĂ€lja "map" vid tillgĂ„ng till den nödvĂ€ndiga funktionaliteten i kĂ€rnan (5.12+) eller falla tillbaka pĂ„ rekursiv anrop av "chown" i annat fall. Genom mappning kan man koppla filer av en anvĂ€ndare pĂ„ ett monterat frĂ€mmande partition till en annan anvĂ€ndare i det aktuella systemet, vilket möjliggör enklare delning av filer mellan olika anvĂ€ndare. I mekanismen för flyttbara hemkataloger systemd-homed möjliggör mappning för anvĂ€ndare att flytta sina hemkataloger till externa lagringsenheter och anvĂ€nda dem pĂ„ olika datorer dĂ€r anvĂ€ndaridentifierare kan skilja sig.
  • I systemd-nspawn kan alternativet "—private-user" nu anvĂ€nda vĂ€rdet "identity" för direkt Ă„terspegling av anvĂ€ndaridentifierare vid konfiguration av namnrymden (user namespace), det vill sĂ€ga UID 0 och UID 1 i containern kommer att Ă„terspeglas som UID 0 och UID 1 pĂ„ vĂ€rdsidan, för att minska attackvektorer (containern fĂ„r processens rĂ€ttigheter endast i sin egen namnrymd).
  • I systemd-nspawn har alternativet "—bind-user" lagts till för att vidarebefordra en anvĂ€ndarpost i containern som finns i vĂ€rdmiljön (hemkatalogen monteras i containern, en post för anvĂ€ndare/grupp lĂ€ggs till och UID mappas mellan containern och vĂ€rdmiljön).
  • I systemd-ask-password och systemd-sysusers har stöd lagts till för att begĂ€ra installerade lösenord (passwd.hashed-password.<user> och passwd.plaintext-password.<user>) med hjĂ€lp av den nya mekanismen för sĂ€ker överföring av kĂ€nslig data som introducerades i systemd 247, vilken anvĂ€nder mellanliggande filer i en separat katalog. Som standard accepteras referenser frĂ„n processen med PID1, som till exempel fĂ„r dem frĂ„n en containerhanterare, vilket möjliggör konfiguration av anvĂ€ndarens lösenord vid första uppstarten.
  • I systemd-firstboot har stöd lagts till för att anvĂ€nda mekanismen för sĂ€ker överföring av kĂ€nslig information för att begĂ€ra olika systemparametrar, vilket kan anvĂ€ndas för att initiera systeminstĂ€llningar vid första uppstarten av en containerbild som saknar nödvĂ€ndiga instĂ€llningar i katalogen /etc.
  • I processen med PID 1 under uppstarten visas bĂ„de namnet och beskrivningen av enheten samtidigt. Utmatningen kan Ă€ndras via parametern "StatusUnitFormat=combined" i system.conf eller genom kĂ€rnkonsolens kommandoradsalternativ "systemd.status-unit-format=combined".
  • Verktygen systemd-machine-id-setup och systemd-repart har fĂ„tt alternativet "—image" för att överföra en fil med maskinens identifierare till diskbilder eller för att öka storleken pĂ„ diskbilden.
  • I konfigurationsfilen för partitioner som anvĂ€nds av verktyget systemd-repart har parametern MakeDirectories lagts till, vilken kan anvĂ€ndas för att skapa godtyckliga kataloger i det skapade filsystemet innan det Ă„terspeglas i partitionstabellen (till exempel för att skapa kataloger för monteringspunkter i rotpartitionen, sĂ„ att partitionen kan monteras i skrivskyddat lĂ€ge direkt). För att hantera GPT-flaggor i de skapade partitionerna har motsvarande parametrar Flags, ReadOnly och NoAuto lagts till. I parametern CopyBlocks har vĂ€rdet "auto" implementerats för att automatiskt vĂ€lja den aktuella startpartitionen som kĂ€lla vid kopiering av block (till exempel nĂ€r man behöver flytta sin egen rotpartition till en ny enhet).
  • I GPT har flaggan "grow-file-system" implementerats, vilket Ă€r liknande x-systemd.growfs-monteringsalternativet och möjliggör automatisk utvidgning av filsystemets storlek upp till grĂ€nserna för blockenheten, om filsystemets storlek Ă€r mindre Ă€n partitionen. Flaggan Ă€r tillĂ€mplig pĂ„ Ext3-, XFS- och Btrfs-filsystem och kan anvĂ€ndas med automatiskt identifierade partitioner. Som standard Ă€r flaggan aktiverad för skrivbara partitioner som automatiskt skapas via systemd-repart. För att konfigurera flaggan i systemd-repart har alternativet GrowFileSystem lagts till.
  • I filen /etc/os-release har stöd för nya variabler IMAGE_VERSION och IMAGE_ID implementerats för att definiera versionen och identifieraren för atomĂ€rt uppdaterade bilder. Specifikatorerna %M och %A föreslĂ„s för att infoga angivna vĂ€rden i olika kommandon.
  • Parametern "--extension" har lagts till i verktyget portablectl för att aktivera bĂ€rbara systemavbildningar (till exempel kan dessa anvĂ€ndas för att distribuera bilder med ytterligare tjĂ€nster som integreras i root-partitionen).
  • I verktyget systemd-coredump har extraktion av ELF-informationen build-id sĂ€kerstĂ€llts vid skapandet av core-dump av en process, vilket kan vara anvĂ€ndbart för att bestĂ€mma vilket paket den kraschade processen tillhör, om namn- och versionsinformationen för deb- eller rpm-paket har inbĂ€ddats i ELF-filer.
  • En ny enhetsdatabas för FireWire-enheter (IEEE 1394) har lagts till i udev.
  • Tre Ă€ndringar som bryter bakĂ„tkompatibiliteten har lagts till i udev:s namnvalschema för nĂ€tverksgrĂ€nssnitt "net_id": ogiltiga tecken i grĂ€nssnittsnamn ersĂ€tts nu med "_"; namnen pĂ„ PCI hotplug-plats för s390-system behandlas som hexadecimala siffror; anvĂ€ndning av upp till 65535 inbyggda PCI-enheter tillĂ„ts (tidigare blockerades nummer över 16383).
  • I systemd-resolved har domĂ€nen "home.arpa" lagts till i listan över NTA (Negative Trust Anchors), rekommenderad för lokala hemnĂ€tverk, men inte anvĂ€nd i DNSSEC.
  • I parametern CPUAffinity har specifikatorerna "%" tolkats.
  • Parametern ManageForeignRoutingPolicyRules har lagts till i ".network"-filer, vilket kan anvĂ€ndas för att utesluta hantering av externa routingpolicyer i systemd-networkd.
  • Parametern RequiredFamilyForOnline har lagts till i ".network"-filer för att bestĂ€mma nĂ€rvaro av en IPv4- eller IPv6-adress som en indikation pĂ„ att nĂ€tverksgrĂ€nssnittet Ă€r i tillstĂ„ndet "online". I networkctl har visningen av tillstĂ„ndet "online" sĂ€kerstĂ€llts för varje lĂ€nk.
  • I filerna ".network" har parametern OutgoingInterface lagts till för att definiera utgĂ„ende grĂ€nssnitt vid konfiguration av nĂ€tverksbroar.
  • I filerna ".network" har parametern Group lagts till, vilket gör det möjligt att konfigurera en Multipath-grupp för poster i sektionen "[NextHop]".
  • I systemd-network-wait-online har alternativen "-4" och "-6" lagts till för att begrĂ€nsa vĂ€ntan pĂ„ anslutning endast till IPv4 eller IPv6.
  • I DHCP-serverns instĂ€llningar har parametern RelayTarget lagts till, vilket sĂ€tter servern i DHCP Relay-lĂ€get. För ytterligare konfiguration av DHCP-relĂ€et föreslĂ„s alternativen RelayAgentCircuitId och RelayAgentRemoteId.
  • I DHCP-servern har parametern ServerAddress lagts till, vilket gör det möjligt att uttryckligen stĂ€lla in IP-adressen för servern (annars vĂ€ljs adressen automatiskt).
  • I DHCP-servern har sektionen [DHCPServerStaticLease] implementerats, vilket möjliggör konfiguration av statiska adresstilldelningar (DHCP leases) genom att ange fasta IP-bindningar till MAC-adresser och vice versa.
  • I instĂ€llningen RestrictAddressFamilies har stöd för vĂ€rdet "none" implementerats, vilket innebĂ€r att tjĂ€nsten inte kommer att ha tillgĂ„ng till sockets frĂ„n nĂ„got adressfamilj.
  • I filerna ".network" i sektionerna [Address], [DHCPv6PrefixDelegation] och [IPv6Prefix] har stöd för att konfigurera RouteMetric införts, vilket gör det möjligt att ange en metrisk för prefikset som skapas för den angivna adressen.
  • I nss-myhostname och systemd-resolved har syntes av DNS-poster med adresser för vĂ€rdar med det speciella namnet "_outbound" sĂ€kerstĂ€llts, för vilka alltid en lokal IP ges, vald i enlighet med de standardrutter som anvĂ€nds för utgĂ„ende anslutningar.
  • I filerna .network har en aktiv standardinstĂ€llning för RoutesToNTP lagts till i sektionen "[DHCPv4]", vilket föreskriver att en separat rutt ska lĂ€ggas till genom det aktuella nĂ€tverksgrĂ€nssnittet för Ă„tkomst till NTP-serverns adress, erhĂ„llen för detta grĂ€nssnitt genom DHCP (pĂ„ samma sĂ€tt som DNS-instĂ€llningen möjliggör att sĂ€kerstĂ€lla att trafiken till NTP-servern dirigeras genom det grĂ€nssnitt dĂ€r denna adress har erhĂ„llits).
  • InstĂ€llningarna SocketBindAllow och SocketBindDeny har lagts till för att hantera Ă„tkomsten till sockets som Ă€r bundna till den aktuella tjĂ€nsten.
  • För enhetsfiler har en villkorlig instĂ€llning ConditionFirmware implementerats, vilket möjliggör att skapa kontroller som bedömer firmware-funktioner, sĂ„som funktion pĂ„ UEFI-system och device.tree, samt kontrollera kompatibiliteten med vissa egenskaper hos device-tree.
  • Alternativ för ConditionOSRelease har implementerats för att kontrollera fĂ€lten i filen /etc/os-release. Vid bestĂ€mning av villkoren för att kontrollera fĂ€ltvĂ€rden Ă€r operatorer som "=", "!=", "<", "=" och ">" tillĂ„tna.
  • I verktyget hostnamectl har kommandon av typen "get-xyz" och "set-xyz" tagits bort prefikserna "get" och "set", till exempel kan kommandot "hostnamectl get-hostname" och "hostnamectl set-hostname" nu skrivas som "hostnamectl hostname", dĂ€r vĂ€rdesĂ€ttningen bestĂ€ms genom att ange ett ytterligare argument ("hostnamectl hostname value"). Stödet för de gamla kommandona har bevarats för kompatibilitet.
  • I verktyget systemd-detect-virt och instĂ€llningen ConditionVirtualization sĂ€kerstĂ€lls korrekt identifiering av Amazon EC2-miljöer.
  • InstĂ€llningen LogLevelMax i unit-filer tillĂ€mpas nu inte bara pĂ„ loggmeddelanden som skapas av tjĂ€nsten, utan ocksĂ„ pĂ„ meddelanden frĂ„n process PID 1 som nĂ€mner tjĂ€nsten.
  • Möjlighet att inkludera SBAT-data (UEFI Secure Boot Advanced Targeting) i systemd-boot EFI PE-filer har tillhandahĂ„llits.
  • I /etc/crypttab har nya alternativ "headless" och "password-echo" implementerats – det första gör att alla operationer som rör interaktiva lösenords- och PIN-frĂ„gor kan hoppas över, medan det andra möjliggör instĂ€llning av hur lösenordsinmatningen visas (inga tecken, visa tecknen successivt och visa stjĂ€rnor). I systemd-ask-password har alternativet "--echo" lagts till för liknande syften.
  • I systemd-cryptenroll, systemd-cryptsetup och systemd-homed har stödet för upplĂ„sning av LUKS2-krypterade partitioner med FIDO2-token utvidgats. Nya alternativ "--fido2-with-user-presence", "--fido2-with-user-verification" och "--fido2-with-client-pin" har lagts till för att hantera kontroll av anvĂ€ndarens fysiska nĂ€rvaro, verifiering och behovet av att ange en PIN-kod.
  • I systemd-journal-gatewayd har alternativen "--user", "--system", "--merge" och "--file" lagts till, liknande de samma alternativen i journalctl.
  • Förutom direkta beroenden mellan enheter, som definieras genom parametrarna OnFailure och Slice, har stöd för implicita omvĂ€nda beroenden OnFailureOf och SliceOf lagts till, vilka kan vara anvĂ€ndbara, till exempel för att definiera alla enheter som ingĂ„r i en slice.
  • Nya typer av beroenden mellan enheter har lagts till: OnSuccess och OnSuccessOf (motsatsen till OnFailure, som aktiveras vid framgĂ„ngsrik avslutning); PropagatesStopTo och StopPropagatedFrom (möjliggör spridning av stopp hĂ€ndelse frĂ„n en enhet till en annan); Upholds och UpheldBy (ett alternativ till Restart).
  • I verktyget systemd-ask-password har alternativet «—emoji» lagts till för att styra visningen av lĂ„ssymbolen (🔐) i lösenordsinmatningsfĂ€ltet.
  • Dokumentation om strukturen av kĂ€lltexttrĂ€den för systemd har lagts till.
  • För enheterna har egenskapen MemoryAvailable lagts till, som visar hur mycket minne som Ă„terstĂ„r för enheten innan den nĂ„r grĂ€nsen som stĂ€llts in via parametrarna MemoryMax, MemoryHigh eller MemoryAvailable.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster