Showing posts with label Ubuntu. Show all posts
Showing posts with label Ubuntu. Show all posts

Test living without zawgyi font on Ubuntu

ဇော်ဂျီဖွန့်သုံးရာကနေ မြန်မာ၃ ကို စပြောင်းသုံးရာမှာ အခက်အခဲလေးတွေရင်ဆိုင်ရတယ်။ သူများဇော်ဂျီနဲ့ရေးထားတာကို မမြင်ရတဲ့ပြဿနာ၊ လင်းနက်မှာ မြန်မာ၃ ရိုက်မကြွမ်းသေးတဲ့ပြဿနာ၊ ဇော်ဂျီဖွန့်နဲ့ မြန်မာ၃ အတူတကွထားလို့မဖြစ်တဲ့ပြဿနာ၊ ထားလို့ရပြန်သော်လည်း ဇော်ဂျီဖွန့်ကိုလုံးဝ မမြင်တော့တဲ့ပြဿနာတွေပါ။

1) မြန်မာ၃လက်ကွက်မကျွမ်းတာက ကိစ္စမဟုတ်လောက်တော့ပါ (ရေးပါများရင်)

2) မြန်မာ၃ နဲ့ ဇော်ဂျီ နှစ်ခုတူတူထားချင်ရင်လဲ .font.conf လေးရေးထားပြီး $HOME dir အောက်မှာထားရုံပါ။ (ညီသူရ ကျေးဇူး)

3) သူများရေးထားတဲ့ဇော်ဂျီဖွန့်ကိုကြည့်ဖို့ရာလဲ Zawgyi to Unicode 5.1 UserScript လေးရှိပြီးသားပါ။ ( ကိုစိုးမင်း ကျေးဇူး)
ကျနော်ရေးထားတာ မမြင်ဘူးဆိုလဲ ကိုစိုးမင်းရဲ့ script ကိုအသုံပြုပြီး ကြည့်နိုင်ပါတယ်။

4) Facebook friends တွေနဲ့လဲ English conversation နဲ့ communicate လုပ်လို့ရပါသေးတယ်။

လောလောဆယ် testing ကာလမှာ မြန်မာ၃ နဲ့ Ubuntu မှာ အိုကေနေပါတယ်။

Ubuntu Linux မွာ ျမန္မာဖြန့္သြင္းနည္း

ျမန္မာဖြန့္အတြက္ ျကိုက္နွစ္သက္ရာဖြန့္ကို Ubuntu Linux မွာ Install လုပ္နိုင္ပါတယ္။ ဒီ guide မွာ ေဇာ္ဂ်ီဖြန့္ကို ဥပမာနမူနာထားျပီး သြင္းမွာျဖစ္ပါတယ္။

ေဇာ္ဂ်ီဖြန့္နဲ့ Install script အထုတ္အပိုးကိုရယူျခင္း
အရင္ဆံုး zawgyi-keyboard.googlecode.com မွာ သြားျပီး zawgyi-keyboard package ကို download လုပ္ပါ။



zawgyi-keyboard package ျဖစ္တဲ့ latest version : zawgyi_keyboard-0.3.3.tar.gz ကိုရယူလိုက္ပါ။ ျပီးရင္ အဲဒီ package ကို ကိုယ့္ရဲ့ Desktop ေပာ္မွာထားလိုက္ပါ။

Install Script နွင့္ ေဇာှဂ်ီဖြန့္ ေဇာှဂ်ီကီးဘုတ္ သြင္းျခင္း

Terminal ကိုဖြင့္ပါ။ Terminal က Applications > Accessories > Terminal မွာပါ။



Terminal က ေအာက္ကလိုပြင့္လာမယ္။



Terminal ကိုဖြင့္ရတဲ့အေျကာင္းရင္းက က်ေနာ္တို့ command line နဲ့ zawgyi keyboard ကို install လုပ္မလုိ့ပါ။ command line ဆိုလို့ ခက္ခက္ခဲခဲ command ေတြ မွတ္သားထားရမယ္လို့ သိရမယ္လို့ မထင္ လိုက္ပါနဲ့။ ခုသံုးမယ့္ commands ေတြက တကယ့္ child play ေတြပါ။ copy'n'paste လုပ္ျပီး သြားလဲရပါတယ္။
အခု က်ေနာ္တို့ Terminal ကေန zawgyi-keyboard package ထားရွိရာ Desktop ဆိုတဲ့ ေနရာကိုသြားရေအာင္ cd လို့ေခာ္တဲ့ (change directory) command ကိုသံုးပါမယ္။ Terminal ထဲမွာ ေအာက္က command line ကို copy'n'paste လုပ္ေပးလိုက္ပါ။ command ေရွ့က $ (dollar sign) ကို copy လုပ္စရာမလိုဘူးေနာ္။

$ cd ~/Desktop

ခုဆိုရင္ က်ေနာ္တို့ စိတ္ထဲက virtual နည္းနဲ့ Terminal ကေန Desktop ဆိုတဲ့ေနရာကိုေရာက္ပါျပီ။ က်ေနာ္တို့ ls ဆိုတဲ့ (list) command ကိုဆက္သံုးျပီး Desktop ေပာ္မွာေရာ ကိုယ္ထားတဲ့ zawgyi-keyboard package ရွိ မရွိကို ျပန္စမ္းစစ္ျကည့္တဲ့သေဘာပါ။

$ ls

ls ဆိုတာက list ဆိုတဲ့ သေဘာကိုေဆာင္တဲ့အတြက္ Desktop ေပာ္မွာရွိသမ်ွ files, pictures စတာေတြကို list လုပ္သလိုေဖာ္ျပေပးမွာပါ။ က်ေနာ္တို့ထားထားတဲ့ zawgyi_keyboard-0.3.3.tar.gz ရွိတယ္ဆိုပါေတာ့ ကဲ ဘာဆက္လုပ္ရမလဲ? အဲဒီ package က tar ဆိုတဲ့ program ငယ္နဲ့ ခ်ုံ့ထားတဲ့အတြက္ က်ေနာ္တို့ အဲဒါကို ျပန္ျဖည္ေပးဖို့လိုအပ္တယ္။ ဒါမွ အထဲမွာ ဘာရွိလဲဆိုတာ သိနိုင္မွာပါ။ အထဲကဟာေတြ ဘာေတြလဲ သိမွ ဆက္ျပီး အလုပ္လုပ္လို့ရမွာပါ။ ေအာက္က command ကို ကိုယ့္ရဲ့ Terminal ထဲမွာ copy'n'paste လုပ္ျပီး Enter ေခါက္ျပီး run လိုက္ပါ။

$ tar xzf zawgyi_keyboard-0.3.3.tar.gz

ဒီ command line မွာ tar ဆိုတာက zip program လိုမ်ိုး ဖိုင္ေတြကို achive, extract လုပ္ေပးတဲ့ Unix & Unix-Like system ေတြမွာ အသံုးမ်ားတဲ့ program ငယ္ပာ။ xzf ဆိုတာက options ေတြပာ။ options တစ္ခုခ်င္းစီရဲ့လုပ္ေဆာင္ခ်က္ကို သိခ်င္ရင္ ဒီ $ tar –h ဒာမွမဟုတ္ $ tar --help ကို Terminal ထဲရိုက္ျပီး ျကည့္လိုက္ပာ။ ေနာက္တမ်ိုးက man ဆိုတဲ့ program နဲ့လဲ သက္ဆိုင္ရာ program ေတြရဲ့ manual pages ေတြကို ျကည့္လို့ရပာေသးတယ္။ ဥပမာ $ man tar လို့ Terminal ထဲမွာရိုက္ျပီး tar program ရဲ့ manual ကို ျကည့္နိုင္ပာေသးတယ္။ ဒီေနရာမွာ ျကားျဖတ္ေျပာရမယ္ဆိုရင္ tar xzf zawgyi လို့ Terminal ထဲမွာရိုက္ျပီးခ်ိန္မွာ keyboard ေပာ္က Tab key ကိုေခါက္ျကည့္ပါ။ Bash Shell ရဲ့ autocomplete က ေနာက္ကဆက္လိုက္ပါလာတဲ့ _keyboard-0.3.3.tar.gz ကို သူ့ဟာသူျဖည့္သြားေပးမွာပါ။ ဒီလုိဆိုရင္ command line ကို type ရတာလဲ သက္သာျပီး အမွားလဲ နည္းနိုင္ပါတယ္။ ခဏကေျပာတဲ့ Bash Shell ဆိုတာက Bourne-again Shell ပာ။ Linux Distributions ေတြတိုင္းမွာလိုလို Default shell အေနနဲ့ပာလာတက္ပာတယ္။ Ubuntu Linux မွာက Definitely အဲဒီ shell ကိုအသံုးျပုပာတယ္။
ကဲ tar ball ျဖည္ျပီးရင္ ဘာဆက္လုပ္ရမလဲ? က်ေနာ္တို့ ls ကိုသံုးျပီး Desktop ေပာ္မွာ ဘာေတြျဖစ္ပ်က္သြားလဲ ျကည့္ရေအာင္ Terminal ထဲမွာ ls ကို ရိုက္ထည့္ျပီး Enter ေခါက္ျကည့္ရေအာင္..

$ ls

ဘာေတြ့မလဲဆိုေတာ့ zawgyi ဆိုတဲ့ folder တစ္ခုတိုးလာတဲ့အတြက္ zawgyi ဆိုတာကိုေတြ့လိမ့္မယ္။
ဟုတ္မဟုတ္ ကိုယ့္ Desktop ကို ျပန္ျကည့္နိုင္တယ္။ zawgyi folder ကိုေတြ့မွာပါ။ က်ေနာ္တို့ zawgyi folder ထဲကို Terminal ထဲကေန ေအာက္က command သံုးျပီး ဆက္ဝင္ရေအာင္ ..

$ cd zawgyi

Terminal ကေနဘာ error မွ မျပဘူးဆိုရင္ က်ေနာ္တို့ zawgyi folder ထဲေရာက္သြားပါျပီး။ zawgyi folder ထဲမွာ ဘာေတြပါလဲဆိုတာ ls နဲ့ က်ေနာ္တို့ ထပ္ျကည့္ပါအံုးမယ္။

$ ls

ေအာက္ကပံုကိုျကည့္ပါ။ ခင္ဗ်ားနဲ့ Terminal ထဲမွာလဲ ေအာက္ကပံုနဲ့ဆင္တူေတြ့မွာပါ။ Desktop ေပာ္မွာလဲ zawgyi folder ထြက္လာတာကိုလဲေတြ့မွာပါ။



ဒီအဆင့္ေရာက္ျပီးဆိုရင္ေတာ့ က်ေနာ္တို့ installation ကို စတင္လုပ္ေတာ့မွာပါ။ ဒီ package မွာ အားလံုးလြယ္ကူေစဖို့အတြက္ ေဇာ္ဂ်ီဖြန့္ေရာ လိုအပ္တဲ့ဖိုင္ေတြေရာ python script ေရာထည့္ထားေပးပါတယ္။ ခင္ဗ်ားက ထည့္ထားေပးတဲ့ zawgyi_keyboard.py ဆိုတဲ့ python script ကို run ျပီး install လုပ္တာတို့ remove လုပ္တာတို့ font upgrade လုပ္တာတို့ လုပ္နိုင္ပါတယ္။ အရင္ဆံုးအဲဒီ script ကို run ရေအာင္ ေအာက္က command line ကို run ေပးပါ။

$ sudo python zawgyi_keyboard.py

ဒီ command line မွာ sudo ဆိုတာ sudoer (super user) အသံုးျပုအေနနဲ့ run မယ္လို့ ေျပာတာပါ။ ေနာက္ကဆက္လိုက္လာတဲ့ python ဆိုတာ Python လို့ နာမည္ရတဲ့ Interpreter ပါ။ ဘာလို့ Python Interpreter ကို zawgyi_keyboard.py ရဲ့အေရွ့မွာခံျပီး run လဲဆိုေတာ့ .py extension ပါတဲ့ zawgyi_keyboard.py ဟာ Python Programming အသံုးျပုျပီးေရးသားထားတဲ့ ဖိုင္ျဖစ္သလို့ Python ဆိုတဲ့ command ကိုသံုးမွ Python Interpreter က zawgyi_keyboard.py script ကို ကြန္ျပူတာနားလည္ေအာင္ လုပ္ေဆာင္ေပးနိုင္ေအာင္လို့ပါ။ ကဲက်ေနာ္တို့ install လုပ္တဲ့ အလုပ္ဆက္လုပ္ရေအာင္။ ေအာက္ကပံုကို ျကည့္ပါ။ ပံုထဲကအတိုင္း zawgyi_keyboard.py script က စတင္ run ေနပါျပီး။ ကိုယ့္ Terminal ထဲမွာလဲ ျကည့္ပါ။ ဘာစာသားေတြေဖာ္ျပေနျပီး ဘာ information ေတြ ခင္ဗ်ားကို ေပးေနသလဲဆိုတာ ေလ့လာပါ။



အဲဒီထဲမွာ install, remove, help, exit .. စတာေတြကိုေတြ့ရမွာပါ။ က်ေနာ္တို့က install လုပ္ခ်င္တဲ့အတြက္ Install လုပ္ဖို့ရရာ small letter i ကို နွိပ္ေပးရမွာျဖစ္ပါတယ္။ s ကို နွိပ္ပါက show font ဆိုတဲ့ function ကို ေခာ္တဲ့အတြက္ လက္ရွိစက္ထဲကို install လုပ္လိုက္တဲ့ဖြန့္နဲ့ Web မွာေနာက္ဆံုးထြက္ရွိေနတဲ့ font ကိုယွဥ္ျပ ေပးမွာပါ။ ဒါေပမယ့္ ကိုယ့္စက္မွာ အင္တာနက္ခ်ိတ္ဆက္ထားမွ အဲဒီ function ကအလုပ္လုပ္မွာပါ။ က်ေနာှတို့ Install လုပ္ရေအာင္ i ကို keyboard ကေနရိုက္ျပီး Enter ေခာက္လိုက္ပာ။ အဲဒာဆိုရင္ Python script က ေဇာှဂ်ီဖြန့္နဲ့ ေဇာှဂ်ီကီးဘုတ္ကို သက္ဆိုင္ရာေနရာဆီကို copy လုပ္ေပးျခင္းအားျဖင့္ Install လုပ္ေပးမွာပာ။



ခုဆိုရင္ ခင္ဗ်ားစက္ထဲမွာ ေဇာ္ဂ်ီဖြန့္နဲ့ ေဇာ္ဂ်ီကီးဘုတ္ေရာက္ေနပါျပီး။ ေဇာ္ဂ်ီနဲ့ေရးထားတဲ့ အင္တာနက္စာမ်က္နွာတို့ ျကည့္နိုင္ပါျပီး။ က်န္တဲ့ options ေတြကိုလဲ လိုအပ္ရင္လိုအပ္သလို ခ်က္ခ်င္းကို run နိုင္ပာတယ္။ ဒာမွဟုတ္ ဒီ running script ကို exit လုပ္ျပီးမွ ျပန္ run လိုကလဲ ျပန္ run ျပီး install, remove, upgrade စတာေတြကို ဆက္လုပ္ေပးလို့ရပာတယ္။ ေအာက္ကပံုေလ့လာျခင္းအားျဖင့္လဲ သိနိုင္ပာတယ္။



က်ေနာှတို့ ဖြန့္နဲ့ကီးဘုတ္ကိုသြင္းေပးျပီးတဲ့ေနာက္မွာ စာရိုက္ဖို့အတြက္ US ကီးဘုတ္ကေန MMR ကီးဘုတ္ေျပာင္းဖို့အတြက္ Keyboard Indicator ကို အသံုးျပုဖို့လိုအပ္ပာမယ္။ အဲဒီ Keyboard Indicator ကို ျမင္သာေအာင္ Panel ေပာှမွာ အရင္တင္ရေအာင္ Panel ေပာှမွာ mouse pointer ေထာက္ျပီးေတာ့ Right Click နွိပ္လိုက္ပာ။





အေပာှကပံုမွာေပာှလာတဲ့ ဿPop-Up Menu ထဲက Add to Panel… ဆိုတာကို Left Click နွိပ္ေပးလိုက္ပာက ေအာက္က ပံုအတိုင္း ထပ္ေပာှလာမယ္။



အဲဒီအထဲက scroll bar ကိုဆြဲခ်ျပီး ေအာက္ကပံုမွာျမင္ရတဲ့ Keyboard Indicator ဆိုတဲ့ဟာကို ေတြ့ေအာင္ရပာမယ္။



ပံုထဲကလို Keyboard Indicator ကို select လုပ္ျပီးရင္ေတာ့ ေအာက္နားေလးမွာရွိေနတဲ့ Add ဆိုတဲ့ button ကိုနွိပ္ေပးလိုက္ပာ။ အဲဒီခာမွာ ကိုယ့္ရဲ့ Panel ထဲမွာ USA ဆိုျပီး လက္ရွိကီးဘုတ္တေကဿငတကိုေဖာှျပ ေပးေနပာျပီ။



ဒီအဆင့္ေရာက္ရင္ က်ေနာှတို့ Myanmar Keyboard option ကိုလဲ Keyboard Indicator Program မွာထည့္မွာမို့ Panel ေပာှမွာ ေပာှေနတဲ့ USA ဆိုတဲ့ စာလံုးေပာှမွာ Right Click နွိပ္ေပးလိုက္ပာ။ ေအာက္က ပံုအတိုင္းျမင္လာပာမယ္။



ပံုထဲမွာျမင္တဲ့ Pop-Up Menu ကေနပဲ Keyboard Preferences ကိုဆက္ျပီး Left Click နွိပ္ေပးလိုက္ပာက ေအာက္ပံုအတိုင္း Keyboard Preferences Windows ငယ္ေလးေပာှလာပာမယ္။



အေပာှမွာျမင္ရတဲ့ ပံုထဲက Layouts Tab ကို သြားလိုက္ရင္ ေအာက္ကပံုအတိုင္း Layouts Tab Window ဆီကိုေရာက္သြားမယ္။



ပံုထဲမွာ Keyboard Layout အသစ္ကိုထည့္ဖို့အတြက္ Add.. ဆိုတဲ့ button ကိုေတြ့လိမ့္မယ္။



Add.. button ကိုနွိပ္လိုက္ပာက ေအာက္ကပံုအတိုင္း Choose a Layout ဆိုတဲ့ Window အသစ္တခုထပ္ေပာှလာပာမယ္။



ပံုထဲမွာ Afghanistan ဆိုတဲ့ button မွာ down arrow ျမွားေလးပာ။ က်ေနာှတို့က Myanmar Keyboard Layout ကိုသံုးခ်င္တာဆိုေတာ့ Myanmar ဆိုတာကို down arrow ကိုနွိပ္ျပီး scroll down လုပ္ရင္း ရွာပာမယ္။ Myanmar ကိုေတြ့ရင္ Left Click နွိပ္ျပီး ေရြးခ်ယ္ေပးလိုက္ပာ။ ေအာက္ကပံုအတိုင္းျမင္ရပာမယ္။



အေပာှကပံုမွာျမင္ရတဲ့အတိုင္း Add button ေလးကိုနွိပ္ေပးလိုက္တဲ့အခာ Keyboard Preferences Layouts Tab မွာ USA ျပီးေတာ့ Myanmar ဆိုတာေပာှလာမွာပာ။



ဒာဆိုရင္ က်ေနာှတို့စက္မွာ USA ေရာ Myanmar ကီးဘုတ္ေရာ အသံုးျပုလို့ရေနပာျပီ။ ေနာက္တစ္ခုထပ္လုပ္ေပးဖို့လိုေသးတာက အဲဒီ ကီးဘုတ္နွစ္ခုအတြက္ ဘာ keys အသံုးျပုျပီး ကီးဘုတ္ေျပာင္းမလဲ ဒာမွမဟုတ္ keyboard layout ကို နွစ္ခုအျကား switch လုပ္ဖို့ ဘာ shortcut keys အသံုးျပုမလဲဆိုတဲ့ Layout Options setting ေလးထားေပးဖိုပာ။ အဲလိုထားေပးလိုက္ျခင္းအားျဖင့္ shortcut keys ေလးကိုနွိပ္ေပးရံုနဲ့ ဘီးဘုတ္ေျပာင္းလဲသြားေစပာတယ္။ ဒာေျကာင့္ အေပာှကပံုမွာျမင္ရတဲ့ Layout Options button ေလးကိုဆက္နွိပ္ေပးျပီး Keyboard Layout Options ဆီကိုသြားရေအာင္။ ေအာက္ကအတိုင္း Keyboard Layout Options Window ငယ္ထပ္ေပာှလာပာမယ္။ အဲဒီအထဲမွာ ကိုယ္နွစ္သက္ရာ option ကိုေရြးခ်ယ္နိုင္ပာတယ္။



Key(s) to change layout ထဲမွာ ကိုယ္ျကိုက္တဲ့ keys အတြဲကိုေရြးခ်ယ္ေပးျပီးရင္ေတာ့ ဖြင့္ထားတဲ့ Keyboard Layout Windows ေတြကို ပိတ္နိုင္ပာျပီ။ အရင္က ေဇာှဂ်ီဖြန့္နဲ့ေရးထားတဲ့ အင္တာနက္စာမ်က္နွာေတြ ဖိုင္ေတြကို ေဇာှဂ်ီဖြန့္နဲ့ အမွန္အတိုင္းျမင္ရတဲ့အဆင့္ကေန ခု ေဇာ္ဂ်ီကီးဘုတ္နဲ့လဲ စာရိုက္နိုင္ပါျပီး။ ေအာက္က ပံုကိုျကည့္ပါ။ ေဇာ္ဂ်ီကီးဘုတ္က မွန္မွန္ကန္ကန္ေပါ္ျခင္းရွိ မရွိ gedit ဆိုတဲ့ Text editor နဲ့ စမ္းရိုက္ျကည့္တာပါ။



ဒာဆိုရင္ က်ေနာှတို့ရဲ့ Ubuntu Linux မွာ ေဇာှဂ်ီဖြန့္ကိုျမင္ရျပီး ေဇာှဂ်ီကီးဘုတ္နဲ့ရိုက္နိုင္ပာျပီ။

အေပာှက နမူနာနည္းနာအတိုင္း myanmar3 unicode ဖြန့္ကိုလဲ သြင္းနိုင္ပာတယ္။ myanmar3 unicode font နဲ့ package ကိုေတာ့ mm3-keyboard package လို့ေခာှျပီး ခု lastest version က mm3-keyboard-0.1.1.tar.gz ပာ။ အဲဒီ package ကို zawgyi-keyboard.googlecode.com မွာ ရယူ download နိုင္ပာတယ္။ အဲဒီ zawgyi-keyboard project မွာရွိတဲ့ keyboard packages ေတြကေတာ့ free of charge ပာပဲ။ အလကားေပးပာတယ္။ ကိုေစတန္နဲ့က်ေနာှတို့က ကိုယ့္အတြက္ကိုယ္လုပ္ရင္း သူမ်ားကိုလဲ ေဝငွေပးတဲ့သေဘာပာပဲ။ အားလံုးလြတ္လြတ္လပ္လပ္ယူသံုးနိုင္ပာတယ္။

download PDF

Enjoy!

ssh to FreeBSD within local network

က်ေနာ့္ FreeBSD စက္ထဲကို local network အတြင္းမွာရွိတဲ့ အျခားစက္ကေန ဥပမာ ubuntu ကေန ssh နဲ့ login ဝင္တာေလးပါ။ certificate authentication နည္းနဲ့ ဝင္တာပါ။ ဒီေနရာမွာ FreeBSD က Server သေဘာမ်ုိးသက္ေရာက္ျပီး Client Ubuntu စက္ကေန ဝင္မွာပါ။ FreeBSD က Server သေဘာမ်ုိးဆိုတာ့ ssh daemon run ေနဖို့လိုအပ္ပါတယ္။ အဲဒီအတြက္ က်ေနာ္တို့ /etc/rc.conf ဖိုင္မွာ enable လုပ္ေပးျပီး daemon ကို run ရေအာင္ ..

Enable sshd
# echo 'sshd_enable="YES"' >> /etc/rc.conf
# /etc/rc.d/sshd start

ျပီးရင္ rsa keys မထုတ္ရေသးရင္ generate လုပ္ေပးရေအာင္ ေအာက္က command ကို run ပါမယ္။ က်ေနာ္တို့ normal user အေနနဲ့ ထုတ္မွာျဖစ္လို့ root user ကေန exit လုပ္ေပးပါ။

$ ssh-keygen -t rsa

အဲဒါဆိုရင္ က်ေနာ္တို့ .ssh/id_rsa နဲ့ .ssh/id_rsa.pub ဖိုင္ေတြကို ကိုယ့္ရဲ့ home directory ထဲမွာေတြ့မွာပါ။ ျပီးရင္ က်ေနာ္တို့ certificate authentication နည္းသံုးမွာျဖစ္တဲ့အတြက္ id_rsa.pub ဖိုင္ကို authentication keys အေနနဲ့ ေျပာင္းရေအာင္ ေအာက္က command ကို run ေပးပါမယ္။

$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

ျပီးရင္ က်န္တဲ့ ~/.ssh/id_rsa ဆိုတဲ့ private key ကို ကိုယ့္ usb disk ထဲပဲျဖစ္ျဖစ္ internet ေပာ္ လံုျခံုတဲ့ ကိုယ္ပဲ access လုို့ရနိုင္မယ့္ေနရာထဲ ကူးထည့္ ဒါမွမဟုတ္ upload လုပ္ျပီး အျခား Client အေနနဲ့သံုးမယ့္ စက္ထဲကို copy ကူးထည့္ေပးပါ။ ဥပမာ က်ေနာ္က အဲဒီ private key ကို က်ေနာ့္ ubuntu စက္ထဲကို ကူးထည့္ေပးလိုက္မယ္။ ဘယ္ေနရာမွာကူးထည့္ေပးရမလဲဆိုေတာ့ ~/.ssh directory ေအာက္ကိုပါ။ အဲလိုကူးထည့္ျပီးဆိုရင္ေတာ့ ~/.ssh/id_rsa အေနနဲ့ေတြ့မွာပါ။ အဲဒါေတြလုပ္ေပးျပီးရင္ေတာ့ က်ေေနာ္တို့ FreeBSD Server ထဲကို Client Ubuntu ကေန ဝင္နိုင္ပါျပီး။ ေအာက္ကနမူနာ command ေလးနဲ့ ဝင္လို့ရပါတယ္။

$ ssh user@freebsd

ေအာက္ကနမူနာ Screenshots ေလးေတြကို ျကည့္ပါ။

copy key to client and use ssh

accept keys and being asked for private key password

after giving password, passed through to FreeBSD

now I can go anywhere

freebsd-update fetch

ဘယ္ေလာက္လြယ္ကူသလဲ!

References:
OpenSSH

Enjoy!

using PuTTY to login Ubuntu via OpenSSH

Windows XP ကေန PuTTY အသံုးျပုျပီး Ubuntu စက္ထဲကို login ဝင္ရတာ လြယ္ကူပါတယ္။ ဒီေနရာမွာ က်ေနာှ ဗမာလိုေလး အျကမ္းေလးေရးေပးမယ္၊ ျပည့္ျပည့္စံုစံုကိုေတာ့ အကိုးအကားလင့္မွာျကည့္ပါ။ ပထမဦးစြာ PuTTY Download Page ကေန putty.exe နွင့္ puttygen.exe နွစ္ခုကို Windows XP ေပါှမွာ အရင္ဆံုး download လုပ္ထားနွင့္ပါ။ ျပီးရင္ Ubuntu စက္မွာ openssh-server နွင့္ openssh-client နွစ္ခုကို install လုပ္ေပးပါ။

$ sudo apt-get install openssh-server openssh-client

ျပီးရင္ Terminal မွာပဲ ssh-keygen လို့ရိုက္ေပးျပီး ssh-keys ေတြကို ထုတ္ေပးပါ။ passphase ကိုေမးတဲ့အခါ ကိုယ့္ရဲ့ လွို့ဝွက္ကုတ္တစ္ခုခုကိုရိုက္ထည့္ေပးျပီး အဲဒီ password ကိုမွတ္သားထားပါ။
အဲလိုထုတ္ေပးလိုက္တဲ့ id_rsa နဲ့ id_rsa.pub keys ေတြဟာ ~/.ssh ေအာက္မွာရွိေနမွာပါ။ အဲဒီ ကီးေတြကို copy ကူးယူျပီး Windows XP စက္ဆီသို့ယူလာပါ။

$ ssh-keygen
$ cd ~/.ssh
$ ls

ေအာက္က ေဖာှျပပါပံုေတြကေတာ့ Ubuntu ေပါှမွာ လုပ္ေဆာင္ေပးရသမ်ွပါ။



က်ေနာှတို့ အခု Windows ေပါှမွာလုပ္စရာရွိတာေတြလုပ္ေတာ့မွာပါ။ PuTTy က OpenSSH ကထုတ္ေပးလိုက္တဲ့ ကီးေတြကို တိုက္ရိုက္အသံုးျပုလို့ မရပါဘူး။ အဲဒါေျကာင့္ id_rsa ကီးကို id_rsa.ppk ကီးျဖစ္လာေအာင္ puttygen.exe အသံုးျပုျပီးေတာ့ convert လုပ္ေပးရမွာျဖစ္ပါတယ္။ ပထမတုန္းက က်ေနာှတို့ download လုပ္ထားျပီးသားျဖစ္တဲ့ puttygen.exe ကို double-click နွိပ္ေပးျပီး ဖြင့္ပါ။



ပံုထဲမွာျမင္ရတဲ့အတိုင္း File >> Load private key ကိုနွိပ္ေပးပါက ဖိုင္ေတာင္းခံတဲ့ Dialog Window ေလးေပါှလာပါမယ္။ အဲဒီအခါမွာ Ubuntu စက္ဘက္ကေန ကူးယူလာတဲ့ id_rsa ကိးကို ဖြင့္ေပးပါ။ အဲလိုဖြင့္တာနဲ့ ကိုယ့္ရဲ့ passphase ကိုေတာင္းခံပါလိမ့္မယ္။ ကီးထုတ္စဉ္က သြင္းေပးခဲ့တဲ့ password ေလးကို ရိုက္သြင္းေပးတဲ့အခါ ကိုယ့္ရဲ့ id_rsa ကီးကပြင့္ပါမွာပါ။ တဆက္တည္း Save private key ဆိုတဲ့ button ကိုနွိပ္ေပးျပီး တစ္ေနရာမွာ သိမ္းလိုက္ပါ။ အဲဒါဆိုရင္ id_rsa.ppk ကီးအေနနဲ့ saved လိုက္တာေတြ့ရမယ္။


putty.exe ကိုဖြင့္ပါ။ PuTTY Configuration Window ေပါှလာပါမယ္။


ဘယ္ဘက္မွာျမင္ရတဲ့ Connection >> SSH >> Auth ကိုနွိပ္ရင္ အေပါှကပံုအတိုင္းျမင္ရမွာပါ။ အဲဒီမွာ Browse ဆိုတဲ့ button နွိပ္ပါ။ ကိုယ့္ရဲ့ id_rsa.ppk ကီးရွိရာကိုသြားျပီး ဖြင့္ေပးလိုက္တဲ့အခါ အဲဒီကီးမွာ သိမ္းထားတဲ့ ကိုယ့္ Ubuntu စက္ရဲ့အခ်က္အလက္ေတြကိုအသံုးျပုျပီး Ubuntu ကို login စလုပ္ပါမယ္။ ကိုယ့္ရဲ့ login name နွင့္ password ကိုရိုက္ထည့္ေပးလိုက္ရင္ ေအာက္ကပံုအတိုင္း login ဝင္သြားပါမယ္။

 
 

ျပီးရင္ ပံုမွန္ Linux ေပါှမွာအလုပ္လုပ္တဲ့အတိုင္း လုပ္နိုင္ပါျပီ။


ပိုျပီးအေသးစိတ္သိခ်င္ရင္ေတာ့ အကိုးအကား ကိုဖြင့္ဖတ္နိုင္ပါတယ္။

Enjoy it!

how to upgrade zawgyi font with zawgyi_keyboard.py

မေန့က ကိုစိုးမင္းရဲ့ development version `new zawgyi font` Zawgyi-One_2009_August_5_rev01 ထြက္ပါတယ္။ ဒီ font အသစ္ကို zawgyi_keyboard.py script နဲ့ ဘယ္လို update လုပ္တယ္ဆိုတာ users မ်ား ပိုရွင္းသြားေအာင္ ရွင္းျပပါမယ္။

ပထမဦးဆံုး font ကို ေအာက္ကလင့္ကေန download လုပ္ယူုပါ...

http://newzawgyi.googlecode.com/svn/font.file/

download လုပ္ျပီးလို့ font က Desktop ေပါ္မွာ ရွိမယ္ေပါ့၊ new font ကို executable ျဖစ္ေအာင္ 'chmod' နဲ့အရင္ဆံုး ေျပာင္းထားမယ္၊ Terminal ကိုဖြင့္ျပီး ဖြန့္ရွိရင္ Desktop ဆီကို directory change ျပီး ေအာက္က command line နဲ့ executable mood ကိုေျပာင္းမယ္။

$ cd ~/Desktop
$ chmod 755 Zawgyi-One_2009_August_5_rev01.ttf


ေအာက္ကပံုကိုျကည့္ရင္ သိတာပါတယ္ chmod က excutable ျဖစ္ျပီးရင္ အမဲေရာင္ကေန အစိမ္းေရာင္ေျပာင္းသြားတာကို သတိထားမိျခင္းအားျဖင့္ သိသာပါတယ္။

[caption id="attachment_275" align="alignnone" width="480" caption="downloaded font and change executable mood"]downloaded font and change executable mood[/caption]


update လုပ္မယ့္ new font ကို ျပင္ဆင္ျပီးရင္ေတာ့ က်ေနာ္တို့ zawgyi_keyboard.py script ကို run ဖို့ျပင္ဆင္ရေအာင္ ထံုးစံအတိုင္း source package ကိုျဖည္ ျပီးရင္ source directory ထဲ၀င္ျပီး python နဲ့ script ကို run ရေအာင္။ source package ကိုျဖည္ျပီးသားျဖစ္ရင္ေတာ့ ေအာက္က steps ေတြကိုေက်ာ္သြားနိုင္ပါတယ္။ ေနာက္တစ္ခုက ဒီ zawgyi-keyboard-0.3.0 package ကေန install မလုပ္ရေသးရင္ i ကိုနွိပ္ျပီး အရင္ install ေပးလိုက္ျခင္းအားျဖင့္ font upgrading process ကို အကူအညီျဖစ္ေစမွာပါ။ ေအာက္က steps ေတာ့ zawgyi-keyboard-0.3.0.tar.gz ကိုျဖည္ျပီး zawgyi source directory ထဲ ၀င္ျပီး zawgyi_keyboard.py script ကို python နဲ့ စတင္လိုက္တာပါ။ package ကိုထံုးစံအတိုင္း Desktop ေပါ္မွာရွိတယ္လို့ ယူဆမယ္ေနာ္...

$ cd ~/Desktop
$ tar xzf zawgyi-keybaord-0.3.0.tar.gz
$ cd zawgyi


[caption id="attachment_276" align="alignnone" width="480" caption="preparing zawgyi_keyboard.py script to run"]preparing zawgyi_keyboard.py script to run[/caption]

ေအာက္မွာ zawgyi_keyboard.py ကို စတင္ run ျပီးတဲ့ေနာက္ u ကိုနွိပ္ျပီး font update လုပ္ဖို့ စတင္ျပီး downloaded font path directory ကိုေမးတဲ့ပုံပါ...

$ sudo python zawgyi_keyboard.py


pressed `u` for font update

pressed `y` for confirm continuous


[caption id="attachment_277" align="alignnone" width="480" caption="starting zawgyi_keyboard.py script"]starting zawgyi_keyboard.py script[/caption]

[caption id="attachment_278" align="alignnone" width="480" caption="proceeding font update"]proceeding font update[/caption]

ဒီေနရာမွာ downloaded font ရဲ့တည္ရွိရာ directory ကိုေမးတဲ့အတြက္ က်ေနာ္တို့က font ရွိရာေနရာကို ရိုက္သြင္းေပးရမယ္...
က်ေနာ္တို့အေပါ္က ျပင္ဆင္ထားျပီးသားရွိျပီးသားမို့ တည္ရွိရာ ေနရာက `/home/box02/Desktop` ကို ရိုက္ထည့္ေပးလိုက္ပါတယ္။

Enter you downloaded font directory : /home/box02/Desktop

ျပီးရင္ program က installed font နဲ့ download new font ကိုယွဥ္ျပပါမယ္၊ ေအာက္က ပံုမွာေတြ့တဲ့အတိုင္း ..

Your new given font is /home/box02/Desktop/Zawgyi-One_2009_August_5_rev01.ttf
Current installed font is ['/usr/share/fonts/zawgyi/Zawgyi-One_2009_Jul_30_rev01.ttf']

ဒီေနရာမွာ current installed font ထက္ new font က ပိုျပီး version ျမင့္တဲ့အတြက္ က်ေနာ္တို့က font upgrading ကို ဆက္လက္လုပ္ေဆာင္ဖို့အတြက္ y ကိုထက္နွိပ္ျပီး upgrading completed ျဖစ္ဖို့အတြက္ ထက္ျပီး confirm လုပ္ပါတယ္။

[caption id="attachment_279" align="alignnone" width="480" caption="entering new font directory path"]entering new font directory path[/caption]

[caption id="attachment_280" align="alignnone" width="480" caption="continuouing font upgrading and exit program"]continuouing font upgrading and exit program[/caption]

အဲဒါေတြျပီးတဲ့အခါမွာ zawgyi font install directory ကို control လုပ္ျကည့္ျခင္းအားျဖင့္ ကိုယ့္ဖြန့္အသစ္ေရာက္ရွိေနျပီျဖစ္ေျကာင္း သိနိုင္ပါတယ္။

$ ls /usr/share/fonts/zawgyi


[caption id="attachment_281" align="alignnone" width="480" caption="checking updated font"]checking updated font[/caption]

ခုဆို step by step font upgrading ျပီးပါျပီ :-)
ဒီ how to ကို ubuntu linux ေပါ္မွာ နမူနာျပထားပါတယ္။

enjoy it! :-)

vnstat on ubuntu 9.04

က်ေနာ္ vnstat ကို ဒီ ubuntu 9.04 စတင္ကတည္းက install လုပ္ထားပါတယ္၊ ကိုယ္႔ရဲ႕ bandwidth ဘယ္ေလာက္အသံုးျပဳထားလဲ ရံဖန္ရံခါျဖစ္ျဖစ္ သိခ်င္တဲ႔အခါျဖစ္ျဖစ္ ၾကည့္ႏိုင္ေအာင္ network traffic ကို track လုပ္ေပးတဲ႔ ဒီ vnstat program ငယ္ေလးကို ubuntu ေပၚမွာ install လုပ္ရေအာင္ ..

$ sudo apt-get install vnstat

အကယ္၍ အျခား user ေတြပါ သံုးလို႔ရေအာင္ဆိုရင္ ေအာက္က command lines ႏွစ္ခု ကိုပါ Terminal ထဲမွာ run ေပးလိုက္ပါ ..

$ sudo chmod o+x /usr/bin/vnstat
$ sudo chmod o+wx /var/lib/vnstat/


ၿပီးေတာ႔ ကိုယ္ monitor လုပ္မယ္႔ network interface (ဥပမာ eth0, eth1, etc.) ကို database နဲ႔ update လုပ္ေပးပါမယ္ ..

ဥပမာ က်ေနာ္႔ network interface က eth1 ဆိုပါေတာ႔ .. အဲဒါက်ေနာ္က ေအာက္က command line ေလးနဲ႔ database တစ္ခုတည္ေဆာက္ခဲ႔ပါတယ္ ..

$ vnstat -u -i eth1

အဲဒါေတြလုပ္ၿပီးၿပီးခ်င္း ခ်က္ခ်င္းႀကီးေတာ႔ database မွာ ဘာ data မွ မရွိေသးတဲ႔ အတြက္ vnstat ကို ေခၚရင္ result က ထြက္လာေသးမွာမဟုတ္ပါဘူး .. မိနစ္ အတန္ၾကာ ဒါမွမဟုတ္ နာရီအတန္ငယ္ၾကာၿပီးမွ vnstat result ကိုၾကည့္လို႔ရမွာပါ ..
vnstat program ငယ္ေလးကို ဘယ္လို သံုးရမယ္ဆိုတာကို --help option နဲ႔
Terminal ထဲမွာ ၾကည့္ႏိုင္ပါတယ္ ..

$ vnstat --longhelp

ေအာက္က screenshots ေတြကေတာ႔ က်ေနာ္႔ bandwidth ရဲ႕ results ေတြပါ ..

[caption id="attachment_191" align="alignnone" width="480" caption="vnstat result"]vnstat result[/caption]

[caption id="attachment_192" align="alignnone" width="480" caption="vnstat weekly and monthly results"]vnstat weekly and monthly results[/caption]

[caption id="attachment_193" align="alignnone" width="480" caption="vnstat hourly result"]vnstat hourly result[/caption]

Have a lot fun with vnstat! :-)

disable ipv6 on ubuntu 9.04

က်ေနာ္တို႔ ဖိုရမ္ထဲမွာ ဒီအေၾကာင္းေတြေဆြးေႏြးခဲ႔ၾကတယ္၊ ubuntu jaunty မွာ kernel အသစ္ကို install မလုပ္ပဲ ipv6 ကို disable လုပ္လို႔မရေၾကာင္းသိရွိရတယ္။ အဲဒါက ubuntu jaunty kernel v2.6.28 (default kernel) မွာ bug ရွိေနတယ္ ယူဆပါတယ္။ အဲဒါေၾကာင္႔ က်ေနာ္တို႔ kernel v2.6.29* နဲ႔ test လုပ္ၾကည့္ပါတယ္။ အဆင္ေျပခဲ႔ပါတယ္။ လုပ္နည္းေလးကို အတက္ႏိုင္ဆံုး တဆင္႔ခ်င္းေရးၾကည့္မယ္ေနာ္ ..

ပထမဦးဆံုး က်ေနာ္တို႔ kernel ကို download လုပ္ရမွာပါ .. ubuntu kernel ကို download လုပ္ဖို႔ repository က ေအာက္ကလင္႔ပါ ..

http://kernel.ubuntu.com/~kernel-ppa/mainline/

က်ေနာ္ test လုပ္တဲ႔ kernel က v2.6.29 ဆိုေတာ႔ ဒီေအာက္ကလင္႔မွာပါ ..

http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.29/

က်ေနာ္႔ ubuntu က i386 base ဆိုေတာ႔ က်ေနာ္ download ရမယ္႔ urls ေတြကို တစ္ခါတည္း စုၿပီး တခါတည္းဆက္တိုက္ download လုပ္မွာပါ .. ပထမဆံုး က်ေနာ္ downloaded files ေတြထားဖို႔အတြက္ Folder အသစ္တစ္ခုလုပ္ၿပီး nano နဲ႔ urls ေတြကို တဖိုင္တည္းမွာ စုၿပီး wget နဲ႔ download လုပ္ပါတယ္ ..

Making kernel downlaod urls file with nano

$ mkdir kernel-2.6.29
$ cd kernel-2.6.29
$ nano kernel-2.6.29.txt


[caption id="attachment_170" align="alignnone" width="480" caption="kernel download urls file make with nano"]kernel download urls file make with nano[/caption]

အဲဒီဖိုင္လုပ္ၿပီးၿပီဆိုရင္ က်ေနာ္ Terminal ထဲမွာပဲ wget နဲ႔ download လုပ္ပါတယ္

Downloading packages with wget in Terminal

$ wget -i kernel-2.6.29.txt


[caption id="attachment_171" align="alignnone" width="480" caption="downlond kernel*.deb by wget"]downlond kernel*.deb by wget[/caption]

ၿပီးေတာ႔ ရလာတဲ႔ packages ေတြကို Terminal ထဲကေနပဲ dpkg နဲ႔ install လုပ္ပါတယ္ ..

Installing packages with dpkg in Terminal

$ sudo dpkg -i *.deb


[caption id="attachment_172" align="alignnone" width="480" caption="installing packages by dpkg"]installing packages by dpkg[/caption]

install လုပ္တဲ႔အခါမွာ grub ကို update လုပ္စဥ္မွာ grub menu list ကို update လုပ္ဖို႔ေမးလာမွာပါ .. အဲဒီေတာ႔ က်ေနာ္က manually edit လုပ္ခ်င္တာနဲ႔ "keep the local version currently installed" ကိုေရြးလိုက္ပါတယ္ ..

[caption id="attachment_173" align="alignnone" width="480" caption="keep my grub menu.lst version"]keep my grub menu.lst version[/caption]

[caption id="attachment_174" align="alignnone" width="480" caption="done new kernel 2.6.29 installation"]done new kernel 2.6.29 installation[/caption]

ၿပီးေတာ႔ က်ေနာ္ grub menu list ကို manually edit လုပ္ပါတယ္ ..

Editing grub/menu.lst manually

$ gksudo gedit /boot/grub/menu.lst


ေအာက္က နမူနာနဲ႔ edit လုပ္ေပးရပါတယ္ ..

title Ubuntu 9.04, kernel 2.6.29-020629-generic
uuid 7362f3b7-70ef-4ae6-8c53-54fb13571d0f
kernel /boot/vmlinuz-2.6.29-020629-generic root=UUID=7362f3b7-70ef-4ae6-8c53-54fb13571d0f ro quiet splash ipv6.disable=1
initrd /boot/initrd.img-2.6.29-020629-generic
quiet


သတိထားရမွာက kernel version ရယ္ uuid ရယ္ ၿပီးေတာ႔ ipv6.disable=1 ရယ္ကိုပါ ..

[caption id="attachment_175" align="alignnone" width="480" caption="edit my grub/menu.lst manually"]edit my grub/menu.lst manually[/caption]

ၿပီးရင္ grub ကို update လုပ္ေပးရပါမယ္ ..

$ sudo update-grub


ၿပီးရင္ reboot လုပ္မယ္၊ system ထဲေရာက္ရင္ ipv6 က တကယ္ပဲ disable ျဖစ္လားမျဖစ္လား စမ္းစစ္ၾကည့္ပါမယ္ .. output မထြက္လာဘူးဆိုရင္ ဒါဟာ တကယ္ disable ျဖစ္တာပါပဲ ..

Checking ipv6 disable or not

$ ip a | grep inet*


$ ip a | grep inet6


[caption id="attachment_185" align="alignnone" width="480" caption="check ipv6 disable and kernel version"]check ipv6 disable and kernel version[/caption]

ref:

http://www.ubuntu-inside.me/2009/04/howto-disable-ipv6-at-ubuntu-jaunty.html

Have fun! :-)