ఐదు నెలల అభివృద్ధి తర్వాత, సిస్టమ్ మేనేజర్ 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 బైనరీ కోడ్ని తిరిగి ఉపయోగించడం ద్వారా మొత్తం ఇన్స్టాలేషన్ పరిమాణాన్ని తగ్గించడానికి మిమ్మల్ని అనుమతిస్తుంది. మీసన్ బిల్డ్ సిస్టమ్లోని 'షేర్డ్-లిబ్-ట్యాగ్' పరామితి ద్వారా సంస్కరణ సంఖ్యను పేర్కొనవచ్చు మరియు ఈ లైబ్రరీల యొక్క బహుళ వెర్షన్లను ఒకే సమయంలో రవాణా చేయడానికి పంపిణీలను అనుమతిస్తుంది.
- పర్యవేక్షించబడిన యూనిట్ గురించిన సమాచారం నుండి OnFailure/OnSuccess హ్యాండ్లర్లకు పర్యావరణ వేరియబుల్స్ $MONITOR_SERVICE_RESULT, $MONITOR_EXIT_CODE, $MONITOR_EXIT_STATUS, $MONITOR_INVOCATION_ID మరియు $MONITOR_UNIT యొక్క అమలు చేయబడిన బదిలీ.
- యూనిట్ల కోసం, ఎక్స్టెన్షన్డైరెక్టరీస్ సెట్టింగ్ అమలు చేయబడింది, ఇది డిస్క్ ఇమేజ్ల కంటే సాధారణ డైరెక్టరీల నుండి సిస్టమ్ ఎక్స్టెన్షన్ కాంపోనెంట్ల లోడ్ను నిర్వహించడానికి ఉపయోగించబడుతుంది. సిస్టమ్ ఎక్స్టెన్షన్ డైరెక్టరీలోని కంటెంట్లు ఓవర్లేఎఫ్ఎస్ని ఉపయోగించి అతివ్యాప్తి చెందుతాయి మరియు /usr/ మరియు /opt/ డైరెక్టరీల సోపానక్రమాన్ని విస్తరించడానికి మరియు రన్టైమ్లో అదనపు ఫైల్లను జోడించడానికి ఉపయోగించబడతాయి, చెప్పబడిన డైరెక్టరీలు చదవడానికి మాత్రమే మౌంట్ చేయబడినప్పటికీ. 'portablectl attach --extension=' కమాండ్ డైరెక్టరీని పేర్కొనడానికి మద్దతును కూడా జోడించింది.
- సిస్టమ్లో మెమరీ లేకపోవడం వల్ల systemd-oomd హ్యాండ్లర్ చేత బలవంతంగా ముగించబడిన యూనిట్ల కోసం, 'oom-kill' లక్షణం ప్రసారం చేయబడుతుంది మరియు బలవంతంగా ముగింపుల సంఖ్య 'user.oomd_ooms' లక్షణంలో ప్రతిబింబిస్తుంది.
- యూనిట్ల కోసం, కొత్త పాత్ స్పెసిఫైయర్లు %y/%Y జోడించబడ్డాయి, ఇది యూనిట్కు సాధారణీకరించిన మార్గాన్ని ప్రతిబింబిస్తుంది (సింబాలిక్ లింక్ల విస్తరణతో). PRETTY_HOSTNAME విలువను భర్తీ చేయడానికి %q నిర్దేశకాలు మరియు CREDENTIALS_DIRECTORY ప్రత్యామ్నాయం కోసం %d కూడా జోడించబడ్డాయి.
- "--యూజర్" ఫ్లాగ్ని ఉపయోగించి సాధారణ వినియోగదారు ప్రారంభించిన ప్రత్యేకించబడని సేవల్లో, రూట్డైరెక్టరీ, MountAPIVFS, ExtensionDirectories, *సామర్థ్యాలు*, ProtectHome, *Directory, TemporaryFileSystem, PrivateTmp, PrivateDevices, PrivateNetwork, PrivateNetwork, PrivateNetwork,PrivateNetwork,PrivateNetwork , ప్రైవేట్ యూజర్లు, ProtectClock అనుమతించబడతాయి , ProtectKernelTunables, ProtectKernelModules, ProtectKernelLogs మరియు MountFlags. సిస్టమ్లో యూజర్ నేమ్స్పేస్లు ప్రారంభించబడినప్పుడు మాత్రమే ఈ ఫీచర్ అందుబాటులో ఉంటుంది.
- లోడ్క్రెడెన్షియల్ సెట్టింగ్ డైరెక్టరీ పేరును ఆర్గ్యుమెంట్గా పేర్కొనడానికి అనుమతిస్తుంది, ఈ సందర్భంలో పేర్కొన్న డైరెక్టరీలోని అన్ని ఫైల్ల నుండి ఆధారాలను లోడ్ చేయడానికి ప్రయత్నం చేయబడుతుంది.
- systemctlలో, “—టైమ్స్టాంప్” పరామితిలో, ఎపోచల్ ఫార్మాట్లో (జనవరి 1, 1970 నుండి సెకన్ల సంఖ్య) సమయాన్ని ప్రదర్శించడానికి “unix” ఫ్లాగ్ను పేర్కొనడం సాధ్యమైంది.
- "systemctl స్థితి" "పాత-కెర్నల్" ఫ్లాగ్ను అమలు చేస్తుంది, ఇది సెషన్లో లోడ్ చేయబడిన కెర్నల్ సిస్టమ్లో అందుబాటులో ఉన్న బేస్ కెర్నల్ కంటే పాత సంస్కరణ సంఖ్యను కలిగి ఉంటే చూపబడుతుంది. /bin/ మరియు /sbin/ డైరెక్టరీల కంటెంట్లు /usrకి సిమ్లింక్ల ద్వారా ఏర్పడలేదని నిర్ధారించడానికి "unmerged-usr" ఫ్లాగ్ని కూడా జోడించారు.
- PID 1 ప్రక్రియ ద్వారా ప్రారంభించబడిన జనరేటర్ల కోసం, కొత్త ఎన్విరాన్మెంట్ వేరియబుల్స్ అందించబడతాయి: $SYSTEMD_SCOPE (సిస్టమ్ లేదా వినియోగదారు సేవ నుండి ప్రారంభం), $SYSTEMD_IN_INITRD (initrd లేదా హోస్ట్ ఎన్విరాన్మెంట్ నుండి ప్రారంభం), $SYSTEMD_FIRST_BOOT (మొదటి బూట్ సూచిక), $SYSTEMD_ATION వర్చువలైజేషన్ ఉనికి లేదా కంటైనర్లో లాంచ్ ) మరియు $SYSTEMD_ARCHITECTURE (కెర్నల్ నిర్మించబడిన ఆర్కిటెక్చర్).
- PID 1 హ్యాండ్లర్ QEMU fw_cfg ఇంటర్ఫేస్ నుండి సిస్టమ్ క్రెడెన్షియల్ పారామితులను లోడ్ చేయగల సామర్థ్యాన్ని అమలు చేస్తుంది లేదా కెర్నల్ కమాండ్ లైన్లో systemd.set_credential పారామీటర్ను పేర్కొనడం ద్వారా. లోడ్ క్రెడెన్షియల్ డైరెక్టివ్ సాపేక్ష మార్గాన్ని ఆర్గ్యుమెంట్గా పేర్కొన్నట్లయితే /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 జాబితా" కమాండ్లు ఇప్పుడు JSON ఆకృతిలో అవుట్పుట్కు మద్దతు ఇస్తాయి ("--json" ఫ్లాగ్).
- పోర్టబుల్ పరికరాలు (PDAలు, కాలిక్యులేటర్లు మొదలైనవి) మరియు సౌండ్ మరియు వీడియో (DJ కన్సోల్లు, కీప్యాడ్లు) సృష్టించడానికి ఉపయోగించే పరికరాల గురించి సమాచారాన్ని కలిగి ఉన్న hwdb డేటాబేస్లతో కూడిన కొత్త ఫైల్లు udevకి జోడించబడ్డాయి.
- కింది సిస్టమ్ల ప్రాధాన్యతను సెట్ చేయడానికి “--prioritized-subsystem” అనే కొత్త ఎంపికలు udevadmకి జోడించబడ్డాయి (మొదట బ్లాక్ పరికరాలు మరియు TPMలను ప్రాసెస్ చేయడానికి systemd-udev-trigger.serviceలో ఉపయోగించబడుతుంది), “-type=all”, “-initialized -match” మరియు "--initialized-nomatch" ప్రారంభించబడిన లేదా ప్రారంభించబడని పరికరాలను ఎంచుకోవడానికి, "udevadm info -tree" /sys/ సోపానక్రమంలోని వస్తువుల ట్రీని చూపడానికి. udevadm కొత్త "వేచి" మరియు "లాక్" ఆదేశాలను జతచేస్తుంది, డేటాబేస్లో పరికరం నమోదు కోసం వేచి ఉండండి మరియు విభజన పట్టికను ఫార్మాట్ చేస్తున్నప్పుడు లేదా వ్రాసేటప్పుడు బ్లాక్ పరికరాన్ని లాక్ చేస్తుంది.
- పరికరాలకు కొత్త సింబాలిక్ లింక్ల సెట్ జోడించబడింది /dev/disk/by-diskseq/ క్రమ సంఖ్య ("diskseq") ద్వారా బ్లాక్ పరికరాలను గుర్తించడానికి.
- ఫర్మ్వేర్ వివరణతో లైన్ ద్వారా పరికరాన్ని సరిపోల్చడం కోసం [మ్యాచ్] విభాగంలోని .link ఫైల్లకు “ఫర్మ్వేర్” పరామితికి మద్దతు జోడించబడింది.
- systemd-networkdలో, [రూట్] విభాగం ద్వారా కాన్ఫిగర్ చేయబడిన యూనికాస్ట్ రూట్ల కోసం, స్కోప్ విలువ "ip రూట్" కమాండ్ ప్రవర్తనకు సరిపోయేలా డిఫాల్ట్గా "లింక్"కి మార్చబడింది. కెర్నల్లోని నెట్వర్క్ బ్రిడ్జ్ల కోసం అదే పేరు యొక్క లక్షణాన్ని కాన్ఫిగర్ చేయడానికి Isolated=true|false పరామితి [బ్రిడ్జ్] విభాగానికి జోడించబడింది. [టన్నెల్] విభాగంలో, టన్నెల్ రకాన్ని బాహ్య (మెటాడేటా సేకరణ మోడ్)కి సెట్ చేయడానికి బాహ్య పరామితి జోడించబడింది. [DHCPServer] విభాగంలో, PXE మోడ్లో బూట్ చేస్తున్నప్పుడు DHCP సర్వర్ పంపిన సర్వర్ చిరునామా, సర్వర్ పేరు మరియు బూట్ ఫైల్ పేరును కాన్ఫిగర్ చేయడానికి BootServerName, BootServerAddress మరియు BootFilename పారామితులు జోడించబడ్డాయి. [నెట్వర్క్] విభాగంలో, L2TP పరామితి తీసివేయబడింది, దానికి బదులుగా .netdev ఫైల్లలో మీరు L2TP ఇంటర్ఫేస్తో కనెక్షన్లో కొత్త స్థానిక సెట్టింగ్ని ఉపయోగించవచ్చు.
- కొత్త యూనిట్ "systemd-networkd-wait-online@" జోడించబడింది .service", ఇది నిర్దిష్ట నెట్వర్క్ ఇంటర్ఫేస్ వచ్చే వరకు వేచి ఉండటానికి ఉపయోగించబడుతుంది.
- వర్చువల్ WLAN పరికరాలను సృష్టించడానికి .netdev ఫైల్లను ఉపయోగించడం ఇప్పుడు సాధ్యమవుతుంది, వీటిని [WLAN] విభాగంలో కాన్ఫిగర్ చేయవచ్చు.
- .link/.network ఫైల్లలో, పరికర రకం ("బంధం", "వంతెన", "gre", "tun", "veth") ద్వారా సరిపోలిక కోసం [Match] విభాగం కైండ్ పరామితిని అమలు చేస్తుంది.
- Systemd-resolved అనేది మునుపటి బూట్ దశలో ప్రారంభించబడింది, initrd ఇమేజ్లో systemd-resolved ఉంటే initrd నుండి ప్రారంభించడం కూడా ఉంటుంది.
- systemd-cryptenroll క్రెడెన్షియల్ ఎన్క్రిప్షన్ అల్గారిథమ్ని ఎంచుకోవడానికి --fido2-credential-algorithm ఎంపికను మరియు TPM ఉపయోగించి విభజనను అన్లాక్ చేస్తున్నప్పుడు PIN ఎంట్రీని నియంత్రించడానికి --tpm2-with-pin ఎంపికను జోడిస్తుంది. ఇదే విధమైన tpm2-pin ఎంపిక /etc/crypttabకి జోడించబడింది. TPM ద్వారా పరికరాలను అన్లాక్ చేస్తున్నప్పుడు, ఎన్క్రిప్షన్ కీల అంతరాయానికి వ్యతిరేకంగా రక్షించడానికి సెట్టింగ్లు గుప్తీకరించబడతాయి.
- systemd-timesyncd IPC ద్వారా NTP సర్వర్ నుండి సమాచారాన్ని డైనమిక్గా తిరిగి పొందడం కోసం D-Bus APIని జోడిస్తుంది.
- రంగు అవుట్పుట్ అవసరాన్ని గుర్తించడానికి, అన్ని ఆదేశాలు గతంలో తనిఖీ చేసిన NO_COLOR, SYSTEMD_COLORS మరియు TERMకి అదనంగా COLORTERM ఎన్విరాన్మెంట్ వేరియబుల్ కోసం తనిఖీని అమలు చేస్తాయి.
- మీసన్ బిల్డ్ సిస్టమ్ ఎంపిక చేసిన అసెంబ్లీ మరియు అవసరమైన భాగాల ఇన్స్టాలేషన్ కోసం install_tag ఎంపికను అమలు చేస్తుంది: pam, nss, devel (pkg-config), systemd-boot, libsystemd, libudev. systemd-journald మరియు systemd-coredump కోసం కంప్రెషన్ అల్గారిథమ్ని ఎంచుకోవడానికి బిల్డ్ ఆప్షన్ డిఫాల్ట్-కంప్రెషన్ జోడించబడింది.
- BitLocker TPMతో Microsoft Windowsని బూట్ చేయడానికి loader.confలో sd-bootకి ప్రయోగాత్మక "రీబూట్-ఫర్-బిట్లాకర్" సెట్టింగ్ జోడించబడింది.
మూలం: opennet.ru