Microsoft သည် Linux ဖြန့်ဖြူးမှု CBL-Mariner ၏ ပထမဆုံးတည်ငြိမ်သောဖြန့်ချိမှုကို ထုတ်ဝေခဲ့သည်။

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

ဖြန့်ဖြူးမှုသည် ကွန်တိန်နာများ၊ လက်ခံပတ်ဝန်းကျင်နှင့် cloud အခြေခံအဆောက်အဦများနှင့် အစွန်းထွက်စက်ပစ္စည်းများတွင် လုပ်ဆောင်နေသည့် အကြောင်းအရာများကို ဖန်တီးရန်အတွက် universal အခြေခံအဖြစ် ဆောင်ရွက်သည့် အခြေခံပက်ကေ့ဂျ်အသေးစားတစ်ခုကို ပံ့ပိုးပေးပါသည်။ CBL-Mariner ထိပ်တွင် အပိုပက်ကေ့ဂျ်များကို ပေါင်းထည့်ခြင်းဖြင့် ပိုမိုရှုပ်ထွေးပြီး အထူးပြုဖြေရှင်းချက်များကို ဖန်တီးနိုင်သော်လည်း ယင်းစနစ်အားလုံးအတွက် အခြေခံသည် အတူတူဖြစ်ပြီး ပြုပြင်ထိန်းသိမ်းမှုနှင့် အပ်ဒိတ်များကို ပိုမိုလွယ်ကူစေသည်။

ဥပမာအားဖြင့်၊ CBL-Mariner ကို WSL2 (Windows Subsystem for Linux) subsystem ကိုအခြေခံ၍ ပတ်ဝန်းကျင်များတွင် Linux GUI အပလီကေးရှင်းများအသုံးပြုရန်အတွက် ဂရပ်ဖစ် stack အစိတ်အပိုင်းများကို ပံ့ပိုးပေးသည့် WSLg အသေးစားဖြန့်ဝေမှုအတွက် အခြေခံအဖြစ် အသုံးပြုပါသည်။ ဤဖြန့်ဝေမှု၏ အဓိကအချက်မှာ မပြောင်းလဲဘဲ Weston၊ XWayland၊ PulseAudio နှင့် FreeRDP ပေါင်းစပ်ဆာဗာများပါရှိသော အပိုပက်ကေ့ခ်ျများပါ၀င်ခြင်းကြောင့် တိုးချဲ့လုပ်ဆောင်နိုင်စွမ်းကို သိရှိနားလည်ပါသည်။

CBL-Mariner တည်ဆောက်မှုစနစ်သည် SPEC ဖိုင်များနှင့် အရင်းအမြစ်ကုဒ်များအပေါ် အခြေခံ၍ တစ်ဦးချင်း RPM ပက်ကေ့ဂျ်များအပြင် rpm-ostree toolkit ကို အသုံးပြု၍ ထုတ်လုပ်ထားသော monolithic စနစ်ပုံများကို ထုတ်ပေးပြီး သီးခြားပက်ကေ့ဂျ်များအဖြစ် မခွဲဘဲ အက်တမ်အလိုက် မွမ်းမံပြင်ဆင်ထားပါသည်။ ထို့ကြောင့်၊ အပ်ဒိတ်ပေးပို့မှုမော်ဒယ်နှစ်ခုကို ပံ့ပိုးပေးသည်- တစ်ဦးချင်းစီ ပက်ကေ့ခ်ျများကို အပ်ဒိတ်လုပ်ခြင်းနှင့် စနစ်ပုံရိပ်တစ်ခုလုံးကို ပြန်လည်တည်ဆောက်ခြင်းနှင့် အပ်ဒိတ်လုပ်ခြင်းများ ပြုလုပ်ခြင်း။ ဖြန့်ဖြူးမှုတွင် အလိုအပ်ဆုံး အစိတ်အပိုင်းများသာ ပါဝင်ပြီး သေးငယ်သော မမ်မိုရီနှင့် ဒစ်ခ်နေရာ သုံးစွဲမှုအပြင် မြင့်မားသော loading speed အတွက်လည်း အကောင်းဆုံးဖြစ်အောင် ပြုလုပ်ထားသည်။ ဖြန့်ဖြူးမှုသည် လုံခြုံရေးတိုးမြှင့်ရန် အမျိုးမျိုးသော ထပ်လောင်းယန္တရားများ ပါဝင်သည့်အတွက်လည်း မှတ်သားဖွယ်ကောင်းသည်။

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

ကြိုတင်ပြုလုပ်ထားသော ISO ပုံများကို မပေးထားပါ။ အသုံးပြုသူသည် လိုအပ်သောဖြည့်စွက်မှုဖြင့် ပုံတစ်ပုံကို ဖန်တီးနိုင်သည်ဟု ယူဆရသည် (အစုအဝေးတွင် ညွှန်ကြားချက်များကို Ubuntu 18.04 အတွက် ပံ့ပိုးပေးသည်)။ configuration file ကို အခြေခံ၍ သင့်ကိုယ်ပိုင်ပုံများကို တည်ဆောက်ရန်အတွက် သင်အသုံးပြုနိုင်သည့် ကြိုတင်တည်ဆောက်ထားသော RPM ပက်ကေ့ဂျ်များ၏ သိုလှောင်မှုတစ်ခု ရနိုင်ပါသည်။ repository သည် package 3300 ခန့်ကိုပေးသည်။ ဥပမာအားဖြင့်၊ iso ပုံအပြည့်အစုံကိုတည်ဆောက်ရန်၊ git clone https://github.com/microsoft/CBL-Mariner.git cd CBL-Mariner/toolkit sudo make iso REBUILD_TOOLS=y REBUILD_PACKAGES=n CONFIG_FILE=./imageconfigs /full .json

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

Microsoft သည် Linux ဖြန့်ဖြူးမှု CBL-Mariner ၏ ပထမဆုံးတည်ငြိမ်သောဖြန့်ချိမှုကို ထုတ်ဝေခဲ့သည်။


source: opennet.ru

မှတ်ချက် Add