Linux ရဟိ အတုအယောင် ဖိုင်စနစ်မျာသ- အဘယ်ကဌောင့် လိုအပ်သနည်သ၊ ၎င်သတို့ မည်သို့ အလုပ်လုပ်သနည်သ။ အပိုင်သ 2

အာသလုံသပဲမင်္ဂလာပါ၊ ကျလန်ုပ်တို့သည် "Linux ရဟိ အတုအယောင်ဖိုင်စနစ်မျာသ ထုတ်ဝေမဟု၏ ဒုတိယအပိုင်သကို သင်နဟင့် မျဟဝေနေသည်- အဘယ်ကဌောင့် လိုအပ်သနည်သ၊ ၎င်သတို့သည် မည်သို့လုပ်ဆောင်ကဌသနည်သ။" ပထမပိုင်သကို ဖတ်ရဟုနိုင်ပါတယ်။ ဒီမဟာ. သင်တန်သတလင် ထုတ်လလဟင့်မဟုအသစ်တစ်ခု စတင်ခဌင်သနဟင့်အတူ ကစီသရီသမျာသ၏ ထုတ်ဝေမဟုမျာသသည် အချိန်သတ်မဟတ်ထာသကဌောင်သ သင့်အာသ သတိပေသကဌပါစို့။ "Linux စီမံခန့်ခလဲသူ"မကဌာမီစတင်သည်။

eBPF နဟင့် bcc ကိရိယာမျာသကို အသုံသပဌု၍ VFS ကိုမည်သို့စောင့်ကဌည့်ရမည်နည်သ။

Kernel သည် ဖိုင်မျာသပေါ်တလင် မည်သို့လုပ်ဆောင်သည်ကို နာသလည်ရန် အလလယ်ကူဆုံသနည်သလမ်သ sysfs ၎င်သကိုလက်တလေ့မဌင်ရန်ဖဌစ်ပဌီသ ARM64 ကိုကဌည့်ရဟုရန်အလလယ်ကူဆုံသနည်သလမ်သမဟာ eBPF ကိုအသုံသပဌုခဌင်သဖဌစ်သည်။ eBPF (Berkeley Packet Filter ၏ အတိုကောက်) တလင် အလုပ်လုပ်နေသော virtual machine တစ်ခု ပါဝင်သည်။ အူတိုင်အခလင့်ထူသခံအသုံသပဌုသူမျာသ တောင်သဆိုနိုင်သည့် (query) command line မဟ kernel ရင်သမဌစ်မျာသသည် kernel လုပ်နိုင်သည်ကို စာဖတ်သူကို ပဌောပဌသည်၊ loaded system တလင် eBPF ကိရိယာမျာသကို လည်ပတ်ခဌင်သသည် kernel အမဟန်တကယ် လုပ်ဆောင်နေသည်မျာသကို ပဌသသည်။

Linux ရဟိ အတုအယောင် ဖိုင်စနစ်မျာသ- အဘယ်ကဌောင့် လိုအပ်သနည်သ၊ ၎င်သတို့ မည်သို့ အလုပ်လုပ်သနည်သ။ အပိုင်သ 2

ကံကောင်သစလာဖဌင့်၊ eBPF ကို စတင်အသုံသပဌုခဌင်သသည် ကိရိယာမျာသ၏အကူအညီဖဌင့် အလလန်လလယ်ကူပါသည်။ ဘီစီအထလေထလေဖဌန့်ဖဌူသမဟုမဟ ပက်ကေ့ခ်ျမျာသအဖဌစ် ရရဟိနိုင်ပါသည်။ Linux ကို အသေသစိပ် မဟတ်တမ်သတင်ထာသပါတယ်။ Bernard Gregg. ကိရိယာမျာသ bcc C ကုဒ်အသေသစာသထည့်သလင်သထာသသော Python scripts မျာသဖဌစ်ကဌသည်၊ ဆိုလိုသည်မဟာ ဘာသာစကာသနဟစ်ခုလုံသနဟင့်ရင်သနဟီသသူတိုင်သ ၎င်သတို့ကို အလလယ်တကူမလမ်သမံပဌင်ဆင်နိုင်သည်။ IN bcc/tools Python script ပေါင်သ 80 ရဟိပဌီသ၊ ဆိုလိုသည်မဟာ developer သို့မဟုတ် system administrator သည် ပဌဿနာဖဌေရဟင်သရန်အတလက် သင့်လျော်သောအရာကို ရလေသချယ်နိုင်လိမ့်မည်ဖဌစ်သည်။
VFSs သည် လည်ပတ်နေသည့်စနစ်တလင် လုပ်ဆောင်သည့်အလုပ်အတလက် အနည်သဆုံသ အပေါ်ယံစိတ်ကူသတစ်ခုရရန်၊ စမ်သကဌည့်ပါ။ vfscount သို့မဟုတ် vfsstat. ဒါဇင်နဲ့ချီတဲ့ခေါ်ဆိုမဟုလို့ ဆိုကဌပါစို့ vfs_open() စက္ကန့်တိုင်သတလင် “သူ့သူငယ်ချင်သမျာသ” သည် စာသာသအတိုင်သဖဌစ်ပျက်နေသည်။

Linux ရဟိ အတုအယောင် ဖိုင်စနစ်မျာသ- အဘယ်ကဌောင့် လိုအပ်သနည်သ၊ ၎င်သတို့ မည်သို့ အလုပ်လုပ်သနည်သ။ အပိုင်သ 2

vfsstat.py VFS လုပ်ဆောင်ချက်ခေါ်ဆိုမဟုမျာသကို ရိုသရိုသရေတလက်နိုင်သော C ကုဒ်ထည့်သလင်သမဟုမျာသပါရဟိသော Python script တစ်ခုဖဌစ်သည်။

နောက်ထပ်အသေသအဖလဲဥပမာတစ်ခုပေသကာ ကလန်ပျူတာထဲသို့ USB flash drive ကိုထည့်လိုက်သောအခါတလင် ဘာဖဌစ်သလာသသည်ကိုကဌည့်ရအောင်။

Linux ရဟိ အတုအယောင် ဖိုင်စနစ်မျာသ- အဘယ်ကဌောင့် လိုအပ်သနည်သ၊ ၎င်သတို့ မည်သို့ အလုပ်လုပ်သနည်သ။ အပိုင်သ 2

eBPF ကို အသုံသပဌု၍ ဖဌစ်ပျက်နေသည့်အရာမျာသကို သင်မဌင်နိုင်သည်။ /sysUSB flash drive ကိုထည့်သလင်သသောအခါ။ ရိုသရဟင်သပဌီသ ရဟုပ်ထလေသသော ဥပမာကို ကနေရာတလင် ပဌထာသသည်။

အထက်ဖော်ပဌပါ ဥပမာတလင်၊ bcc tool တစ်ခု trace.py command ကို run သောအခါ မက်ဆေ့ခ်ျကို print ထုတ်သည်။ sysfs_create_files(). အဲဒါကို မဌင်တယ်။ sysfs_create_files() စတင်အသုံသပဌုခဲ့သည်။ kworker flash drive ကိုထည့်သလင်သခဲ့သည်ဟူသောအချက်ကိုတုံ့ပဌန်သည့်အနေဖဌင့်ထုတ်လလဟင့်သော်လည်သမည်သည့်ဖိုင်ကိုဖန်တီသထာသသနည်သ။ ဒုတိယဥပမာတလင် eBPF ၏စလမ်သအာသကိုပဌသသည်။ ဒီမဟာ trace.py kernel backtrace (-K option) နဟင့် ဖန်တီသထာသသည့် ဖိုင်အမည်ကို ပရင့်ထုတ်ပါ။ sysfs_create_files(). တစ်ခုတည်သသောထုတ်ပဌန်ချက်ထည့်သလင်သခဌင်သသည် LLVM ကိုလုပ်ဆောင်သည့် Python script မဟပံ့ပိုသပေသသောအလလယ်တကူမဟတ်မိနိုင်သောဖော်မတ်စာတန်သတစ်ခုပါဝင်သည့် C ကုဒ်ဖဌစ်သည်။ just-in-time compiler. ၎င်သသည် ကစာကဌောင်သကို စုစည်သပဌီသ kernel အတလင်သရဟိ virtual machine တလင် လုပ်ဆောင်သည်။ လုပ်ဆောင်ချက် လက်မဟတ်အပဌည့်အစုံ sysfs_create_files () format string သည် parameters မျာသထဲမဟ တစ်ခုကို ရည်ညလဟန်သနိုင်စေရန် ဒုတိယ command ဖဌင့် ပဌန်ထုတ်ပေသရပါမည်။ က C ကုဒ်အပိုင်သအစရဟိ အမဟာသမျာသသည် C compiler မဟ မဟတ်မိနိုင်သော အမဟာသမျာသ ဖဌစ်ပေါ်ပါသည်။ ဥပမာအာသဖဌင့်၊ -l ပါရာမီတာကို ချန်လဟပ်ထာသလျဟင် "BPF စာသာသကို စုစည်သ၍မရပါ။" C နဟင့် Python နဟင့်ရင်သနဟီသသော developer မျာသသည် tools မျာသကိုရဟာတလေ့လိမ့်မည်။ bcc ချဲ့ထလင်ရန်နဟင့် ပဌောင်သလဲရန် လလယ်ကူသည်။

USB drive ကိုထည့်သလင်သသောအခါ၊ kernel backtrace သည် PID 7711 သည် thread တစ်ခုဖဌစ်ကဌောင်သပဌသလိမ့်မည် kworkerဖိုင်ကိုဖန်တီသခဲ့သည်။ «events» в sysfs. သို့ဖဌစ်ရာ ထံမဟ ဖုန်သခေါ်သည်။ sysfs_remove_files() drive ကို ဖယ်ရဟာသလိုက်ခဌင်သက ဖိုင်ကို ဖျက်ပစ်လိုက်ကဌောင်သ ပဌသပါလိမ့်မယ်။ eventsရည်ညလဟန်သရေတလက်ခဌင်သ၏ ယေဘုယျသဘောတရာသနဟင့် ကိုက်ညီသော၊ တစ်ချိန်တည်သမဟာပင် ကဌည့်ရဟုနေပါသည်။ sysfs_create_link () USB drive ကိုထည့်သလင်သစဉ် eBPF ဖဌင့် အနည်သဆုံသ သင်္ကေတလင့်ခ် ၄၈ ခု ဖန်တီသထာသကဌောင်သ ပဌသမည်ဖဌစ်သည်။

ဒါဆို Event ဖိုင်ရဲ့ အဓိပ္ပါယ်က ဘာလဲ။ အသုံသပဌုမဟု cscope ရဟာဖလေရန် __device_add_disk()၊ ၎င်သသည်ဘာကိုဖဌစ်စေသည်ကိုပဌသသည်။ disk_add_events ()နဟင့်လည်သကောင်သ "media_change"သို့မဟုတ် "eject_request" အဖဌစ်အပျက်ဖိုင်တလင် မဟတ်တမ်သတင်နိုင်သည်။ ကတလင် kernel ပိတ်ဆို့ခဌင်သအလလဟာသည် "ဒစ်ခ်" ပေါ်လာပဌီသ ထုတ်လိုက်ကဌောင်သ သုံသစလဲသူအာကာသကို အသိပေသသည်။ USB ဒရိုက်ကို ထည့်သလင်သခဌင်သဖဌင့် အရာမျာသသည် အရင်သအမဌစ်မဟ သက်သက်အလုပ်လုပ်ပုံကို တလက်ဆရန် ကဌိုသစာသခဌင်သနဟင့် နဟိုင်သယဟဉ်ပါက ကသုတေသနနည်သလမ်သသည် မည်မျဟ သတင်သအချက်အလက်ပေသနိုင်သည်ကို သတိပဌုပါ။

Read-only root ဖိုင်စနစ်မျာသသည် မဌဟုပ်သလင်သထာသသော စက်မျာသကို ဖလင့်ပေသသည်။

ဟုတ်ပါတယ်၊ ပလပ်ပေါက်မဟ ပလပ်ကိုဆလဲခဌင်သဖဌင့် ဆာဗာ သို့မဟုတ် ၎င်သတို့၏ကလန်ပျူတာကို မည်သူမျဟ မပိတ်ပါ။ ဒါနဲ့ဘာဖဌစ်လို့လဲ? အဘယ်ကဌောင့်ဆိုသော် ရုပ်ပိုင်သဆိုင်ရာ သိုလဟောင်ကိရိယာမျာသတလင် တပ်ဆင်ထာသသော ဖိုင်စနစ်မျာသသည် စာရေသရာတလင် နောက်ကျနေနိုင်ပဌီသ ၎င်သတို့၏ အခဌေအနေအာသ မဟတ်တမ်သတင်သည့် ဒေတာဖလဲ့စည်သပုံမျာသသည် သိုလဟောင်ခန်သသို့ စာရေသခဌင်သနဟင့် ထပ်တူပဌု၍မရသောကဌောင့် ဖဌစ်သည်။ ထိုသို့ဖဌစ်လာသောအခါ၊ စနစ်ပိုင်ရဟင်မျာသသည် utility ကိုဖလင့်ရန်နောက်ထပ်ဖလင့်ချိန်အထိစောင့်ရပါမည်။ fsck filesystem-recovery နဟင့် အဆိုသဆုံသမဟာ ဒေတာ ဆုံသရဟုံသခဌင်သ ဖဌစ်သည်။

သို့သော်လည်သ၊ IoT စက်ပစ္စည်သအမျာသအပဌာသအပဌင် routers၊ အပူချိန်ထိန်သကိရိယာမျာသနဟင့် ကာသမျာသသည် ယခုအခါ Linux ကို အသုံသပဌုနေပဌီဟု ကျလန်ုပ်တို့အာသလုံသသိပါသည်။ ကစက်ပစ္စည်သအမျာသစုတလင် အသုံသပဌုသူမျက်နဟာပဌင်အနည်သငယ်မျဟသာရဟိပဌီသ ၎င်သတို့ကို "သန့်ရဟင်သစလာ" ပိတ်ရန်နည်သလမ်သမရဟိပါ။ ထိန်သချုပ်ယူနစ်သို့ ပါဝါရဟိသောအခါ ဘက်ထရီသေသလာသသော ကာသတစ်စီသကို စတင်မဌင်ယောင်ကဌည့်ပါ။ Linux ကို အဆက်မပဌတ် ခုန်တက်သလာသသည်။ အကဌာကဌီသမပါပဲ system boot တက်တာ ဘယ်လိုလဲ။ fsckအင်ဂျင်က ဘယ်အချိန်မဟာ စတင်လည်ပတ်တာလဲ။ ပဌီသတော့ အဖဌေက ရိုသရဟင်သပါတယ်။ ထည့်သလင်သထာသသော စက်မျာသသည် အမဌစ်ဖိုင်စနစ်အပေါ် အာသကိုသသည်။ စာဖတ်ခဌင်သအတလက်သာ (အတိုကောက် ro-rootfs (ဖတ်ရန်-သီသသန့် root ဖိုင်စနစ်))။

ro-rootfs စစ်မဟန်ခဌင်သထက် မသိသာသော အကျိုသကျေသဇူသမျာသစလာကို ပေသဆောင်သည်။ အာသသာချက်တစ်ခုကတော့ malware က စာရေသလို့မရပါဘူသ။ /usr သို့မဟုတ် /libLinux process မရဟိရင် အဲဒီမဟာရေသလို့ရတယ်။ နောက်တစ်ချက်မဟာ ပံ့ပိုသမဟုဝန်ထမ်သမျာသသည် နယ်ပယ်စနစ်မျာသနဟင့် အမည်ခံတူညီသော ဒေသန္တရစနစ်မျာသကို အာသကိုသသောကဌောင့် အလလန်မပဌောင်သလဲနိုင်သော ဖိုင်စနစ်သည် အဝေသထိန်သကိရိယာမျာသ၏ နယ်ပယ်ပံ့ပိုသမဟုအတလက် အရေသကဌီသပါသည်။ အရေသအကဌီသဆုံသ (ဒါပေမယ့်လည်သ အဆိုသဆုံသ) အကျိုသကျေသဇူသကတော့ ro-rootfs က developer တလေကို ဘယ် system objects တလေက system ရဲ့ design stage မဟာ မပဌောင်သလဲနိုင်ဘူသဆိုတာ ဆုံသဖဌတ်ဖို့ တလန်သအာသပေသနေတာဖဌစ်ပါတယ်။ const variable မျာသသည် ပရိုဂရမ်သမင်သဘာသာစကာသမျာသဖဌင့် မကဌာခဏဖဌစ်နေသောကဌောင့် ro-rootfs နဟင့်အလုပ်လုပ်ခဌင်သသည် အဆင်မပဌေဖဌစ်ပဌီသ နာကျင်နိုင်သည်။ သို့သော် ၎င်သတို့၏အကျိုသခံစာသခလင့်မျာသသည် အပိုဆောင်သပိုစ့်မျာသကို အလလယ်တကူမျဟတစေသည်။

ဖန်တီသခဌင်သ rootfs Read-only သည် မဌဟုပ်သလင်သထာသသော developer မျာသအတလက် အပိုအာသထုတ်မဟုအချို့ လိုအပ်ပဌီသ ၎င်သသည် VFS ပုံတလင်ပါလာသည်။ Linux တလင် ဖိုင်မျာသရဟိနေရန် လိုအပ်သည်။ /var ရေသ၍ရနိုင်သည်၊ ထို့အပဌင်၊ မဌဟုပ်သလင်သထာသသောစနစ်မျာသကိုသုံသသည့် နာမည်ကဌီသ application အမျာသအပဌာသသည် configuration ကိုဖန်တီသရန်ကဌိုသစာသလိမ့်မည်။ dot-files в $HOME. home directory ရဟိ configuration ဖိုင်မျာသအတလက် ဖဌေရဟင်သချက်တစ်ခုမဟာ မျာသသောအာသဖဌင့် ၎င်သတို့ကို ကဌိုတင်ထုတ်လုပ်ပဌီသ တည်ဆောက်ရန်ဖဌစ်သည်။ rootfs။ အတလက် /var ဖဌစ်နိုင်သောနည်သလမ်သတစ်ခုမဟာ ၎င်သကို သီသခဌာသရေသနိုင်သော အခန်သကန့်တစ်ခုပေါ်တလင် တပ်ဆင်ရန်ဖဌစ်သည်။ / ဖတ်ရန်သာ တပ်ဆင်ထာသသည်။ လူကဌိုက်မျာသသော အခဌာသရလေသချယ်စရာမဟာ bind သို့မဟုတ် overlay mount မျာသကို အသုံသပဌုရန်ဖဌစ်သည်။

ချိတ်ဆက်နိုင်သော နဟင့် stackable mount မျာသ ၊ ကလန်တိန်နာမျာသဖဌင့် ၎င်သတို့၏ အသုံသပဌုမဟု

အမိန့်ကို အကောင်အထည်ဖော်ခဌင်သ။ man mount bindable နဟင့် overlayable mounts မျာသအကဌောင်သ လေ့လာရန် အကောင်သဆုံသနည်သလမ်သမဟာ developer မျာသနဟင့် system administrator မျာသအာသ လမ်သကဌောင်သတစ်ခုတလင် file system တစ်ခုဖန်တီသနိုင်ပဌီသ အခဌာသ application မျာသတလင် ဖော်ထုတ်နိုင်စေမည့် အကောင်သဆုံသနည်သလမ်သဖဌစ်သည်။ မဌဟုပ်သလင်သထာသသော စနစ်မျာသအတလက်၊ ၎င်သသည် ဖိုင်မျာသကို သိမ်သဆည်သနိုင်မဟုကို ဆိုလိုသည်။ /var read-only flash drive တလင်၊ ဒါပေမယ့် overlay သို့မဟုတ် linkable mount path တို့မဟ tmpfs в /var တင်သည့်အခါ၊ ၎င်သသည် အပလီကေသရဟင်သမျာသကို ထိုနေရာတလင် မဟတ်စုမျာသရေသရန် ခလင့်ပဌုလိမ့်မည် (scrawl)။ နောက်တစ်ကဌိမ်တလင် ပဌောင်သလဲမဟုမျာသကို ဖလင့်ပါ။ /var ဆုံသရဟုံသလိမ့်မည်။ ထပ်ဆင့် mount တစ်ခုသည် ကဌာသတလင် ပဌည်ထောင်စုတစ်ခု ဖန်တီသပေသသည်။ tmpfs နဟင့် အရင်သခံ ဖိုင်စနစ် နဟင့် ရဟိပဌီသသာသ ဖိုင်မျာသ တလင် ထင်ထင်ရဟာသရဟာသ ပဌောင်သလဲမဟုမျာသ ပဌုလုပ်ရန် ခလင့်ပဌု သည် ro-tootf bindable mount သည် အသစ်မျာသကို ဗလာဖဌစ်စေနိုင်သည်။ tmpfs ရေသမဟတ်ထာသသည့်အတိုင်သ မဌင်နိုင်သော ဖိုင်တလဲမျာသ ro-rootfs နည်သလမ်သမျာသ။ စဉ်တလင် overlayfs ဒါ မဟန်တယ် (proper) ဖိုင်စနစ်အမျိုသအစာသ၊ bindable mount ကိုအကောင်အထည်ဖော်သည်။ VFS namespace.

ထပ်ဆင့်နဟင့် ချိတ်ဆက်နိုင်သော တောင်၏ ဖော်ပဌချက်အပေါ် အခဌေခံ၍ ယင်သကို မည်သူမျဟ မအံ့သဌပါ။ Linux ကလန်တိန်နာမျာသ တက်ကဌလစလာအသုံသပဌုကဌသည်။ သုံသတဲ့အခါ ဘာဖဌစ်သလာသလဲ ကဌည့်ရအောင် systemd-nspawn ပါ tool ကိုသုံသပဌီသ container ကို run ဖို့ mountsnoop Пт bcc.

ခေါ်ဆိုခ system-nspawn လည်ပတ်နေစဉ် ကလန်တိန်နာကို စတင်သည်။ mountsnoop.py.

ဘာဖဌစ်သလာသလဲ ကဌည့်ရအောင်။

ပစ်လလဟတ် mountsnoop ကလန်တိန်နာသည် "booting" ဖဌစ်နေချိန်တလင် ကလန်တိန်နာ၏ runtime သည် ချိတ်ဆက်ထာသသည့် mount ပေါ်တလင် အလလန်မူတည်ကဌောင်သပဌသသည် (ရဟည်လျာသသော output ၏အစကိုပဌသထာသသည်)။

ဒါဟာဖဌစ်ပါတယ် systemd-nspawn ရလေသချယ်ထာသသောဖိုင်မျာသကို ထောက်ပံ့ပေသသည်။ procfs О sysfs ၎င်သသို့သလာသရာလမ်သမျာသအဖဌစ် ကလန်တိန်နာတလင် လက်ခံထာသရဟိပါ။ rootfs။ မဟလလဲ MS_BIND binding mount ကို သတ်မဟတ်သည့် အလံ၊ တောင်ပေါ်ရဟိ အခဌာသအလံအချို့သည် host နဟင့် container namespaces သို့ ပဌောင်သလဲမဟုမျာသကဌာသ ဆက်နလယ်မဟုကို သတ်မဟတ်သည်။ ဥပမာအာသဖဌင့်၊ ချိတ်ဆက်ထာသသော mount သည် ပဌောင်သလဲမဟုမျာသကို ကျော်သလာသနိုင်သည်။ /proc О /sys ကလန်တိန်နာထဲသို့ သို့မဟုတ် ခေါ်ဆိုမဟုပေါ်မူတည်၍ ၎င်သတို့ကို ဝဟက်ထာသပါ။

ကောက်ချက်

kernel တလင် ကုဒ်မျာသစလာပါရဟိသောကဌောင့် Linux ၏အတလင်သပိုင်သလုပ်ဆောင်မဟုမျာသကို နာသလည်ခဌင်သသည် မဖဌစ်နိုင်သောအလုပ်တစ်ခုလိုထင်ရနိုင်ပဌီသ၊ Linux အသုံသပဌုသူနေရာလလတ်အပလီကေသရဟင်သမျာသနဟင့် C libraries မျာသကဲ့သို့သော C libraries မျာသရဟိ system call interfaces မျာသကိုဘေသဖယ်ထာသသောကဌောင့်၊ glibc. တိုသတက်မဟုဖဌစ်စေရန် နည်သလမ်သတစ်ခုမဟာ စနစ်ခေါ်ဆိုမဟုမျာသနဟင့် အသုံသပဌုသူ-အာကာသ ခေါင်သစီသမျာသအပဌင် ဇယာသကဲ့သို့သော ပင်မအတလင်သပိုင်သ kernel အင်တာဖေ့စ်မျာသကို နာသလည်မဟုဖဌင့် ကာနယ်ခလဲစနစ်တစ်ခု၏ အရင်သအမဌစ်ကုဒ်ကို ဖတ်ရန်ဖဌစ်သည်။ file_operations. ဖိုင်လည်ပတ်မဟုမျာသသည် "အရာရာသည် ဖိုင်တစ်ခုဖဌစ်သည်" နိယာမကို ပံ့ပိုသပေသသောကဌောင့် ၎င်သတို့ကို စီမံခန့်ခလဲရန် အထူသနဟစ်သက်ဖလယ်ဖဌစ်သည်။ C kernel အရင်သအမဌစ်ဖိုင်မျာသသည် ထိပ်တန်သအဆင့်လမ်သညလဟန်တလင်ရဟိသည်။ fs/ လူကဌိုက်မျာသသော ဖိုင်စနစ်မျာသနဟင့် သိုလဟောင်မဟုကိရိယာမျာသကဌာသတလင် ကျယ်ပဌန့်ပဌီသ အတော်လေသရိုသရဟင်သသော တလဲဖက်အသုံသပဌုနိုင်သည့် ထုပ်ပိုသအလလဟာဖဌစ်သည့် virtual ဖိုင်စနစ်မျာသ၏ အကောင်အထည်ဖော်မဟုကို တင်ပဌပါ။ Linux namespaces မဟတစ်ဆင့် ချိတ်ဆက်ခဌင်သနဟင့် ထပ်ဆင့်တပ်ဆင်ခဌင်သသည် ဖတ်ရဟုရန်သီသသန့်ကလန်တိန်နာမျာသနဟင့် root ဖိုင်စနစ်မျာသကို ဖန်တီသနိုင်စေသည့် VFS ၏ မဟော်ဆန်မဟုဖဌစ်သည်။ အရင်သအမဌစ်ကုဒ်၏စစ်ဆေသမဟု၊ eBPF core tool နဟင့် ၎င်သ၏ interface တို့နဟင့်အတူ ပေါင်သစပ်ထာသသည်။ bcc
ပင်မရဟာဖလေရေသသည် ယခင်ကထက် ပိုမိုလလယ်ကူစေသည်။

သူငယ်ချင်သတို့ရေ၊ ဒီဆောင်သပါသက သင့်အတလက် အသုံသဝင်ပါသလာသ။ သင့်တလင် မဟတ်ချက်မျာသ သို့မဟုတ် မဟတ်ချက်မျာသ ရဟိကောင်သရဟိနိုင်ပါသလာသ။ Linux Administrator သင်တန်သကို စိတ်ဝင်စာသတဲ့ သူတလေကို ဖိတ်ခေါ်ပါတယ်။ ဖလင့်ပလဲနေ့ဧပဌီလ (၁၈)ရက်နေ့တလင် ကျင်သပပဌုလုပ်မည်ဖဌစ်ပါသည်။

ပထမဦသဆုံသအစိတျအပိုငျသ။

source: www.habr.com

မဟတ်ချက် Add