ဒီနေ့ ပြောပြချင်တဲ့ အကြောင်းအရာလေးကတော့ Cisco Device တွေမှာ Linux shell script တွေကို ဘယ်လိုဖန်တီးမလဲ Linux command တွေကို ဘယ်လို enable လုပ်ရမလဲ ဆိုတာကို ရှင်းပြပေးမှာပဲ ဖြစ်ပါတယ်ဗျာ့.. စိတ်ဝင်စားသွားဟုတ် 😉 စိတ်ဝင်စားရင် အောက်ကို ဆက်ဖတ်ကြည့်ပေးပါဗျာ… အချိန်နဲနဲလေး ပေးယုံနဲ့ တစ်ကယ်အကျိုးရှိမှာပါ .. ကဲ့စလိုက်ကျရအောင်ဗျာ..
PDF download Link (Click here)
***Cisco IOS Release 15.1(4)M, 15.1(2)S, and later releases. ***
အပေါ်ကလင့်လေးကတော့ cisco က official ထုတ်တားပေးတဲ့ reference document လေးပါ ပုံမှန် အတိုင်းဆိုရင် Cisco စက် switch/router တွေမှာ Linux command တွေ ကို ရိုက်လို့ မရပါဘူး.. အဲ့ feature ကို ထည့်ထားပေး ပေမယ့် enable လုပ်ပေးဖို့ လို့ပါတယ်။ tradition IOS တွေမှာကော IOS XR တွေမှာပါ သုံးလို့ရပါတယ်
ခု Test လုပ်ပြမယ့် စက်မှာတေ့ာ IOS version က 15.5 ဖြစ်ပါတယ်.. Default အတိုင်းက linux command တွေရိုက်လို့ရဦးမှာ မဟုတ်ပါဘူး.. ခု ဒီမှာ နမူနာအနေနဲ့ grep ကို သုံးပြထားပါတယ်.. Feature ကို enable မလုပ်ရသေးတာမို့ grep နေရမှာ invalid input ဆိုပြီး Error တက်နေတာပဲ ဖြစ်ပါတယ်။
IOS shell Feature ကို enable လုပ်မယ် ဆို နည်း ၂နည်းနဲ့ လုပ်လို့ရပါတယ်. Terminal Option နဲ့ Configuration Option ပဲ ဖြစ်ပါတယ်။ Terminal option သည် one time လို့ပြောလို့ရပါတယ်.. ဘယ်လို Run time လဲဆိုတော့ .. လက်ရှိ Login ဝင်နေတဲ့ session (Telnet/ssh/console) တစ်ခုစာပဲ IOS.sh Feature က enable ဖြစ်နေတာပါ။ exit ထွက်လိုက်ပြီ ဆိုတာနဲ့ disable ပြန်ဖြစ်သွားပါတယ်.. နောက်တစ်ကြိမ် ပြန်သုံးချင်တယ်ဆိုရင်တော့ ပြန်ပြီး Enable လုပ်ပေးရပါတယ်.. IOS.sh enable လုပ်ဖို့အတွက် ရိုက်ရမယ့် Command လေးကတော့ terminal shell လို့ privilege mode မှာ ရိုက်ပေးလိုက်ယုံပါပဲ..
ရိုက်ပြီးသွားပြီ ဆိုတော့ Linux command တွေသုံးလို့ ရမရ စမ်းကြည့်ကျရအောင်… ခုနတုန်းက enable မလုပ်ခင်တုန်းက မရခဲ့တဲ့ grap ကို ပဲ ပြန်သုံးကြည့်ကျရအောင်.. ခုအောက်က Screenshot ကို ကြည့်မယ်ဆိုရင်တော့ linux command တစ်ခုဖြစ်တဲ့ grap အလုပ်လုပ် နေတာကို တွေ့ရမှာပါ grap က linux မှာ Text ရှာပေးတဲ့ tools တစ်ခုပဲ ဖြစ်ပါတယ်။ ခုဒီ ဥပမာဆိုရင် show run ရိုက်လို့ကျလာမယ့် output ကို | ခံပြီး grep နဲ့ output ထဲမှာ interface လို့စာသားပါသမျှ ထုတ်ပြပေးဖို့ လုပ်ပြထားတာပါ။ Linux command တွေကို detail မရှင်းတော့ဘူးနော့
ခု terminal option ကိုသုံးပြီး စမ်းထားတာဆိုတော့ ပြန်ထွက်ပြီး ပြန်ဝင်ကြည့်ပါ linux command သုံးလို့ရမရကို… ထွက်ပြီး တာနဲ့ disable ဖြစ်သွားတာမို့ ရတော့မှာမဟုတ်ပါဘူး။ CPU/RAM အတွက် လိုတဲ့ အချိန်မှ သုံးချင်တယ်ဆိုရင် ဒီoption လေးကို ရွေးချယ်သင့်ပါတယ်။
နောက် ဒုတိယ တစ်နည်းကတော့ Configuration Option ပဲဖြစ်ပါတယ်။ သူကတော့ Terminal Option ကို one time မဟုတ်ပဲ.. Permanent enable လုပ်ပေးတဲ့ နည်းပဲ ဖြစ်ပါတယ်။ ရိုက်ရမယ့် command ကတော့ Global configuration mode မှာ shell processing full လို့ ရိုက်ပေးရမှာပါ.. ဒီနည်းသည် log out ထွက်သွားလဲ ပျက်မသွားတာမို့ disable လုပ်ချင်ရင် Global config mode မှာပဲ no shell processing လို့ရိုက်ပေးရမှာပဲ ဖြစ်ပါတယ်။
Linux shell မှဦ ရနိုင်တဲ့ Function တွေကို ကြည့်ချင်တတယ် ဆိုရင်တော့ သုံးရမယ့် command က show shell function ဆိုတဲ့ command လေးပဲ ဖြစ်ပါတယ်။
Linux command အလုပ်လုပ်ပုံ usage, description ကို သိချင်ရင်တော့ Linux မှာလိုပဲ man နဲ့ကြည့်လို့ရပါတယ်။
ကိုယ့်စိတ်ကြိုက် shell script တွေဖန်တီးလို့လဲ ရပါတယ်ဗျာ့ … ဒီတစ်ခါမှာတော့ စမ်းတဲ့ အနေနဲ့ IP လေးတွေ ထုတ်ပြပေးမယ့် Function လေးကို define လုပ်တဲ့အနေနဲ့ ရေးကြည့်ကျမယ်ဗျာ
ရေးရမယ့် ကုတ်လေးတွေကတော့ အောက်ပါအတိုင်း ဖြစ်ပါတယ်။
function testecho(){
echo 192.168.1.1
echo 192.168.2.1
echo 192.168.3.1
echo 192.168.4.1
}
Function လေးရေးပြီးသွားပြီ ဆိုတော့ IP တွေ ထုတ်မထုတ် လှမ်းခေါ် သုံးကြည့်ပါ
testecho လို့ လှမ်းခေါ် လိုက်တဲ့ အခါမှာမှ IP တွေကို ထုတ်ပြပေးပါတယ်.. Linux shell command အလုပ်လုပ်ပုံ သိရင် ကိုယ့်စိတ်ကြိုက် script တွေ ဖန်တီးပြီး.. လိုရာကို အသုံပြုလို့ရပါတယ်ဗျာ့..
ဒီနေ့တော့ ဒီလောက်ပါပဲ ဗျာ..
Happy Learning @stayhome ^_^
With Best Regards,
Khant Phyo
Core Network Team Leader North @ericsson Myanmar