UKI (Unified Kernel Image) سپورٽ سان سسٽمڊ سسٽم مئنيجر 252 جو رليز

پنجن مهينن جي ترقي کان پوء، سسٽم مئنيجر سسٽم ڊي 252 کي جاري ڪيو ويو، نئين ورزن ۾ اهم تبديلي هڪ جديد بوٽ پروسيس لاء سپورٽ جي انضمام هئي، جيڪا توهان کي صرف ڪنييل ۽ بوٽ لوڊر جي تصديق ڪرڻ جي اجازت ڏئي ٿي، پر اجزاء پڻ. بنيادي سسٽم ماحول جو ڊجيٽل دستخط استعمال ڪندي.

تجويز ڪيل طريقي ۾ شامل آهي يونيفائيڊ ڪرنل تصوير UKI (Unified Kernel Image) لوڊ ڪرڻ وقت، جيڪو UEFI (UEFI بوٽ اسٽب) مان ڪرنل لوڊ ڪرڻ لاءِ هڪ هينڊلر کي گڏ ڪري ٿو، هڪ لينڪس ڪرنل تصوير ۽ initrd سسٽم ماحول کي ميموري ۾ لوڊ ڪيو ويو، استعمال ڪيو ويو روٽ FS کي چڙهڻ کان اڳ اسٽيج تي شروعاتي شروعات لاءِ. UKI تصوير پي اي فارميٽ ۾ هڪ واحد قابل عمل فائل جي طور تي پيڪيج ڪئي وئي آهي، جيڪا روايتي بوٽ لوڊرز استعمال ڪندي لوڊ ڪري سگهجي ٿي يا سڌو UEFI فرم ویئر کان سڏجي ٿي. جڏهن UEFI کان سڏيو وڃي ٿو، اهو ممڪن آهي ته ڊجيٽل دستخط جي سالميت ۽ اعتبار جي تصديق نه رڳو ڪنييل، پر انٽيرڊ جي مواد پڻ.

TPM PCR (Trusted Platform Module Platform Configuration Register) جي پيرا ميٽرن کي ڳڻڻ لاءِ رجسٽرز جيڪي سالميت کي مانيٽر ڪرڻ لاءِ استعمال ڪيا ويندا آهن ۽ UKI تصوير جي ڊجيٽل دستخط پيدا ڪرڻ لاءِ، هڪ نئين يوٽيلٽي سسٽم ڊي ماپ شامل آهي. دستخط ۾ استعمال ٿيل پبلڪ ڪي ۽ ان سان گڏ پي سي آر جي معلومات سڌو سنئون UKI بوٽ تصوير ۾ داخل ٿي سگھي ٿي (ڪي ۽ دستخط '.pcrsig' ۽ '.pcrkey' فيلڊز ۾ PE فائل ۾ محفوظ ٿيل آھن) ۽ ان مان ڪڍيا ويا آھن خارجي يا اندروني افاديت.

خاص طور تي، systemd-cryptsetup، systemd-cryptenroll ۽ systemd-creds يوٽيلٽيز کي هن معلومات کي استعمال ڪرڻ لاءِ ترتيب ڏنو ويو آهي، جنهن سان توهان پڪ ڪري سگهو ٿا ته انڪرپٽ ٿيل ڊسڪ ورهاڱي جا پابند آهن ڊجيٽل طور تي سائن ٿيل ڪرنل (هن صورت ۾، انڪريپٽ ٿيل ورهاڱي تائين رسائي صرف مهيا ڪئي وئي آهي جيڪڏهن UKI تصوير TPM ۾ واقع پيرا ميٽرز جي بنياد تي ڊجيٽل دستخط ذريعي تصديق ڪئي آهي).

اضافي طور تي، systemd-pcrphase يوٽيلٽي شامل ڪئي وئي آهي، جيڪا توهان کي اجازت ڏئي ٿي ته مختلف بوٽ اسٽيجز جي بائنڊنگ کي ڪنٽرول ڪرڻ لاءِ پيرا ميٽرز تي جيڪي cryptoprocessors جي ميموري ۾ واقع آهن جيڪي TPM 2.0 وضاحتن کي سپورٽ ڪن ٿا (مثال طور، توهان ڪري سگهو ٿا LUKS2 ورهاڱي جي ڊيڪرپشن ڪيچ صرف ان ۾ دستياب آهي. initrd تصوير ۽ ان تائين رسائي کي بلاڪ ڪريو بعد جي مرحلن تي ڊائون لوڊ).

ڪجھ ٻيون تبديليون:

  • انهي ڳالهه کي يقيني بڻائي ٿو ته ڊفالٽ لوڪل C.UTF-8 آهي جيستائين سيٽنگن ۾ هڪ مختلف لوڪل بيان نه ڪيو وڃي.
  • اهو هاڻي ممڪن آهي ته پهرين بوٽ دوران مڪمل سروس پري سيٽ آپريشن ("systemctl preset") انجام ڏيو. بوٽ وقت تي اڳوڻن سيٽن کي فعال ڪرڻ لاء "-Dfirst-boot-full-preset" اختيار سان تعمير ڪرڻ جي ضرورت آهي، پر مستقبل جي رليز ۾ ڊفالٽ طور تي فعال ٿيڻ جي رٿابندي ڪئي وئي آهي.
  • يوزر مئنيجمينٽ يونٽس ۾ هڪ سي پي يو ريسورس ڪنٽرولر شامل آهي، جنهن اهو يقيني بڻائڻ ممڪن ڪيو ته سي پي يو ويٽ سيٽنگون سڀني سلائس يونٽن تي لاڳو ٿين ٿيون جيڪي سسٽم کي حصن ۾ ورهائڻ لاءِ استعمال ڪيون وينديون آهن (app.slice, background.slice, session.slice) وچ ۾ وسيلن کي الڳ ڪرڻ لاءِ. مختلف صارف خدمتون، سي پي يو وسيلن جي مقابلي ۾. CPUWeight مناسب وسيلن جي فراهمي واري موڊ کي چالو ڪرڻ لاءِ ”بيڪار“ قدر کي پڻ سپورٽ ڪري ٿو.
  • عارضي ("عارضي") يونٽن ۾ ۽ سسٽم ڊي-ريپارٽ يوٽيلٽي ۾، /etc/systemd/system/name.d/ ڊاريڪٽري ۾ ڊراپ-ان فائلون ٺاهي ترتيب ڏيڻ جي اجازت ڏني وئي آهي.
  • سسٽم جي تصويرن لاءِ، سپورٽ ختم ٿيل جھنڊو مقرر ڪيو ويو آھي، ھن حقيقت کي طئي ڪندي نئين پيراميٽر جي قدر جي بنياد تي "SUPPORT_END=" /etc/os-release فائل ۾.
  • شامل ڪيو ويو "ConditionCredential =" ۽ "AssertCredential =" سيٽنگون، جيڪي استعمال ڪري سگھجن ٿيون يونٽن کي نظرانداز ڪرڻ يا خراب ڪرڻ لاءِ جيڪڏهن ڪجهه سندون سسٽم ۾ موجود نه آهن.
  • شامل ڪيو ويو "DefaultSmackProcessLabel=" ۽ "DefaultDeviceTimeoutSec=" سيٽنگون system.conf ۽ user.conf ۾ ڊفالٽ SMACK سيڪيورٽي ليول ۽ يونٽ ايڪٽيويشن جي وقت جي وضاحت ڪرڻ لاءِ.
  • "ConditionFirmware=" ۽ "AssertFirmware=" سيٽنگون ۾، انفرادي SMBIOS فيلڊ کي بيان ڪرڻ جي صلاحيت شامل ڪئي وئي آهي، مثال طور، يونٽ کي لانچ ڪرڻ لاء صرف ان صورت ۾ جڏهن /sys/class/dmi/id/board_name فيلڊ ۾ قدر شامل آهي "ڪسٽم بورڊ"، توهان وضاحت ڪري سگھو ٿا "ConditionFirmware=smbios" -field(board_name = "ڪسٽم بورڊ")".
  • شروعاتي عمل جي دوران (PID 1)، SMBIOS فيلڊز مان سندون درآمد ڪرڻ جي صلاحيت (قسم 11، "OEM وينڊرز اسٽرنگ") کي شامل ڪيو ويو آھي انھن جي تعريف کان علاوه qemu_fwcfg ذريعي، جيڪو مجازي مشينن کي سند جي فراهمي کي آسان بڻائي ٿو ۽ ختم ڪري ٿو. ٽئين پارٽي جي اوزارن جي ضرورت آھي جھڙوڪ ڪلائوڊ -init ۽ ignition.
  • شٽ ڊائون دوران، ورچوئل فائل سسٽم (proc، sys) کي ان مائونٽ ڪرڻ جي منطق کي تبديل ڪيو ويو آهي ۽ فائل سسٽم جي ان ماؤنٽنگ کي بلاڪ ڪرڻ واري عمل بابت معلومات لاگ ۾ محفوظ ڪئي وئي آهي.
  • سسٽم ڪال فلٽر (SystemCallFilter) ڊفالٽ ذريعي riscv_flush_icache سسٽم ڪال تائين رسائي جي اجازت ڏئي ٿو.
  • ايس ڊي بوٽ بوٽ لوڊر مخلوط موڊ ۾ بوٽ ڪرڻ جي صلاحيت شامل ڪري ٿو، جنهن ۾ 64-bit لينڪس ڪنييل 32-bit UEFI فرمائيندڙ مان هلندو آهي. ESP (EFI سسٽم ورهاڱي) ۾ مليل فائلن مان خودڪار طريقي سان SecureBoot ڪيز لاڳو ڪرڻ جي تجرباتي صلاحيت شامل ڪئي وئي.
  • bootctl جي يوٽيلٽي ۾ نوان آپشن شامل ڪيا ويا آهن: “—all-architectures” بائنريز کي انسٽال ڪرڻ لاءِ سڀني سپورٽ EFI آرڪيٽيڪچرز لاءِ، “—root=” ۽ “—image=” ڊاريڪٽري يا ڊسڪ اميج سان ڪم ڪرڻ لاءِ، “-install-source =" انسٽاليشن لاءِ ماخذ جي وضاحت لاءِ، "-efi-boot-option-description=" بوٽ انٽري جا نالا ڪنٽرول ڪرڻ لاءِ.
  • 'list-automounts' ڪمانڊ شامل ڪيو ويو آهي سسٽم سي ٽي ايل يوٽيلٽي کي خودڪار طور تي نصب ڪيل ڊائريڪٽرن جي فهرست ۽ "--image=" اختيار کي مخصوص ڊسڪ تصوير جي حوالي سان ڪم ڪرڻ لاء. شامل ڪيو ويو "--state=" ۽ "--type=" اختيارن کي 'شو' ۽ 'اسٽيٽس' ڪمن ۾.
  • systemd-networkd شامل ڪيل آپشنز “TCPCongestionControlAlgorithm=” TCP ڪنجيشن ڪنٽرول الگورٿم کي چونڊڻ لاءِ، “KeepFileDescriptor=” TUN/TAP انٽرفيسز جي فائل ڊسپيڪٽر کي محفوظ ڪرڻ لاءِ، “NetLabel=” NetLabels کي سيٽ ڪرڻ لاءِ، “RapidCommit=” DCPvH جي ترتيب کي تيز ڪرڻ لاءِ (RFC 6). "RouteTable =" پيٽرولر کي اجازت ڏئي ٿو ته رستن جي جدولن جا نالا بيان ڪن.
  • systemd-nspawn "--bind=" ۽ "--overlay=" اختيارن ۾ لاڳاپيل فائل رستا استعمال ڪرڻ جي اجازت ڏئي ٿو. "--bind=" اختيار ۾ 'rootidmap' پيرا ميٽر لاءِ سپورٽ شامل ڪئي وئي ڪنٽينر ۾ روٽ يوزر آئي ڊي کي ميزبان پاسي تي نصب ڪيل ڊاريڪٽري جي مالڪ کي پابند ڪرڻ لاءِ.
  • سسٽم ڊي حل ٿيل OpenSSL استعمال ڪري ٿو ان جي انڪرپشن پس منظر طور ڊفالٽ طور (gnutls سپورٽ هڪ اختيار جي طور تي برقرار رکيو ويو آهي). اڻڄاتل DNSSEC الگورتھم کي ھاڻي غير محفوظ سمجھيو ويندو آھي ھڪڙي غلطي (SERVFAIL) موٽڻ بدران.
  • systemd-sysusers، systemd-tmpfiles ۽ systemd-sysctl هڪ معتبر اسٽوريج ميڪانيزم ذريعي سيٽنگون منتقل ڪرڻ جي صلاحيت کي لاڳو ڪري ٿو.
  • ورزن نمبرن سان اسٽرنگ جو مقابلو ڪرڻ لاءِ سسٽم ڊي-تجزيو يوٽيلٽي ۾ 'compare-versions' ڪمانڊ شامل ڪيو ويو (ساڳئي طرح 'rpmdev-vercmp' ۽ 'dpkg --compare-versions'). شامل ڪيو ويو يونٽن کي ماسڪ ذريعي فلٽر ڪرڻ جي صلاحيت 'systemd-analyze dump' ڪمانڊ ۾.
  • جڏهن هڪ ملٽي اسٽيج سليپ موڊ چونڊيو (مطلب-پوءِ-هائبرنٽ)، اسٽينڊ بائي موڊ ۾ گذاريو وقت هاڻي بيٽري جي باقي زندگي جي اڳڪٿي جي بنياد تي چونڊيو ويو آهي. سمهڻ واري موڊ تي فوري منتقلي ٿيندي آهي جڏهن 5٪ کان گهٽ بيٽري چارج رهي ٿي.
  • هڪ نئون آئوٽ پُٽ موڊ "-o short-delta" کي 'journalctl' ۾ شامل ڪيو ويو آهي، لاگ ۾ مختلف پيغامن جي وچ ۾ وقت جي فرق کي ڏيکاريندي.
  • systemd-repart Squashfs فائل سسٽم سان پارٽيشن ٺاهڻ ۽ dm-verity لاءِ پارٽيشنز ٺاهڻ لاءِ سپورٽ شامل ڪري ٿو، بشمول ڊجيٽل دستخطن سان.
  • شامل ڪيو ويو "StopIdleSessionSec=" سيٽنگ کي systemd-logind ۾ هڪ غير فعال سيشن کي ختم ڪرڻ لاءِ مقرر وقت کان پوءِ.
  • Systemd-cryptenroll هڪ شامل ڪيو آهي "--unlock-key-file=" اختيار استعمال ڪندڙ کي اشارو ڪرڻ بجاءِ فائل مان ڊيڪرپشن ڪي کي ڪڍڻ لاءِ.
  • اهو هاڻي ممڪن آهي ته سسٽمd-growfs افاديت کي ماحول ۾ بغير udev کان.
  • systemd-backlight ڪيترن ئي گرافڪس ڪارڊ سان سسٽم لاءِ سپورٽ بهتر ڪئي آهي.
  • دستاويزن ۾ مهيا ڪيل ڪوڊ مثالن جو لائسنس CC0 کان MIT-0 ۾ تبديل ڪيو ويو آهي.

تبديليون جيڪي مطابقت کي ٽوڙيو:

  • جڏهن ConditionKernelVersion هدايتون استعمال ڪندي ڪرنل ورزن نمبر چيڪ ڪري رهيا آهيو، هڪ سادي اسٽرنگ جو مقابلو هاڻي '=' ۽ '!=' آپريٽرن ۾ استعمال ڪيو ويندو آهي، ۽ جيڪڏهن موازنہ آپريٽر بلڪل واضح نه ڪيو ويو آهي، گلوب ماسڪ ميچنگ استعمال ڪري سگهجي ٿو. اکر '*'، '؟' ۽ '['، ']'. stverscmp() طرز نسخن جي مقابلي لاءِ، '<', '>', '<=' ۽ '>=' آپريٽرس استعمال ڪريو.
  • SELinux ٽيگ جيڪو يونٽ فائل مان رسائي چيڪ ڪرڻ لاءِ استعمال ڪيو ويندو آهي هاڻي ان وقت پڙهيو ويندو آهي جڏهن فائل لوڊ ٿيندي آهي، نه ته رسائي چيڪ ڪرڻ وقت.
  • "ConditionFirstBoot" جي حالت ھاڻي سسٽم جي پھرين بوٽ تي شروع ڪئي وئي آھي صرف سڌو سنئون بوٽ اسٽيج تي ۽ "غلط" موٽائي ٿو جڏھن بوٽ مڪمل ٿيڻ کان پوء يونٽ کي ڪال ڪريو.
  • 2024 ۾، سسٽمڊ منصوبا بند ڪرڻ لاءِ مدد ڏيڻ بند ڪرڻ جو cgroup v1 وسيلن کي محدود ڪرڻ واري ميڪانيزم، جنهن کي سسٽم ڊي رليز 248 ۾ رد ڪيو ويو. منتظمين کي صلاح ڏني وئي آهي ته اهي cgroup v2-based خدمتن کي cgroup v1 ڏانهن منتقل ڪرڻ کان اڳ ۾ احتياط ڪن. cgroups v2 ۽ v1 جي وچ ۾ اهم فرق سڀني قسمن جي وسيلن لاءِ هڪ عام cgroups hierarchy جو استعمال آهي، CPU وسيلن کي مختص ڪرڻ لاءِ، ميموري جي استعمال کي ريگيولر ڪرڻ لاءِ، ۽ I/O لاءِ الڳ درجي جي بدران. علحدگيءَ واري درجي بندين کي منظم ڪرڻ ۾ مشڪلاتن جو سبب بڻجن ٿا سنڀاليندڙن جي وچ ۾ رابطي کي منظم ڪرڻ ۽ اضافي ڪنييل وسيلن جي خرچن ۾ جڏهن مختلف درجه بندي ۾ حوالو ڏنل عمل لاءِ ضابطا لاڳو ٿين ٿا.
  • 2023 جي ٻئي اڌ ۾، اسان ورهايل ڊاريڪٽري جي درجي بندي جي حمايت کي ختم ڪرڻ جو منصوبو ٺاهيو، جتي /usr روٽ کان الڳ نصب ٿيل آهي، يا /bin ۽ /usr/bin، /lib ۽ /usr/lib الڳ ٿيل آهن.

جو ذريعو: opennet.ru

تبصرو شامل ڪريو