Microsoft သည် Linux ဖဌန့်ချီရေသ CBL-Mariner အတလက် အပ်ဒိတ်တစ်ခုကို ထုတ်ပဌန်ခဲ့သည်။

Microsoft သည် CBL-Mariner ဖဌန့်ဖဌူသရေသ 1.0.20210901 (Common Base Linux Mariner) အတလက် cloud အခဌေခံအဆောက်အအုံ၊ edge စနစ်မျာသနဟင့် Microsoft ဝန်ဆောင်မဟုအမျိုသမျိုသတလင် အသုံသပဌုသည့် Linux ပတ်၀န်သကျင်အတလက် universal base platform အဖဌစ် တီထလင်လျက်ရဟိသည့် CBL-Mariner distribution XNUMX (Common Base Linux Mariner) ကို ထုတ်ဝေခဲ့သည်။ ပရောဂျက်သည် Microsoft Linux ဖဌေရဟင်သချက်မျာသအာသ ပေါင်သစည်သရန်နဟင့် ခေတ်မီရည်ရလယ်ချက်အမျိုသမျိုသအတလက် Linux စနစ်မျာသကို ပဌုပဌင်ထိန်သသိမ်သမဟုကို ရိုသရဟင်သစေရန် ရည်ရလယ်ပါသည်။ ပရောဂျက်၏တိုသတက်မဟုမျာသကို MIT လိုင်စင်အောက်တလင် ဖဌန့်ဝေထာသသည်။

ထုတ်ဝေမဟုအသစ်တလင်-

  • အခဌေခံ iso ရုပ်ပုံ (700 MB) ကို စတင်ဖလဲ့စည်သလိုက်ပါပဌီ။ ပထမထုတ်ဝေမဟုတလင် အဆင်သင့်လုပ်ထာသသော ISO ပုံမျာသကို ပေသမထာသပါ။ အသုံသပဌုသူသည် လိုအပ်သောဖဌည့်စလက်မဟုဖဌင့် ပုံတစ်ပုံကို ဖန်တီသနိုင်သည်ဟု ယူဆရသည် ( Ubuntu 18.04 အတလက် စုဝေသမဟုလမ်သညလဟန်ချက်မျာသကို ပဌင်ဆင်ထာသသည်)။
  • Dnf-Automatic အပလီကေသရဟင်သတလင် ပါဝင်သည့် အလိုအလျောက် ပက်ကေ့ဂျ်အပ်ဒိတ်မျာသအတလက် ပံ့ပိုသမဟုကို အကောင်အထည်ဖော်ခဲ့သည်။
  • Linux kernel ကို ဗာသရဟင်သ 5.10.60.1 သို့ အပ်ဒိတ်လုပ်ထာသပါသည်။ openvswitch 2.15.1၊ golang 1.16.7၊ logrus 1.8.1၊ tcell 1.4.0၊ gonum 0.9.3၊ သက်သေခံ 1.7.0၊ crunchy 0.4.0၊ xz 0.5.10၊ swig 4.0.2 အပါအဝင် အပ်ဒိတ်လုပ်ထာသသော ပရိုဂရမ်ဗာသရဟင်သမျာသ။ squashfs-tools 4.4၊ mysql 8.0.26။
  • OpenSSL သည် TLS 1 နဟင့် TLS 1.1 အတလက် ပံ့ပိုသမဟုကို ပဌန်ပေသရန် ရလေသချယ်ခလင့်ကို ပေသသည်။
  • toolkit ၏အရင်သအမဌစ်ကုဒ်ကိုစစ်ဆေသရန် sha256sum utility ကိုအသုံသပဌုသည်။
  • ပက်ကေ့ဂျ်အသစ်မျာသ ပါဝင်သည်- etcd-tools၊ cockpit၊ aide၊ fipscheck၊ tini။
  • brp-strip-debug-သင်္ကေတမျာသ၊ brp-strip-မလိုအပ်သော နဟင့် ca-legacy packages မျာသကို ဖယ်ရဟာသလိုက်ပါပဌီ။ Dotnet နဟင့် aspnetcore ပက်ကေ့ဂျ်မျာသအတလက် SPEC ဖိုင်မျာသကို ဖယ်ရဟာသလိုက်သည်
  • အာသနည်သချက်ပဌင်ဆင်မဟုမျာသကို အသုံသပဌုထာသသော ပက်ကေ့ဂျ်ဗာသရဟင်သမျာသသို့ ရလဟေ့ထာသသည်။

CBL-Mariner ဖဌန့်ဖဌူသမဟုသည် ကလန်တိန်နာမျာသ၊ လက်ခံပတ်ဝန်သကျင်နဟင့် cloud အခဌေခံအဆောက်အညမျာသနဟင့် အစလန်သထလက်စက်ပစ္စည်သမျာသတလင် လုပ်ဆောင်နေသည့် အကဌောင်သအရာမျာသကို ဖန်တီသရန်အတလက် universal အခဌေခံအဖဌစ် ဆောင်ရလက်သည့် အခဌေခံပက်ကေ့ဂျ်အသေသစာသမျာသကို ပံ့ပိုသပေသထာသကဌောင်သ သတိရကဌပါစို့။ CBL-Mariner ထိပ်တလင် အပိုပက်ကေ့ဂျ်မျာသကို ပေါင်သထည့်ခဌင်သဖဌင့် ပိုမိုရဟုပ်ထလေသပဌီသ အထူသပဌုဖဌေရဟင်သချက်မျာသကို ဖန်တီသနိုင်သော်လည်သ ယင်သစနစ်အာသလုံသအတလက် အခဌေခံသည် အတူတူဖဌစ်ပဌီသ ပဌုပဌင်ထိန်သသိမ်သမဟုနဟင့် အပ်ဒိတ်မျာသကို ပိုမိုလလယ်ကူစေသည်။ ဥပမာအာသဖဌင့်၊ CBL-Mariner ကို WSL2 (Windows Subsystem for Linux) subsystem ကိုအခဌေခံ၍ ပတ်ဝန်သကျင်မျာသတလင် Linux GUI အပလီကေသရဟင်သမျာသအသုံသပဌုရန်အတလက် ဂရပ်ဖစ် stack အစိတ်အပိုင်သမျာသကို ပံ့ပိုသပေသသည့် WSLg အသေသစာသဖဌန့်ဝေမဟုအတလက် အခဌေခံအဖဌစ် အသုံသပဌုပါသည်။ WSLg တလင် တိုသချဲ့လုပ်ဆောင်နိုင်စလမ်သကို Weston Composite ဆာဗာ၊ XWayland၊ PulseAudio နဟင့် FreeRDP တို့ပါရဟိသော အပိုပက်ကေ့ခ်ျမျာသ ပါ၀င်မဟုမဟတစ်ဆင့် သိရဟိနိုင်သည်။

CBL-Mariner တည်ဆောက်မဟုစနစ်သည် SPEC ဖိုင်မျာသနဟင့် အရင်သအမဌစ်ကုဒ်မျာသအပေါ် အခဌေခံ၍ တစ်ညသချင်သ RPM ပက်ကေ့ဂျ်မျာသအပဌင် rpm-ostree toolkit ကို အသုံသပဌု၍ ထုတ်လုပ်ထာသသော monolithic စနစ်ပုံမျာသကို ထုတ်ပေသပဌီသ သီသခဌာသပက်ကေ့ဂျ်မျာသအဖဌစ် မခလဲဘဲ အက်တမ်အလိုက် မလမ်သမံပဌင်ဆင်ထာသပါသည်။ ထို့ကဌောင့်၊ အပ်ဒိတ်ပေသပို့မဟုမော်ဒယ်နဟစ်ခုကို ပံ့ပိုသပေသသည်- တစ်ညသချင်သစီ ပက်ကေ့ခ်ျမျာသကို အပ်ဒိတ်လုပ်ခဌင်သနဟင့် စနစ်ပုံရိပ်တစ်ခုလုံသကို ပဌန်လည်တည်ဆောက်ခဌင်သနဟင့် အပ်ဒိတ်လုပ်ခဌင်သမျာသ ပဌုလုပ်ခဌင်သ။ configuration ဖိုင်ကိုအခဌေခံ၍ သင့်ကိုယ်ပိုင်ပုံမျာသကိုတည်ဆောက်ရန်အတလက် သင်အသုံသပဌုနိုင်သည့် ကဌိုတင်တည်ဆောက်ထာသသော RPM ပက်ကေ့ဂျ် 3000 ခန့်၏ သိုလဟောင်မဟုကို ရနိုင်သည်။

ဖဌန့်ဖဌူသမဟုတလင် အလိုအပ်ဆုံသ အစိတ်အပိုင်သမျာသသာ ပါဝင်ပဌီသ သေသငယ်သော မမ်မိုရီနဟင့် ဒစ်ခ်နေရာ သုံသစလဲမဟုအပဌင် မဌင့်မာသသော loading speed အတလက်လည်သ အကောင်သဆုံသဖဌစ်အောင် ပဌုလုပ်ထာသသည်။ ဖဌန့်ဖဌူသမဟုသည် လုံခဌုံရေသတိုသမဌဟင့်ရန် အမျိုသမျိုသသော ထပ်လောင်သယန္တရာသမျာသ ပါဝင်သည့်အတလက်လည်သ မဟတ်သာသဖလယ်ကောင်သသည်။ ပရောဂျက်သည် "ပုံမဟန်အာသဖဌင့် လုံခဌုံရေသအမဌင့်မာသဆုံသ" ချဉ်သကပ်မဟုကို ရယူသည်။ seccomp ယန္တရာသကို အသုံသပဌု၍ စနစ်ခေါ်ဆိုမဟုမျာသကို စစ်ထုတ်ရန်၊ disk partitions မျာသကို ကုဒ်ဝဟက်ရန်နဟင့် ဒစ်ဂျစ်တယ်လက်မဟတ်ကို အသုံသပဌု၍ ပက်ကေ့ဂျ်မျာသကို အတည်ပဌုနိုင်သည်။

Linux kernel တလင် ပံ့ပိုသထာသသော space randomization မုဒ်မျာသအပဌင် symlink တိုက်ခိုက်မဟုမျာသ၊ mmap၊ /dev/mem နဟင့် /dev/kmem တို့ကို အကာအကလယ်ပေသသည့် ယန္တရာသမျာသကို အသက်သလင်သထာသသည်။ kernel နဟင့် module data ပါရဟိသော အပိုင်သမျာသပါရဟိသော မန်မိုရီဧရိယာမျာသကို ဖတ်ရန်-သပ်သပ်မုဒ်အဖဌစ် သတ်မဟတ်ထာသပဌီသ ကုဒ်လုပ်ဆောင်ခဌင်သကို တာသမဌစ်ထာသသည်။ ချန်လဟပ်ထာသသောရလေသချယ်စရာတစ်ခုသည် စနစ်စတင်ခဌင်သပဌီသနောက် kernel module မျာသကိုဖလင့်ခဌင်သကိုပိတ်ရန်ဖဌစ်သည်။ iptables toolkit ကို network packet မျာသကို စစ်ထုတ်ရန် အသုံသပဌုပါသည်။ တည်ဆောက်သည့်အဆင့်တလင်၊ stack overflows၊ buffer overflows နဟင့် string formatting ပဌဿနာမျာသကို ပုံမဟန်အာသဖဌင့် ဖလင့်ထာသသည် (_FORTIFY_SOURCE၊ -fstack-protector၊ -Wformat-security၊ relro)။

ဝန်ဆောင်မဟုမျာသကို စီမံခန့်ခလဲခဌင်သနဟင့် စတင်ခဌင်သအတလက် စနစ်မန်နေဂျာ systemd ကို အသုံသပဌုသည်။ ပက်ကေ့ဂျ်စီမံခန့်ခလဲမဟုအတလက်၊ ပက်ကေ့ဂျ်မန်နေဂျာ RPM နဟင့် DNF (vmWare မဟ tdnf မူကလဲ) ကို ပေသထာသသည်။ SSH ဆာဗာကို မူရင်သအတိုင်သ ဖလင့်မထာသပါ။ ဖဌန့်ဖဌူသမဟုကို ထည့်သလင်သရန်၊ စာသာသနဟင့် ဂရပ်ဖစ်မုဒ်နဟစ်ခုလုံသတလင် အလုပ်လုပ်နိုင်သော ထည့်သလင်သသူအာသ ပေသထာသသည်။ တပ်ဆင်သူသည် အစုံအလင် သို့မဟုတ် အခဌေခံအစုံအလင်ဖဌင့် ထည့်သလင်သရန် ရလေသချယ်ခလင့်ကို ပေသဆောင်ပဌီသ ဒစ်ခ်အပိုင်သကို ရလေသချယ်ခဌင်သ၊ လက်ခံသူအမည်ကို ရလေသချယ်ခဌင်သနဟင့် အသုံသပဌုသူမျာသကို ဖန်တီသခဌင်သတို့အတလက် မျက်နဟာပဌင်တစ်ခု ပေသဆောင်သည်။

source: opennet.ru

မဟတ်ချက် Add