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

Հինգ ամիս մշակումից հետո ներկայացվում է համակարգի մենեջերի systemd 251 թողարկումը:

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

  • Համակարգի պահանջներն ավելացել են. Linux միջուկի նվազագույն աջակցվող տարբերակը 3.13-ից ավելացվել է 4.15-ի: Գործարկման համար պահանջվում է CLOCK_BOOTTIME ժամաչափ: Կառուցելու համար ձեզ հարկավոր է կոմպիլյատոր, որն աջակցում է C11 ստանդարտին և GNU ընդլայնումներին (C89 ստանդարտը շարունակում է օգտագործվել վերնագրի ֆայլերի համար):
  • Ավելացրել է փորձարարական systemd-sysupdate թարմացումները ավտոմատ կերպով հայտնաբերելու, ներբեռնելու և տեղադրելու համար՝ օգտագործելով միջնապատերը, ֆայլերը կամ գրացուցակները փոխարինելու ատոմային մեխանիզմը (օգտագործվում են երկու անկախ բաժիններ/ֆայլեր/տեղեկատուներ, որոնցից մեկը պարունակում է ընթացիկ աշխատանքային ռեսուրսը, իսկ մյուսը տեղադրում է): հաջորդ թարմացումը, որից հետո բաժինները/ֆայլերը/տեղեկատուները փոխանակվում են):
  • Ներկայացրեց նոր ներքին ընդհանուր գրադարան libsystemd-core- .so, որը տեղադրված է /usr/lib/systemd/system գրացուցակում և համապատասխանում է գոյություն ունեցող libsystemd-shared- գրադարանին: .այսպես. Օգտագործելով libsystemd-core- համօգտագործվող գրադարանը .so-ն թույլ է տալիս նվազեցնել տեղադրման ընդհանուր չափը՝ կրկնակի օգտագործելով երկուական կոդը: Տարբերակի համարը կարող է սահմանվել «shared-lib-tag» պարամետրի միջոցով meson build համակարգում և թույլ է տալիս բաշխումներին առաքել այս գրադարանների մի քանի տարբերակները միաժամանակ:
  • Իրականացվել է $MONITOR_SERVICE_RESULT, $MONITOR_EXIT_CODE, $MONITOR_EXIT_STATUS, $MONITOR_INVOCATION_ID և $MONITOR_UNIT շրջակա միջավայրի փոփոխականների փոխանցումը վերահսկվող միավորի մասին տեղեկություններից OnFailure/OnSuccess մշակողներին:
  • Միավորների համար ներդրվել է ExtensionDirectories պարամետրը, որը կարող է օգտագործվել համակարգային ընդլայնման բաղադրիչների բեռնումը սովորական գրացուցակներից, այլ ոչ թե սկավառակի պատկերներից կազմակերպելու համար: Համակարգի ընդլայնման գրացուցակի բովանդակությունը ծածկված է OverlayFS-ի միջոցով և օգտագործվում է /usr/ և /opt/ դիրեկտորիաների հիերարխիան ընդլայնելու և գործարկման ժամանակ լրացուցիչ ֆայլեր ավելացնելու համար, նույնիսկ եթե նշված գրացուցակները տեղադրված են միայն կարդալու համար: «portablectl attach --extension=» հրամանը նաև աջակցություն է ավելացրել գրացուցակ նշելու համար:
  • Համակարգում հիշողության բացակայության պատճառով systemd-oomd մշակողի կողմից հարկադիր դադարեցված միավորների համար «oom-kill» հատկանիշը փոխանցվում է և հարկադիր դադարեցումների թիվը արտացոլվում է «user.oomd_ooms» հատկանիշում:
  • Միավորների համար ավելացվել են նոր ուղու՝ %y/%Y ցուցիչներ, որոնք արտացոլում են դեպի միավորի նորմալացված ուղին (խորհրդանշական հղումների ընդլայնմամբ): Ավելացված են նաև %q ցուցիչները՝ PRETTY_HOSTNAME արժեքը փոխարինելու համար և %d՝ CREDENTIALS_DIRECTORY փոխարինման համար:
  • Սովորական օգտատիրոջ կողմից «--user» դրոշի օգտագործմամբ գործարկվող ոչ արտոնյալ ծառայություններում փոփոխություններ են տեղի ունենում RootDirectory, MountAPIVFS, ExtensionDirectories, *Cabilities*, ProtectHome, *Directory, TemporaryFileSystem, PrivateTmp, PrivateDevices, IPPathNetVepate, PrivateTmp, PrivateDevices. րդ , PrivateUsers, ProtectClock թույլատրվում են, ProtectKernelTunables, ProtectKernelModules, ProtectKernelLogs և MountFlags: Այս հատկությունը հասանելի է միայն այն դեպքում, երբ համակարգում միացված են օգտվողների անունների տարածքները:
  • LoadCredential պարամետրը թույլ է տալիս գրացուցակի անունը նշել որպես փաստարկ, որի դեպքում փորձ է արվում բեռնել հավատարմագրերը նշված գրացուցակի բոլոր ֆայլերից:
  • Systemctl-ում «—timestamp» պարամետրում հնարավոր եղավ նշել «unix» դրոշը՝ ժամանակը դարաշրջանային ձևաչափով ցուցադրելու համար (վայրկյանների թիվը 1թ. հունվարի 1970-ից):
  • «Systemctl կարգավիճակը» իրականացնում է «old-kernel» դրոշը, որը ցուցադրվում է, եթե նիստում բեռնված միջուկն ունի ավելի հին տարբերակ, քան համակարգում առկա հիմնական միջուկը: Նաև ավելացվել է «unmerged-usr» դրոշ՝ որոշելու համար, որ /bin/ և /sbin/ դիրեկտորիաների բովանդակությունը չի ձևավորվում /usr-ի symlinks-ի միջոցով:
  • PID 1 գործընթացով սկսված գեներատորների համար տրամադրվում են շրջակա միջավայրի նոր փոփոխականներ՝ $SYSTEMD_SCOPE (սկսել համակարգից կամ օգտվողի ծառայությունից), $SYSTEMD_IN_INITRD (սկսել initrd-ից կամ հյուրընկալող միջավայրից), $SYSTEMD_FIRST_BOOT (առաջին բեռնման ցուցիչ), $SYSTEMD_IN_INITRD (սկսել initrd-ից կամ հյուրընկալող միջավայրից), $SYSTEMD_FIRST_BOOT (առաջին բեռնման ցուցիչ), $SYSTEMD_VIRTUALIZATION: վիրտուալացման առկայությունը կամ գործարկումը կոնտեյներով ) և $SYSTEMD_ARCHITECTURE (ճարտարապետություն, որի համար ստեղծվել է միջուկը):
  • PID 1 մշակիչն իրականացնում է համակարգի հավատարմագրման պարամետրերը QEMU fw_cfg ինտերֆեյսից բեռնելու հնարավորությունը կամ միջուկի հրամանի տողում նշելով systemd.set_credential պարամետրը: LoadCredential հրահանգը ապահովում է հավատարմագրերի ավտոմատ որոնում /etc/credstore/, /run/credstore/ և /usr/lib/credstore/ գրացուցակներում, եթե հարաբերական ուղին նշված է որպես արգումենտ: Նմանատիպ վարքագիծը վերաբերում է LoadCredentialEncrypted հրահանգին, որը լրացուցիչ ստուգում է /etc/credstore.encrypted/, /run/credstore.encrypted/ և /usr/lib/credstore.encrypted/ գրացուցակները:
  • JSON ձևաչափով արտահանման հնարավորությունը կայունացվել է systemd-journald-ում: «journalctl --list-boots» և «bootctl list» հրամաններն այժմ աջակցում են JSON ձևաչափով ելքը («--json» դրոշը):
  • udev-ում ավելացվել են hwdb տվյալների բազաներով նոր ֆայլեր, որոնք պարունակում են տեղեկատվություն շարժական սարքերի (PDA-ներ, հաշվիչներ և այլն) և ձայն և վիդեո ստեղծման համար օգտագործվող սարքերի մասին (DJ կոնսուլներ, ստեղնաշարեր):
  • Նոր տարբերակներ «--prioritized-subsystem» ավելացվել են udevadm-ին՝ հետևյալ համակարգերի առաջնահերթությունը սահմանելու համար (օգտագործվում է systemd-udev-trigger.service-ում՝ նախ բլոկ սարքերը և TPM-ները մշակելու համար), «-type=all», «-initialized» -match» և «--initialized-nomatch»՝ նախաստորագրված կամ չնախապատրաստված սարքեր ընտրելու համար, «udevadm info -tree»՝ ցույց տալու օբյեկտների ծառը /sys/ հիերարխիայում: udevadm-ը նաև ավելացնում է նոր «սպասել» և «կողպեք» հրամանները՝ սպասելու սարքի մուտքի հայտնվելուն տվյալների բազայում և արգելափակելու բլոկային սարքը՝ բաժանման աղյուսակը ֆորմատավորելիս կամ գրելիս:
  • Սարքերի /dev/disk/by-diskseq/ սարքերին ավելացվել է խորհրդանշական հղումների նոր հավաքածու բլոկային սարքերը սերիական համարով նույնականացնելու համար («diskseq»):
  • Ավելացվեց «Firmware» պարամետրի աջակցությունը [Match] բաժնում գտնվող ֆայլերը .link՝ սարքը ըստ տողի որոնվածի նկարագրությանը համապատասխանեցնելու համար:
  • Systemd-networkd-ում, unicast երթուղիների համար, որոնք կազմաձևված են [Route] բաժնի միջոցով, շրջանակի արժեքը լռելյայն փոխվել է «link»՝ «ip route» հրամանի վարքագծին համապատասխանելու համար: Isolated=true|false պարամետրն ավելացվել է [Bridge] բաժնում՝ միջուկում ցանցային կամուրջների համանուն հատկանիշը կարգավորելու համար: [Tunnel] բաժնում ավելացվել է Արտաքին պարամետրը, որպեսզի թունելի տեսակը դրվի արտաքին (մետատվյալների հավաքագրման ռեժիմ): [DHCPServer] բաժնում BootServerName, BootServerAddress և BootFilename պարամետրերն ավելացվել են՝ PXE ռեժիմում բեռնման ժամանակ DHCP սերվերի կողմից ուղարկված սերվերի հասցեն, սերվերի անունը և բեռնման ֆայլի անունը կարգավորելու համար: [Network] բաժնում L2TP պարամետրը հանվել է, որի փոխարեն .netdev ֆայլերում կարող եք օգտագործել նոր Local կարգավորումը L2TP ինտերֆեյսի հետ կապված:
  • Ավելացվեց նոր միավոր «systemd-networkd-wait-online@» .service», որը կարող է օգտագործվել՝ սպասելու կոնկրետ ցանցային ինտերֆեյսի հայտնվելուն:
  • Այժմ հնարավոր է օգտագործել .netdev ֆայլերը վիրտուալ WLAN սարքեր ստեղծելու համար, որոնք կարող են կազմաձևվել [WLAN] բաժնում:
  • .link/.network ֆայլերում [Match] բաժինն իրականացնում է Kind պարամետրը՝ ըստ սարքի տեսակի («bond», «bridge», «gre», «tun», «veth»):
  • Systemd-resolved-ը գործարկվել է ավելի վաղ բեռնման փուլում, ներառյալ գործարկումը initrd-ից, եթե systemd-resolved առկա է initrd պատկերում:
  • systemd-cryptenroll-ը ավելացնում է --fido2-credential-algorithm տարբերակը՝ հավատարմագրերի գաղտնագրման ալգորիթմը ընտրելու համար և --tpm2-with-pin տարբերակը՝ TPM-ի միջոցով միջնորմ բացելու ժամանակ PIN մուտքագրումը կառավարելու համար: Նմանատիպ tpm2-pin տարբերակ ավելացվել է /etc/crypttab-ին: Սարքերը TPM-ի միջոցով ապակողպելիս կարգավորումները գաղտնագրվում են՝ գաղտնագրման բանալիների գաղտնալսումից պաշտպանվելու համար:
  • systemd-timesyncd-ն ավելացնում է D-Bus API՝ IPC-ի միջոցով NTP սերվերից տեղեկատվություն դինամիկ կերպով առբերելու համար:
  • Գույնի ելքի անհրաժեշտությունը որոշելու համար բոլոր հրամաններն իրականացնում են COLORTERM միջավայրի փոփոխականի ստուգում՝ ի լրումն նախկինում ստուգված NO_COLOR, SYSTEMD_COLORS և TERM:
  • Meson build համակարգը իրականացնում է install_tag տարբերակը՝ ընտրովի հավաքելու և անհրաժեշտ բաղադրիչների տեղադրման համար՝ pam, nss, devel (pkg-config), systemd-boot, libsystemd, libudev: Ավելացվեց build-ի տարբերակ լռելյայն սեղմում` systemd-journald-ի և systemd-coredump-ի համար սեղմման ալգորիթմ ընտրելու համար:
  • Ավելացվեց փորձնական «reboot-for-bitlocker» պարամետրը sd-boot-ին loader.conf-ում՝ Microsoft Windows-ը BitLocker TPM-ով բեռնելու համար:

Source: opennet.ru

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