systemd համակարգի մենեջերի թողարկում 250

Հինգ ամիս մշակումից հետո ներկայացվեց Systemd 250 համակարգի մենեջերի թողարկումը: Նոր թողարկումը ներկայացրեց հավատարմագրերը գաղտնագրված ձևով պահելու հնարավորություն, իրականացրեց ավտոմատ հայտնաբերված GPT բաժանմունքների ստուգում թվային ստորագրության միջոցով, բարելավեց տեղեկատվությունը ուշացումների պատճառների մասին, երբ մեկնարկային ծառայություններ և ավելացված տարբերակներ՝ որոշակի ֆայլային համակարգերի և ցանցային ինտերֆեյսների ծառայությունների հասանելիությունը սահմանափակելու համար, տրամադրվում է dm-integrity մոդուլի միջոցով բաժանման ամբողջականության մոնիտորինգի աջակցություն, և ավելացվում է sd-boot ավտոմատ թարմացման աջակցություն:

Խոշոր փոփոխություններ.

  • Ավելացվել է գաղտնագրված և վավերացված հավատարմագրերի աջակցություն, որը կարող է օգտակար լինել զգայուն նյութերի ապահով պահպանման համար, ինչպիսիք են SSL ստեղները և մուտքի գաղտնաբառերը: Հավատարմագրերի վերծանումը կատարվում է միայն անհրաժեշտության դեպքում և տեղական տեղադրման կամ սարքավորումների հետ կապված: Տվյալները կոդավորված են ավտոմատ կերպով՝ օգտագործելով սիմետրիկ գաղտնագրման ալգորիթմներ, որոնց բանալին կարող է տեղակայվել ֆայլային համակարգում, TPM2 չիպի մեջ կամ օգտագործելով համակցված սխեմա: Երբ ծառայությունը սկսվում է, հավատարմագրերը ավտոմատ կերպով վերծանվում են և հասանելի են դառնում ծառայությանը իր սովորական ձևով: Կոդավորված հավատարմագրերի հետ աշխատելու համար ավելացվել է «systemd-creds» ծրագիրը, և ծառայությունների համար առաջարկվել են LoadCredentialEncrypted և SetCredentialEncrypted կարգավորումները:
  • sd-stub-ը՝ EFI գործարկիչը, որը թույլ է տալիս EFI որոնվածին բեռնել Linux միջուկը, այժմ աջակցում է միջուկի բեռնումը LINUX_EFI_INITRD_MEDIA_GUID EFI արձանագրության միջոցով: Նաև sd-stub-ում ավելացվել է հավատարմագրերը և sysext ֆայլերը cpio արխիվում փաթեթավորելու և այս արխիվը միջուկին initrd-ի հետ միասին տեղափոխելու հնարավորությունը (լրացուցիչ ֆայլերը տեղադրվում են /.extra/ գրացուցակում): Այս հատկությունը թույլ է տալիս օգտագործել ստուգելի անփոփոխ initrd միջավայր, որը լրացվում է sysexts-ով և գաղտնագրված նույնականացման տվյալներով:
  • Discoverable Partitions-ի մասնագրերը զգալիորեն ընդլայնվել են՝ տրամադրելով գործիքներ GPT-ի (GUID Partition Tables) միջոցով համակարգի միջնորմների նույնականացման, տեղադրման և ակտիվացման համար: Համեմատած նախորդ թողարկումների հետ՝ հստակեցումն այժմ աջակցում է արմատային միջնորմը և /usr բաժինը ճարտարապետությունների մեծ մասի համար, ներառյալ այն հարթակները, որոնք չեն օգտագործում UEFI:

    Discoverable Partitions-ը նաև աջակցություն է ավելացնում այն ​​միջնորմների համար, որոնց ամբողջականությունը ստուգվում է dm-verity մոդուլի կողմից՝ օգտագործելով PKCS#7 թվային ստորագրությունները՝ հեշտացնելով ամբողջությամբ վավերացված սկավառակի պատկերների ստեղծումը: Ստուգման աջակցությունը ինտեգրված է տարբեր կոմունալ ծրագրերում, որոնք շահարկում են սկավառակի պատկերները, ներառյալ systemd-nspawn, systemd-sysext, systemd-dissect, RootImage ծառայություններ, systemd-tmpfiles և systemd-sysusers:

  • Միավորների համար, որոնք երկար ժամանակ են պահանջում սկսելու կամ դադարեցնելու համար, բացի անիմացիոն առաջընթացի տող ցուցադրելուց, հնարավոր է ցուցադրել կարգավիճակի մասին տեղեկատվություն, որը թույլ է տալիս հասկանալ, թե կոնկրետ ինչ է կատարվում ծառայության հետ տվյալ պահին և որ ծառայությունն է համակարգի կառավարիչը: ներկայումս սպասում է ավարտին:
  • Ավելացվեց DefaultOOMScoreAdjust պարամետրը /etc/systemd/system.conf և /etc/systemd/user.conf, ինչը թույլ է տալիս կարգավորել OOM-killer շեմը ցածր հիշողության համար, որը կիրառելի է համակարգի և օգտվողների համար սկսվող գործընթացների համար: Լռելյայնորեն, համակարգի ծառայությունների կշիռն ավելի բարձր է, քան օգտվողների ծառայությունները, այսինքն. Հիշողության անբավարարության դեպքում օգտվողների ծառայությունների դադարեցման հավանականությունը ավելի մեծ է, քան համակարգայինը:
  • Ավելացվեց RestrictFileSystems պարամետրը, որը թույլ է տալիս սահմանափակել ծառայությունների հասանելիությունը որոշակի տեսակի ֆայլային համակարգեր: Հասանելի ֆայլային համակարգերի տեսակները դիտելու համար կարող եք օգտագործել «systemd-analyze filesystems» հրամանը: Համեմատաբար ներդրվել է RestrictNetworkInterfaces տարբերակը, որը թույլ է տալիս սահմանափակել մուտքը որոշակի ցանցային միջերեսներ: Իրականացումը հիմնված է BPF LSM մոդուլի վրա, որը սահմանափակում է մի խումբ գործընթացների մուտքը միջուկի օբյեկտներ:
  • Ավելացվեց նոր /etc/integritytab կազմաձևման ֆայլ և systemd-integritysetup ծրագիրը, որը կարգավորում է dm-integrity մոդուլը՝ վերահսկելու տվյալների ամբողջականությունը հատվածի մակարդակում, օրինակ՝ երաշխավորելու կոդավորված տվյալների անփոփոխությունը (Authenticated Encryption, ապահովում է, որ տվյալների բլոկն ունի չի փոփոխվել շրջանաձև ճանապարհով): /etc/integritytab ֆայլի ձևաչափը նման է /etc/crypttab և /etc/veritytab ֆայլերին, բացառությամբ, որ dm-crypt-ի և dm-verity-ի փոխարեն օգտագործվում է dm-integrity:
  • Systemd-boot-update.service-ի նոր միավոր ֆայլ է ավելացվել, երբ ակտիվացվի և տեղադրվի sd-boot bootloader, systemd-ը ավտոմատ կերպով կթարմացնի sd-boot bootloader-ի տարբերակը՝ միշտ թարմացնելով bootloader կոդը: Ինքն sd-boot-ն այժմ կառուցված է լռելյայն՝ SBAT (UEFI Secure Boot Advanced Targeting) մեխանիզմի աջակցությամբ, որը լուծում է UEFI Secure Boot-ի համար վկայագրի չեղարկման հետ կապված խնդիրները: Բացի այդ, sd-boot-ը հնարավորություն է տալիս վերլուծել Microsoft Windows-ի բեռնման կարգավորումները՝ Windows-ով բեռնման բաժանմունքների անունները ճիշտ գեներացնելու և Windows-ի տարբերակը ցուցադրելու համար:

    sd-boot-ը նաև հնարավորություն է տալիս սահմանել գունային սխեման կառուցման ժամանակ: Բեռնման գործընթացում ավելացվել է էկրանի լուծաչափը փոխելու աջակցություն՝ սեղմելով «r» ստեղնը: Ավելացվեց «f» թեժ ստեղնը՝ որոնվածի կազմաձևման ինտերֆեյսին անցնելու համար: Ավելացրել է ռեժիմ՝ համակարգը ավտոմատ կերպով բեռնելու համար, որը համապատասխանում է վերջին բեռնման ժամանակ ընտրված ցանկի տարրին: Ավելացվեց ESP (EFI System Partition) բաժնում գտնվող /EFI/systemd/drivers/ գրացուցակում ավտոմատ կերպով բեռնելու EFI դրայվերները:

  • Ներառված է նոր միավոր ֆայլ factory-reset.target, որը մշակվում է systemd-logind-ում վերաբեռնման, անջատման, կասեցման և ձմեռման գործողությունների նման ձևով և օգտագործվում է գործարանային վերակայում կատարելու համար մշակիչներ ստեղծելու համար:
  • Systemd-ով լուծված գործընթացը այժմ ստեղծում է լրացուցիչ լսողական վարդակ 127.0.0.54-ում՝ ի լրումն 127.0.0.53-ի: 127.0.0.54 հասցեով ժամանած հարցումները միշտ վերահղվում են դեպի վերընթաց DNS սերվեր և չեն մշակվում տեղում:
  • Տրամադրվում է libgcrypt-ի փոխարեն OpenSSL գրադարանով systemd-importd և systemd-լուծված կառուցելու հնարավորություն:
  • Ավելացվել է նախնական աջակցություն LoongArch ճարտարապետության համար, որն օգտագործվում է Loongson պրոցեսորներում:
  • systemd-gpt-auto-generator-ն ապահովում է LUKS2 ենթահամակարգի կողմից կոդավորված համակարգի կողմից սահմանված փոխանակման միջնորմների ավտոմատ կազմաձևման հնարավորություն:
  • GPT պատկերի վերլուծման կոդը, որն օգտագործվում է systemd-nspawn, systemd-dissect և նմանատիպ կոմունալ ծրագրերում, կիրառում է այլ ճարտարապետությունների համար պատկերներ վերծանելու հնարավորությունը, ինչը թույլ է տալիս systemd-nspawn-ն օգտագործել այլ ճարտարապետությունների էմուլյատորների վրա պատկերներ գործարկելու համար:
  • Սկավառակի պատկերները ստուգելիս systemd-dissect-ն այժմ ցուցադրում է միջնորմի նպատակի մասին տեղեկատվություն, օրինակ՝ UEFI-ի միջոցով բեռնաթափման կամ կոնտեյներով աշխատելու հարմարությունը:
  • System-extension.d/ ֆայլերին ավելացվել է «SYSEXT_SCOPE» դաշտը, որը թույլ է տալիս նշել համակարգի պատկերի շրջանակը՝ «initrd», «system» կամ «portable»:
  • «PORTABLE_PREFIXES» դաշտն ավելացվել է os-release ֆայլին, որը կարող է օգտագործվել շարժական պատկերներում՝ որոշելու աջակցվող միավոր ֆայլի նախածանցները:
  • systemd-logind-ը ներկայացնում է նոր կարգավորումներ HandlePowerKeyLongPress, HandleRebootKeyLongPress, HandleSuspendKeyLongPress և HandleHibernateKeyLongPress, որոնք կարող են օգտագործվել որոշելու համար, թե ինչ է տեղի ունենում, երբ որոշ ստեղներ պահվում են ավելի քան 5 վայրկյան (օրինակ՝ կարգավորել ռեժիմը, որը կարող է արագ անցնել կոճակը: , և երբ պահվում է, այն կքնի):
  • Միավորների համար ներդրված են StartupAllowedCPUs և StartupAllowedMemoryNodes կարգավորումները, որոնք տարբերվում են նմանատիպ կարգավորումներից առանց Startup նախածանցի նրանով, որ դրանք կիրառվում են միայն բեռնման և անջատման փուլում, ինչը թույլ է տալիս սահմանել ռեսուրսների այլ սահմանափակումներ բեռնման ժամանակ:
  • Ավելացվեց [Վիճակը|Հաստատեք][Հիշողություն|CPU|IO]Ճնշման ստուգումներ, որոնք թույլ են տալիս բաց թողնել միավորի ակտիվացումը կամ ձախողվել, եթե PSI մեխանիզմը հայտնաբերում է մեծ բեռ հիշողության, պրոցեսորի և I/O համակարգում:
  • Inode-ի լռելյայն առավելագույն սահմանաչափը /dev բաժանման համար ավելացվել է 64k-ից մինչև 1M, իսկ /tmp բաժնի համար 400k-ից մինչև 1M:
  • Ծառայությունների համար առաջարկվել է ExecSearchPath պարամետր, որը հնարավորություն է տալիս փոխել գործարկվող ֆայլերի որոնման ուղին, որոնք գործարկվել են ExecStart-ի նման պարամետրերով:
  • Ավելացվեց RuntimeRandomizedExtraSec պարամետրը, որը թույլ է տալիս պատահական շեղումներ ներմուծել RuntimeMaxSec-ի ժամանակի վերջում, ինչը սահմանափակում է միավորի կատարման ժամանակը:
  • Ընդլայնվել է RuntimeDirectory, StateDirectory, CacheDirectory և LogsDirectory կարգավորումների շարահյուսությունը, որոնցում նշելով լրացուցիչ արժեք, որն առանձնացված է երկու կետով, այժմ կարող եք կազմակերպել սիմվոլիկ հղումի ստեղծումը տվյալ գրացուցակին՝ մի քանի ուղիներով մուտքը կազմակերպելու համար:
  • Ծառայությունների համար TTYRows-ի և TTYColumns-ի կարգավորումներն առաջարկվում են TTY սարքում տողերի և սյունակների քանակը սահմանելու համար:
  • Ավելացվեց ExitType պարամետրը, որը թույլ է տալիս փոխել ծառայության ավարտը որոշելու տրամաբանությունը: Լռելյայնորեն, systemd-ը վերահսկում է միայն հիմնական գործընթացի մահը, բայց եթե ExitType=cgroup-ը սահմանված է, ապա համակարգի կառավարիչը կսպասի cgroup-ի վերջին գործընթացի ավարտին:
  • systemd-cryptsetup-ի TPM2/FIDO2/PKCS11 աջակցության իրականացումն այժմ նաև ստեղծվել է որպես cryptsetup plugin, որը թույլ է տալիս օգտագործել սովորական cryptsetup հրամանը գաղտնագրված բաժանումը բացելու համար:
  • TPM2 կարգավորիչը systemd-cryptsetup/systemd-cryptsetup-ում ավելացնում է աջակցություն RSA հիմնական բանալիներին, բացի ECC ստեղներից՝ բարելավելու համատեղելիությունը ոչ ECC չիպերի հետ:
  • Token-timeout տարբերակն ավելացվել է /etc/crypttab-ին, որը թույլ է տալիս սահմանել առավելագույն ժամանակը PKCS#11/FIDO2 նշանի միացմանը սպասելու համար, որից հետո ձեզ կառաջարկվի մուտքագրել գաղտնաբառը կամ վերականգնման բանալի:
  • systemd-timesyncd-ն իրականացնում է SaveIntervalSec պարամետրը, որը թույլ է տալիս պարբերաբար պահպանել համակարգի ընթացիկ ժամանակը սկավառակի վրա, օրինակ՝ առանց RTC համակարգերում միատոն ժամացույցի ներդրման համար:
  • Systemd-analyze հավելվածին ավելացվել են ընտրանքներ՝ «--image» և «--root»՝ տվյալ պատկերի կամ արմատային գրացուցակի ներսում միավորի ֆայլերը ստուգելու համար, «--recursive-errors»՝ սխալի դեպքում կախված միավորները հաշվի առնելու համար: հայտնաբերված է, «--անցանց»՝ սկավառակի վրա պահված ֆայլերը առանձին ստուգելու համար, «—json»՝ JSON ձևաչափով ելքի համար, «—quiet»՝ անկարևոր հաղորդագրություններն անջատելու համար, «—profile»՝ շարժական պրոֆիլին միացնելու համար։ Ավելացվեց նաև inspect-elf հրամանը՝ ELF ձևաչափով հիմնական ֆայլերը վերլուծելու համար և տվյալ միավորի անվանումով միավորի ֆայլերը ստուգելու հնարավորությունը՝ անկախ նրանից, թե արդյոք այս անունը համընկնում է ֆայլի անվան հետ:
  • systemd-networkd-ն ընդլայնել է աջակցությունը Controller Area Network (CAN) ավտոբուսի համար: Ավելացվել են կարգավորումներ՝ CAN ռեժիմները կառավարելու համար՝ Loopback, OneShot, PresumeAck և ClassicDataLengthCode: Ավելացվեց TimeQuantaNSec, PropagationSegment, PhaseBufferSegment1, PhaseBufferSegment2, SyncJumpWidth, DataTimeQuantaNSec, DataPropagationSegment, DataPhaseBufferSegment1, DataPhaseBufferSegment2 և DataSyncJumpWidth ֆայլերի համաժամեցման ընտրանքները ANT. ինտերֆեյս.
  • Systemd-networkd-ը ավելացրել է Label տարբերակ DHCPv4 հաճախորդի համար, որը թույլ է տալիս կարգավորել հասցեի պիտակը, որն օգտագործվում է IPv4 հասցեները կարգավորելիս:
  • systemd-udevd-ը «ethtool»-ի համար ապահովում է հատուկ «max» արժեքների աջակցություն, որոնք սահմանում են բուֆերի չափը սարքաշարի կողմից աջակցվող առավելագույն արժեքին:
  • Systemd-udevd-ի .link ֆայլերում այժմ կարող եք կարգավորել տարբեր պարամետրեր՝ ցանցային ադապտերները համատեղելու և ապարատային մշակիչները միացնելու համար (բեռնաթափում):
  • systemd-networkd-ը լռելյայն առաջարկում է նոր .network ֆայլեր. 80-container-vb.network՝ սահմանելու ցանցային կամուրջները, որոնք ստեղծվել են systemd-nspawn-ի գործարկման ժամանակ «--network-bridge» կամ «--network-zone» տարբերակներով; 80-6rd-tunnel.network՝ թունելներ սահմանելու համար, որոնք ավտոմատ կերպով ստեղծվում են 6RD տարբերակով DHCP պատասխան ստանալու ժամանակ:
  • Systemd-networkd-ը և systemd-udevd-ն ավելացրել են IP-ի փոխանցման աջակցություն InfiniBand ինտերֆեյսների միջոցով, որի համար «[IPoIB]» բաժինը ավելացվել է systemd.netdev ֆայլերին, և «ipoib» արժեքի մշակումն իրականացվել է Kind-ում: կարգավորումը.
  • systemd-networkd-ն ապահովում է երթուղու ավտոմատ կազմաձևում AllowedIPs պարամետրում նշված հասցեների համար, որոնք կարող են կազմաձևվել RouteTable և RouteMetric պարամետրերի միջոցով [WireGuard] և [WireGuardPeer] բաժիններում:
  • systemd-networkd-ն ապահովում է չփոփոխվող MAC հասցեների ավտոմատ գեներացիա batadv և bridge ինտերֆեյսների համար: Այս վարքագիծն անջատելու համար կարող եք նշել MACAddress=none .netdev ֆայլերում:
  • WakeOnLanPassword-ի կարգավորումն ավելացվել է .link ֆայլերին «[Link]» բաժնում՝ գաղտնաբառը որոշելու համար, երբ WoL-ն աշխատում է «SecureOn» ռեժիմում:
  • .network ֆայլերի «[CAKE]» բաժնում ավելացվել են AutoRateIngress, CompensationMode, FlowIsolationMode, NAT, MPUBytes, PriorityQueueingPreset, FirewallMark, Wash, SplitGSO և UseRawPacketSize կարգավորումները .network ֆայլերի «[CAKE]» բաժնում՝ CAKE ցանցի կառավարման պարամետրերը սահմանելու համար: .
  • Ավելացրել է IgnoreCarrierLoss պարամետրը .network ֆայլերի «[Network]» բաժնում, որը թույլ է տալիս որոշել, թե որքան ժամանակ պետք է սպասել՝ արձագանքելով օպերատորի ազդանշանի կորստին:
  • Systemd-nspawn, homectl, machinectl և systemd-run ընդլայնել են «--setenv» պարամետրի շարահյուսությունը. եթե նշված է միայն փոփոխականի անունը (առանց «="), ապա արժեքը կվերցվի համապատասխան միջավայրի փոփոխականից ( Օրինակ՝ «--setenv=FOO» նշելիս արժեքը կվերցվի $FOO միջավայրի փոփոխականից և կօգտագործվի կոնտեյների մեջ դրված համանուն միջավայրի փոփոխականում):
  • systemd-nspawn-ն ավելացրել է «--suppress-sync» տարբերակը՝ անջատելու համար sync()/fsync()/fdatasync() համակարգի զանգերը կոնտեյներ ստեղծելիս (օգտակար է, երբ արագությունն առաջնահերթ է, իսկ կառուցման արտեֆակտները խափանման դեպքում՝ ոչ: կարևոր է, քանի որ դրանք կարող են վերստեղծվել ցանկացած պահի):
  • Ավելացվել է նոր hwdb տվյալների բազա, որը ներառում է տարբեր տեսակի ազդանշանային անալիզատորներ (մուլտիմետրեր, պրոտոկոլային անալիզատորներ, օսցիլոսկոպներ և այլն)։ hwdb-ում տեսախցիկների մասին տեղեկատվությունը ընդլայնվել է տեսախցիկի տեսակի (կանոնավոր կամ ինֆրակարմիր) և ոսպնյակի (առջևի կամ հետևի) տեղակայման մասին տեղեկատվությամբ։
  • Xen-ում օգտագործվող ցանցային սարքերի համար միացված է ցանցային ինտերֆեյսի անփոփոխ անունների ստեղծում:
  • Հիմնական ֆայլերի վերլուծությունը systemd-coredump կոմունալ ծրագրի կողմից, որը հիմնված է libdw/libelf գրադարանների վրա, այժմ իրականացվում է առանձին գործընթացով՝ մեկուսացված ավազատուփ միջավայրում:
  • systemd-importd-ն աջակցություն է ավելացրել $SYSTEMD_IMPORT_BTRFS_SUBVOL, $SYSTEMD_IMPORT_BTRFS_QUOTA, $SYSTEMD_IMPORT_SYNC շրջակա միջավայրի փոփոխականների համար, որոնցով կարող եք անջատել Btrfs ենթաբաժինների ստեղծումը, ինչպես նաև կարգավորել համաժամացման և համաժամացման քվոտաները:
  • Systemd-journald-ում, ֆայլային համակարգերում, որոնք աջակցում են պատճենահանման-գրելու ռեժիմը, COW ռեժիմը կրկին միացված է արխիվացված ամսագրերի համար, ինչը թույլ է տալիս դրանք սեղմել Btrfs-ի միջոցով:
  • systemd-journald-ն իրականացնում է նույնական դաշտերի կրկնօրինակում մեկ հաղորդագրության մեջ, որն իրականացվում է այն փուլում, նախքան հաղորդագրությունը ամսագրում տեղադրելը:
  • «--ցուցադրել» տարբերակն ավելացվել է անջատման հրամանին՝ պլանավորված անջատումը ցուցադրելու համար:

Source: opennet.ru

Добавить комментарий