හැඳින්වීම
හැමෝම පිළිගන්නවා අලුත් Post Series එකකට. මේ සිරීස් එක Android ගැනයි. Encryption Series එකත් වෙනම යන අතර මේකත් පටන්ගත්තේ එකම සබ්ජෙක්ට් එකක් ගැන කියවන එක වගේම ලියන මටත් එපා වෙන නිසා. හොඳයි, මම ෆේස්බුක් එකේ ඇහුවා කට්ටියගෙන් Android ගැන මුලින්ම ලියන්නේ Bootloader/Recovery ගැනද, Android Architecture එක ගැනද කියලා. කට්ටිය එක එක යෝජනා කරලා තිබුණ නිසා, මම මගේ පරමාධිපත්යය බලය 😂 පාවිච්චි කරලා තීරණය කළා පෝස්ට් පිළිවෙල මෙන්න මෙහෙම වෙන්න ඕන කියලා.Bootloader > Recovery > Android Architecture > Kernel >>> And so on 😬
මම Root කිරීම එහෙම ගැන මේ අස්සේ ගහන්න බලාපොරොත්තු වෙන්නෑ. ඒ ගැන වෙනම ලියන්නම්. කොහොමත් මම ලියන්න බලාපොරොත්තු වෙන්නෑ Root කරන්නෙ කොහොමද කියන එක ගැන එහෙම. මම ලියන්නම් Root කියන්නෙ මොකක්ද කියන එක Linux වලින්ම පටන්ගෙන 😬 මොකද Android කියන්නෙ Linux kernel එක පදනම් කළ Mobile OS එකක් නිසා. හරි එහෙනම්, මේකයි හැඳින්වීමේ අවසානය, අපි අද Bootloader එක සහ Recovery එක ගැන කරුණු ආවරණය කරන්න උත්සාහ දරමු.
Bootloader ගැන පොදු කතාව.
අපි පරිගණකයක Power Button එක එබුවම මොකක්ද වෙන්නේ? පරිගණකය පණගැන්වෙනවා, ඒ කොහොමද? මුලින්ම පරිගණකය කරන්නේ POST කරන එක. ලියුමක් නෙවෙයි ඈ. Power On Self Test කියන්නෙ ඒකට, මේවා මේ මොනාද මොන්ටිසෝරි පාඩම් නේ කියලා හිතයි දැන් කට්ටිය, කරන්න දෙයක් නෑ මොන්ටිසෝරි නොයා ඉස්කෝලෙ යන්න බෑ, ඉස්කෝලෙ නොයා කැම්පස් යන්න බෑ. ඉතින් අපි පිළිවෙලට යමු. Power On Self Test එකෙන් කරන්නේ පරිගණකයේ දෘඪාංග හරියට වැඩද කියලා පරීක්ෂා කිරීම කියලා ගොඩක් අය දන්නවා. ඒක කරන්නෙ BIOS චිපයෙන් නෙ,
අන්තිමට එයා හොයනවා මේ පරිගණකයේ Bootable media මොනා හරි තියේද කියලා, CD එකක්? Bootable Pen එකක්? Bootable Hard disk එකක්? ඔහොම හොය හොය ගියාම, සාමාන්ය අවස්ථාවේදී නම් පරිඝණකයේ ද්විතීක මතකයේ (බොහෝ විට Hard Drive එකේ) ගබඩා කරලා තියෙන MBR (Master Boot Record) එක හෝ GUID (Globally Unique Identifier) එක අහු වෙනවා. මේ MBR එක හෝ GUID දත්ත තියෙන්නේ Bootable Media එකේ පළමු බිට්ටු 512 ගබඩා වෙලා.
(අමතර කරුණක් :- MBR සහ GPT නොහොත් GUID Partition Table කියන ක්රම දෙක භාවිතා කරලා පුළුවන් ඔයාගෙ Bootable drives ෆෝමැට් කරගන්න. මේ දෙකේ සෑහෙන්න වෙනස්කම් තියෙනවා. මාතෘකාවෙන් පිට නිසා මේ ගැන වැඩි කතා නොකර ඉමු)ඉහත කිව්ව MBR/GUID පාටිෂන් ටේබල් වල ගබඩා වෙලා තියෙනවා බොහොම වැදගත් තොරතුරු දෙකක්.
- Bootloader
- Partition Table
(Android වල නම් ඇත්තටම bootloader එක ගබඩා වෙලා තියෙන්නේ /boot පාටිෂන් එකේ. ඉදිරියේ අපි පාටිෂන් ගැන මේ පොස්ස්ට් එකේ කතා කරනවා, ඒ නිසා මේ කතාව පටලගන්නැතුව අපි bootloader එක තියෙන තැන ගැන මින් මතුවට කතා නොකරම ඉමු.)අපේ ඉලක්කය මේ Bootloader එක නිසා අපි ඒ පැත්තට යමු. Partition ගැනත් ඉදිරියට කතා කරමු.
Bootloader එක කියන්නේ බොහොම කුඩා ප්රෝග්රෑම් එකක්. මේකෙන් කරන්නේ ද්විතීයික මතකයේ තියෙන දත්ත ටික අරගෙන ප්රධාන මතකයට (RAM එකට) මෙහෙයුම් පද්ධතිය load කරන එක. නමේම තියෙනවා නේ Boot-Loader 😬
අකමැත්තෙන් වුණත් අපේ Windows fan boys ලට වෙනවා මෙතනදි Linux ගැන ටිකක් ඉගෙනගන්න. මොකද Android කියන්නෙ Linux පාදක මෙහෙයුම් පද්ධතියක් නෙ. දැන් එතකොට කට්ටිය බලයි Windows වලට Bootloader එකක් නැද්ද කියලා. අපොයි තියෙනවා. ඒ ගැන අපි කතා කරන්න යන්නෑ මේකෙදි. 😂
මම ලිනක්ස් Bootloaders වලට උදාහරණ ටිකක් දෙන්නම් ආසයි නම් ඒ ගැන වැඩිදුර විස්තර Search පාරක් දාලා හොයාගන්න.
- GNU Grub
- Lilo
- BURG
- Syslinux
ඉතින් අපේ ෆෝන් වල තියෙන්නේ එකම OS එකක් නිසා සාමාන්යයෙන් අපිට මේ Bootloader එකේ හාංකවිසියක් දැනගන්න ලබෙන්නෑ. ඒත් අපිට නොපෙනී හොරෙන් මෙයා ලොකු වැඩක් කරනවා. ඒ මොකක්ද කියලා මම උඩ කියලා දුන්නා නෙ.
Android Bootloader එක ගැන.
Bootloader එක ගැන කියලා දෙන්න Android Partition ගැන කියලා නොදී බෑ. ඊළඟට අපි ඒ ගැන බලමු.
Android Partition
ඔයාලගෙ කම්පියුටර් වල Partition තියෙනවා වගේම අපේ Android වලත් තියෙනවා පාටිෂන්. පහළින් දාන්නම් ඒවා මොනාද කියලා. මේවා ඉස්සරහින් / මෙහෙම ඉරක් ගහනවා ඒක පාටිෂන් එකක් කියලා පෙන්නන්න. මොකද ලිනක්ස් පාටිෂන් නම් කරන සම්මත විදිය ඒකයි. ඒ නිසා ඒ ඇල ඉරට බය වෙන්න එපා හරිනෙ? 😂/boot
/recovery
/system
/data
/cache
/misc
/sdcard
"සෑහෙන්න වෙනස් සීන් එකක් නෙ බං 😑 අපේ කොම්පියුටර් වල නම් පාටිෂන් තියෙන්නේ C: , D: එහෙම කියලා මේ මොන ජල්බරියක් ද?" කියලා බලන්න එපා දැන්. මේ අපි යන්නෙ Windows එක්ක නෙවෙයි Linux එක්ක. ආයෙත් කියන්න ඕන Android කියන්නේ Linux පාදක මෙහෙයුම් පද්ධතියක්. මේ පාටිෂන් වල නම් ටික Linux user කෙනෙක්ට නම් එච්චර දේවල් නෙවෙයි. මම මේ එක එකක් ගැන බොහොම ස්වල්ප වශයෙන් කියලා දෙන්නම්.
/boot - මේ Partition එකේ ගබඩා කරන්නේ Kernel එක සහ ramdisk එක.Kernel එක ගැන විශාල කතාවක් ඉදිරියට එන්න නියමිතයි, ඒ නිසා ඒ ගැන හිතන්න එපා. ramdisk එක ගැන ඉස්සරහට කතා වෙනවා.
/recovery - මේ ගැන වෙනම ලියන්නම් මම ඊළඟ පෝස්ට් එකේ.
/system - මේකේ තමයි Kernel එක සහ ramdisk එක හැර සම්පූර්ණ Android OS එක වගේම System apps ටික ගබඩා වෙලා තියෙන්නේ. (Kernel එක සහ ramdisk එක කියන්නෙත් OS එකේ කෑලි, ඒවා දාලා තියෙන්නේ /boot පාටිෂන් එකට කියලා කලින් කිව්වා.)
/data - මෙන්න මේකෙ තමයි ෆෝන් එක පාවිච්චි කරන එකා ගොඩ ගහන කුණු කන්දල් සේව් වෙන්නෙ. මේකෙ සේව් වෙනවා ඔයාලා ඉන්ස්ටෝල් කරන ඇප්ස්, මැසේජස්, ඇප්ස් වලින් ගොඩගහන ඩේටා ආදී දේවල්. අනිත් දේ ඔයා හදන සෙටිංස් සේව් වෙන්නෙත් මේකට. මේ පාටිෂන් එක wipe නොහොත් සුද්ද කරලා දැමීමට අපි කියනවා ලොකුවටම Factory Reset / Master Reset කළා කියලා.
/cache - කෑෂ් මෙමරි ගැන ඔයාලා දන්නවා ඇති. අපි නිතර භාවිතා කරන දත්ත මේකේ ගබඩා කරලා තියාගන්නවා ඉක්මනින් ඒවට පිවිසෙන්න. ඕන නම් මේක ක්ලියර් කරලා දාන්න පුළුවන් මුකුත් අවුලක් වෙන්නෑ. ගොඩක් ෆෝන් වල මේක /data පාටිෂන් එක අස්සෙම ගහලා එවනවා.
/misc - මේ කොටසේ ගබඩා වෙන්නේ පද්ධතියේ සංකීර්ණ settings. ඉංගිරිසියෙන් කිව්වොත් miscellaneous system settings. මේකෙ ගබඩා වෙලා තියෙන්න පුළුවන් Carrier and Region Settings (CID) වගේ ඒවත්. දෘඪාංග සම්බන්ධ සැකසුම් එහෙමත්. මේ පාටිෂන් එක කෙළවගැනීම බොහොම බරපතළ අවුලක් වෙන්න පුළුවන්.
/sdcard - මේක නම් කට්ටිය දන්නවා ඉතින්. ෆෝන් එකේ මෙමරි කාඩ් එකක් නැත්නම්, මේ පාටිෂන් එකෙන් ඔයා ඩවුන්ලෝඩ් කරන දේවල් ආදිය නොයෙක් මගුල් තැම්පත් කරගන්න එක. මෙමරි කාඩ් එකකුත් තියේ නම්, තවත් පාටිෂන් එකක් කැඩෙනවා /sdcard2 වගේ නමකින්.
(මතක තියාගන්න, /cache /sdcard වගේ පාටිෂන් ගොඩක් ROM වල /Data පාටිෂන් එකේම උප කොටස් විදියට හදලා එවන බව. ඒක නිසයි Cache ක්ලියර් කරාම ඒකෙන් release වෙන ඉඩ ප්රමාණය /sdcard පාටිෂන් එකට එකතු වෙන්නේ.)
හරි, දෙයියනේ කියලා අපි දැන් වත් යමු ආයෙ Bootloader එකට.
Bootloader එක කරන වැඩේ.
ෆෝන් එක ඔන් වුණ ගමන් අපේ මේ Bootloader සගයා පරීක්ෂා කරනවා ෆෝන් එකේ මතකය, /boot පාටිෂන් එක විශේෂයෙන්. හැබැයි bootloader එක ගිහින් බලනකොට /boot පාටිෂන් එක හිස් නම්? නැත්නම් ඩේටා corrupt වෙලා නම්? මළ මගුලයි, ආපහු පිටිපස්සට දුවලා ගිහින් /recovery partition එක බලනවා, හුටා ඒකත් හිස් නැත්නම් data corrupt වෙලා, දැන් Bootloader එක බලනවා මේක ගොඩදාගන්න මොකෙක් වත් නෑ, /boot එකට ගිහින් බැලුවා ඒකෙ මෙලෝ මගුලක් නෑ, ඒකෙ kernel එක නැතුව කොහොමද මම OS එක බූට් කරන්නෙ ඉතින් /system පාටිෂන් එකේ OS එකක් තිබුණත් නැතත් වැඩක් නෑ ඒකෙ බලලා තේරුමක් නෑ නෙ. දැන් කවුරුත් නෑ, මම විතරයි කියලා හිතලා වහාම phone එක බූට් කරනවා Fastboot mode එකට. නැත්නම් Bootloader mode එකට, එහෙමත් නැත්නම් Download mode එකට. මේ ඔක්කොම එකයි.ඔන්න චූ යන මොහොත. ෆෝන් එකේ මුකුත් නෑ, කලු පාට තිරේක කැත ෆොන්ට් එකකින් අකුරු ගොඩක් වැටිලා, ෆෝන් එක ටච් වෙන්නෑ, දෙයියනේ මොකක්ද මේ වුණේ. 😂
එහෙම බය වෙන එක හරි සාධාරණයි. මොකද දැන් ෆෝන් එක තියෙන්නේ Critical state එකක. මෙහෙම වෙනවා ඔයාගෙ ෆෝන් එකේ විශාල Data corruption එකක් වීමෙන් හරි අත්වැරදීමෙන් පාටිෂන් ටිකට කෙළවීමෙන් හරි ඔයා හිතලම partition ටික wipe කිරීමෙන්.
ඔන්න ඔය Bootloader අවස්ථාවෙදි ඔයාට හැකියාව ලැබෙනවා ඔයාගෙ ෆෝන් එක USB cable එක ආධාරයෙන් fastboot / usb drivers install කරපු පරිගණකයකට සම්බන්ධ කරලා Recovery එක සහ OS එක ෆ්ලෑෂ් කරන්න.
(1.අනේ බය වෙන්න එපා flash කරනවා කියන්නේ ඉන්ස්ටෝල් කරනවා කියලා හිතාගන්නකො
2.මේ වැඩකෑලි දාන්න Bootloader එක Unlock වෙලා තියෙන්න ඕන. ඒ ගැන වෙනම අපි කතා කරනවා ඉදිරියේදී.)
ඒකට fastboot commands පාවිච්චි කරන්නත් වෙනවා. මම ඒ ගැනත් වෙනම ලියන්නම්. ඒ ගැන කිව්වේ fastboot commands ගැන. මේක දැනටමත් හිතුවට වඩා දික් වෙලා තියෙන්නේ 😂 අපි උපකල්පනය කරමු ඔන්න අපි කෝම හරි අර අවුල් වෙලා තිබුණ හෝ හිස් ෆෝන් එකට Recovery එකක් සහ OS එකක් ෆ්ලෑෂ් කරා කියලා.
හරි දැන් අවුලක් නෑ අපි ඔන්න ෆෝන් එක රීස්ටාට් කරනවා, bootloader එක දුවලා ගිහින් පරීක්ෂා කරනවා /boot පාටිෂන් එකේ තියෙන Kernel එක, ramdisk එක, අවුලක් නෑ, දැන් බඩු හෑව්. ඒ එක්කම ramdisk එකෙන් ඔක්කොම partition ටික mount කරලා සූදානම් කරනවා. Kernel එක load වුණ ගමන් ඊළඟට OS එක ලෝඩ් වෙනවා, Startup animation එක ඔන්න දැන් පේනවා ෆෝන් එක ඔන් වෙනවා, වැඩේ ගොඩ.
එතකොට දැන් කල්පනා කරනවද ඇයි මෙදා පාර bootloader එක /recovery එක පැත්තට දිව්වේ නැත්තේ කියලා? ඒ එයාට ඕන නැති නිසා. 😂 නෑ විහිළුවක් නෙවෙයි, bootloader එක /recovery එකට ගිහින් එයාව පණගන්වන්නේ OS එකේ කචල් එකක් තිබුණොත් විතරයි. එහෙම නැතත් සමහරවිට අපි බලෙන් ඔය රිකවරි එකට බූට් කරගන්නවා. ඒ වගේම පුළුවන් Volume keys සහ Power බට්න් එක ආධාරයෙන් Fastboot mode එකටත් boot කරගන්න. මේ බට්න් ඔබන්න ඕන ආකාරය ජංගම දුරකථන මාදිලියෙන් මාදිලියට වෙනස් වෙනවා. ඒවා ඊළඟ පෝස්ට් එකේ බලමු. ඊළඟට අපි විශේෂ කාරණාවක් බලමු.
Bootloader එක ලොක් කරලද?
ඔන්න කට්ටිය දන්න කතාව. Bootloader එක ලොක්, ෆෝන් එක Root කරන්නත් බෑ, කස්ටම් රොමක් ගහන්නත් බෑ මළ කෙළියයි සංසාරේ. 😌 මොකක්ද මේ අපභ්රංශ කතාව, මොකාද bootloader එක ලොක් කරේ? මොකාද ඒ බලු වැඩේ කරේ? 😂
ඒ බලු වැඩේ කළේ ඔයාගෙ ෆෝන් එක හැදුව සමාගම. හැම ජංගම දුරකථන සමාගමක්ම වගේ එයාලා නිෂ්පාදනය කරන ෆෝන් වල Bootloader එක ලොක් කරලයි/ එන්ක්රිප්ට් කරලයි එවන්නෙ. (ඉරිසියාකාර හැත්ත 😂) බනින්න එපා, එයාලා ඒක කරන්නේ අපේම සහ ෆෝන් එකේම ආරක්ෂාවටයි.
හැබැයි එක අතකට කුහක කම. උන් කැමති අපි උන් දාලා එවන OS එකයි උන්ගෙ අප්පිරිය ඇප් ටිකයි පාවිච්චි කරනවා නම්. මම නම් කියන්නෙ අපි සල්ලි දීලා ගන්න Hardware කොටස් වලට ගැලපෙන මෘදුකාංග අපි කොහොම දැම්මත් උන්ට ප්රශ්නයක් වෙන්න බෑ කියන එක.
ලොක් කරපු Bootloader එකක් සහිත ෆෝන් එකක System modification කරන්න Bootloader එක ඉඩ දෙන්නේ නැහැ. මම අර කලින් කිව්ව fastboot mode එකට දාලා command ගැහුවත් ඒවට response කරන්නෙ නැහැ, Authentication error එකක් එනවා. Bootloader එක lock තත්වයේ තිබියදී System modification බලෙන් කරන්න යාම ඉතාම බරපතළ ප්රශ්නයක් මොකද bootloader එක දැනගත්ත ගමන් මොකක් හරි වෙනසක් වෙලා කියලා එයා OS එක බූට් නොකර ඉන්නවා. මේවා කරන්නේ ඉතින් User ගෙ දත්ත වල ආරක්ෂාවටමයි. කවුරු හරි හොරෙන් ෆෝන් එක අරගෙන මොකක් හරි Harmful modification එකක් කරයි කියලා බයටයි.
fastboot වැඩ නෑ කියන්නෙ Custom Recovery ගහන්න බෑ, ඒ කියන්නෙ ඉතින් කස්ටම් රොමක් ෆ්ලෑෂ් කරගන්නත් බෑ, /system පාටිෂන් එක modify කරන්න බෑ ඒ කියන්නෙ root කරන්නත් බෑ. අහෝ දුකකි. මේ ලොකු කතා ඔක්කොම අපි පොඩි කරලා කතා කරමු ඉස්සරහට.
ඒ කොහොම වෙතත් සමහර ජංගම දුරකථන නිශ්පාදකයන් ඔයාගෙ ෆෝන් එකේ Bootloader එක අන්ලොක් කරගැනීමට සහය දක්වනවා, හැබැයි වගකීම් සහතිකය අහෝසි කරලා දානවා. ඒකට අදාළ ජංගම දුරකථන නිෂ්පාදකයා සම්බන්ධ කරගන්න ඕන.
ආයෙ ඉතින් ගොඩ වෙදකම් කරලා Bootloader එක අන්ලොක් කරගන්නත් පුළුවන්. හැබැයි ඉතින් ආයෙ කියන්න දෙයක් නෑ, Bootloader එක කියන්නේ බොහොම දරුණු කෙනෙක්. එයා නැතුව කිසිම දෙයක් වැඩ කරන්නෙ නෑ. රිකවරි එකට වත් බූට් වෙන්නෑ. Bootloader එක ඩැමේජ් කරගෙන ඔයාට පුළුවන් ෆෝන් එක කොළ හුළගේ යනවට බරක් විදියට පාවිච්චි කරන්න ගන්න. 😂
ඉතින් මම නම් අවවාද කරන්නේ, ඔයාට Bootloader එක අන්ලොක් කරගන්න ඕන නම් දුරකථන නිෂ්පාදකයා මුණගැහෙන්න, උන් ඕක අන්ලොක් කරන්න දෙන්නැත්නම් ඔය තියෙන මගුල පාවිච්චි කරන්න, මීට පස්සෙ ෆෝන් ගන්නකොට ඒ ෆෝන් මොඩ්ල් එක අන්ලොක් කරගන්න හරි ක්රමයක් තියෙනවද කියලා මුලින් බලලා පස්සෙ ගිහින් කඩෙන් ඒ ෆෝන් එක ගන්න 😑 රැල්ලට ගිහින් බූත ෆෝන් ගන්නැතුව.
Bootloader එක අන්ලොක් කරන එක ලේසියි ඔයාට Manufacture සපෝට් එක හම්බුණොත්, එයාලා බොහෝදුරට ඔයාට USB / Fastboot drivers බාගන්න ලිංක් එකකුත් දේවි, ඒවා පරිගණකයට ඉන්ස්ටෝල් කරගෙන ෆෝන් එක Fastboot mode, bootloader mode නොහොත් download mode එකට දාලා (ඒ මොඩ් එකට දාන ක්රම එක එක ෆෝන් වල එක එක විදියයි) USB කේබල් එකක් ආධාරයෙන් පරිගණකයට සම්බන්ධ කරලා Command Prompt එකේ කෝඩ් ටිකක් කොටලා පුළුවන් Bootloader එක අන්ලොක් කරගන්න. මම ඒ fastboot commands ටික අර මම කලින් කිව්ව වෙනම ලියන්න බලාපොරොත්තු වෙන පෝස්ට් එකට අරන් යන්නම්.
එහෙම අන්ලොක් කරගන්න දෙන්නැත්නම්, ඔයාගෙ ෆෝන් එක හදපු උන් කුහකයි නම්, 😑 XDA Developers කියලා හැමෝම කියවන සයිට් එකක් තියෙනවා. අන්න ඒකේ ඇති එකේක ගොඩ වෙදකම් එකේක ෆෝන් වලට එකේක විදියට. ඒ හැම එකම ඉතින් ලියන්න නම් අවුරුදු කීයක් යයිද මන්දා. 😂 ඉතින් ඒකේ බලන එක හොඳයි ඊට වඩා ඒක ලේසියිනේ. හැබැයි ඔය මොක හරි කරලා ෆෝන් එකට කෙළවන් නම් මං ගාවට එන්න එපා ගහන්නෙ පයින් ඔව්. 🤣 කවුරුත් බලෙන් ෆෝන් වල මොඩිෆිකේෂන් කරවන්නෑනෙ. ඔයයි තීරණය කළේ ඒක, ෆෝන් එක බ්රික් වුණොත්, කෙළවුණොත් ඔයාම ඒකෙ පාඩුව දරාගන්න. Risk එකක් නැතුව මුකුත් කරන්න බෑ.
***
හිතුවට වඩා සෑහෙන දික් වුණා නේද පෝස්ට් එක. කෝම හරි, ඔන්න ඕකයි Bootloader කතාව. තව මොනා හරි මට ලියන්න බැරුව හැලුණා නම් මාව දැනුවත් කරන්න ඊළඟ එකේ ලියන්නම්. දැන් පොරොන්දු හතරක් එක්ක තමයි මේක නවත්තන්න වෙන්නේ
- Recovery ගැන ඊළඟ එකේ ලියන බව.
- Fastboot commands ගැන තව වෙනම පෝස්ට් එකක් ලියන බව.
- Android Rooting ගැන වෙනම පෝස්ට් එකක් ලියන බව.
- Kernel එක ගැන.
හරි එහෙනම්, නැවත මුණගැහෙමු! ඔබට ජය!!
7 Comments
නියමයි මචං පොස්ට් එක.
ReplyDeleteThank you macho
DeleteNiyamai
ReplyDeleteThank you ayya!
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeletethanks ayiye ara androidvadakarayo eke dapu bash script post set ekata sinhalen mata hambuna ekam eka eka
ReplyDelete