Pages

Monday 18 August 2014

রুট কী ও কেন, সুবিধা ও অসুবিধা

root
রুট শব্দটি অ্যান্ড্রয়েড ব্যবহারকারীরা প্রায়ই শুনে থাকবেন। অ্যান্ড্রয়েড কথনে তো বটেই, অ্যান্ড্রয়েড বিষয়ক অন্যান্য সাইট, ফোরাম, এমনকি গুগল প্লে স্টোরে অ্যাপ্লিকেশনও চোখে পড়বে যেগুলো ব্যবহার করতে হলে আপনার ফোন বা ট্যাবলেট রুট করা থাকতে হয়। প্রাথমিকভাবে অনেক অ্যান্ড্রয়েড ডিভাইস ব্যবহারকারীরাই রুট কী এই প্রশ্নের সঠিক উত্তর জানেন না। রুট করার মাধ্যমে ডিভাইসের পরিপূর্ণ পারফরম্যান্স পাওয়া সম্ভব, এমন কথা শুনে অনেকেই রুট করতে আগ্রহী হয়ে পড়েন। কিন্তু রুট করার পর দেখা যায় তাদের ডিভাইসের পারফরম্যান্স আগের মতোই রয়ে যায়। তখন তারা হতাশ হয়ে পড়েন ও রুটের কার্যকারিতা বা আসল সুবিধা কী এই প্রশ্ন তাদের মনে আবারও উঁকি দিতে শুরু করে।
এই লেখাটি তাদের জন্যই যাদের রুট নিয়ে স্পষ্ট ধারণা নেই। এই লেখাটিতে আমি খুব সাধারণভাবে রুট কী তা বোঝানোর চেষ্টা করবো ও ডিভাইস রুট করার সুবিধা ও অসুবিধা সংক্ষেপে বলার চেষ্টা করবো। যেহেতু লেখাটি একদমই নতুন ব্যবহারকারীদের উদ্দেশ্য করে লেখা, তাই বেশিরভাগ টেকনিক্যাল বিষয়গুলো এড়িয়ে কেবল একটি স্পষ্ট ধারণা দেয়ার মতো করে লেখাটি সংক্ষেপিত করা হয়েছে। অ্যাডভান্সড ব্যবহারকারীরা রুট সম্পর্কে যথেষ্টই ধারণা রাখেন বলে আমার ধারণা। তাই লেখাটি তাদের উদ্দেশ্য করে নয়।

রুট কী?

সবচেয়ে সহজ শব্দে বলা যায়, রুট হচ্ছে অ্যাডমিনিস্ট্রেটর বা প্রশাসক। যদিও এর বাংলা অর্থ গাছের শিকড়, লিনাক্সের জগতে রুট বলতে সেই পারমিশন বা অনুমতিকে বোঝায় যা ব্যবহারকারীকে সর্বময় ক্ষমতার অধিকারী করে তোলে (অবশ্যই কেবল সেই কম্পিউটার, ডিভাইস বা সার্ভারে!)। রুট হচ্ছে একটি পারমিশন বা অনুমতি। এই অনুমতি থাকলে ব্যবহারকারী সেই ডিভাইসে যা ইচ্ছে তাই করতে পারেন। উইন্ডোজ অপারেটিং সিস্টেমে ব্যবহারকারী অ্যাডমিনিস্ট্রেটর প্রিভিলেজ ছাড়া সিস্টেম ফাইলগুলো নিয়ে কাজ করতে পারেন না (যেগুলো সাধারণত সি ড্রাইভে থাকে)। লিনাক্সেও তেমনি রুট পারমিশন প্রাপ্ত ইউজার ছাড়া সিস্টেম অ্যাডমিনিস্ট্রেশনের কাজগুলো করা যায় না। যিনি লিনাক্স-চালিত কম্পিউটার বা সার্ভারে যা ইচ্ছে তাই করতে পারেন অথবা যার সব কিছু করার অনুমতি রয়েছে, তাকেই রুট ইউজার বলা হয়। অনেক সময় একে সুপারইউজার বলেও সম্বোধন করা হয়ে থাকে।
শব্দটি এতোই প্রচলিত হয়ে গেছে যে, রুট ইউজার বলার বদলে সরাসরি রুট বলেই সেই ব্যবহারকারীকে সম্বোধন করা হয়। অর্থাৎ, আপনার লিনাক্স অপারেটিং সিস্টেমের আপনি যদি রুট অ্যাক্সেস প্রাপ্ত ব্যবহারকারী হন, তাহলে আপনি রুট।

লিনাক্স এবং অ্যান্ড্রয়েড

অনেকেরই হয়তো খটকা লাগতে শুরু করেছে যে, অ্যান্ড্রয়েড নিয়ে কথা বলতে এসে লিনাক্সকে টানা হচ্ছে কেন। মূলত, অ্যান্ড্রয়েড অপারেটিং সিস্টেমটি লিনাক্স কার্নেলের উপর ভিত্তি করেই তৈরি করা হয়েছে। যারা কম্পিউটারে লিনাক্সভিত্তিক অপারেটিং সিস্টেম ব্যবহার করেছেন, তারা অ্যান্ড্রয়েড রুট করার পর কম্পিউটারের মতোই ফাইল সিস্টেম (রুট পার্টিশন) দেখতে পাবেন অ্যান্ড্রয়েডে, তখন বিষয়টা আরও স্পষ্ট হবে।

অ্যান্ড্রয়েডে রুট অ্যাক্সেস

লিনাক্স-ভিত্তিক অপারেটিং সিস্টেম ইন্সটল করার পর আপনার যেই পাসওয়ার্ড থাকবে, সেটি ব্যবহার করেই আপনি রুট অ্যাক্সেস পেয়ে যাচ্ছেন। এখন নিশ্চয়ই আপনার মনে প্রশ্ন জাগছে, অ্যান্ড্রয়েড ডিভাইসটিও তো আপনিই কিনেছেন, তাহলে আপনি কেন রুট অ্যাক্সেস পাচ্ছেন না?
ট্রিকটা এখানেই। আপনি ডিভাইসটি কিনেছেন ঠিকই, কিন্তু আপনি কিন্তু অপারেটিং সিস্টেমটি ইন্সটল করেননি, তাই না? ডিভাইস প্রস্তুতকারক ডিভাইসটি প্যাকেটজাত করার আগে তাদের কম্পিউটার থেকে লিনাক্স কার্নেলের উপর তৈরি অ্যান্ড্রয়েড অপারেটিং সিস্টেম ইন্সটল করে দিয়েছে। এখানে বলা বাহুল্য, অ্যান্ড্রয়েড অপারেটিং সিস্টেমের মূল ভিত্তিটা এক হলেও একেক কোম্পানি একেকভাবে একে সাজাতে বা কাস্টোমাইজ করতে পারেন। এই জন্যই সনির একটি অ্যান্ড্রয়েড ডিভাইসের ইউজার ইন্টারফেসের সঙ্গে এইচটিসির একটি অ্যান্ড্রয়েড ডিভাইসের ইন্টারফেসের মধ্যে খুব কমই মিল পাওয়া যায়।
যাই হোক, মূল বিষয়ে আসা যাক। আপনার ডিভাইস প্রস্তুতকারক কোম্পানি ইচ্ছে করেই আপনাকে রুট অ্যাক্সেস দেয়নি। এ কথা শুনে কোম্পানির উপর কিছুটা রাগ অনুভূত হলেও সত্য কথা হচ্ছে এই যে, এটি আপনার ডিভাইসের সুরক্ষার জন্যই করা হয়েছে। আসুন জেনে নিই কেন রুট অ্যাক্সেস স্বাভাবিক অবস্থায় দেয়া থাকে না।

কেন রুট করা থাকে না

ডিভাইস প্রস্তুতকারকরা ইচ্ছে করেই ডিভাইস লক করে দিয়ে থাকেন। রুট ফোল্ডার/পার্টিশনে থাকা ফাইলগুলো অত্যন্ত প্রয়োজনীয়। এর কোনো একটি দুর্ঘটনাবশতঃ মুছে গেলে আপনার পুরো ডিভাইস কাজ করা বন্ধ করে দিতে পারে। এছাড়াও ম্যালিশিয়াস বা ক্ষতিকারক প্রোগ্রামও অনেক সময় রুট করা ডিভাইসের নিয়ন্ত্রণ নিয়ে নিতে পারে। কিন্তু লক থাকা অবস্থায় ব্যবহারকারী নিজেই রুট অ্যাক্সেস পান না, তাই অন্য প্রোগ্রামগুলোর রুট অ্যাক্সেস পাওয়ার সম্ভাবনাও নেই বললেই চলে।
ডিভাইস লক করা থাকার আরেকটি কারণ হচ্ছে সিস্টেম অ্যাপ্লিকেশন ও ফাইল। অনেকেই ইন্টারনাল মেমোরি খালি করার জন্য বিভিন্ন অ্যাপ্লিকেশন এসডি কার্ডে ট্রান্সফার করে থাকেন। রুট করা থাকলে সিস্টেম অ্যাপ্লিকেশনগুলোও ট্রান্সফার করে ফেলা যায়। কিন্তু অপারেটিং সিস্টেমের কিছু ফাইল রয়েছে যেগুলো ইন্টারনাল মেমোরির ঠিক যেখানে আছে সেখানেই থাকা আবশ্যক। ব্যবহারকারী যখন ডিভাইস রুট করেন, তখন স্বভাবতঃই অনেক কিছু জেনে তারপর রুট করেন। তখন বলে দেয়াই থাকে যে, কিছু কিছু সিস্টেম অ্যাপস এসডি কার্ডে ট্রান্সফার করলে সমস্যা হতে পারে। কিন্তু যদি স্বাভাবিক অবস্থায়ই সেট রুট করা থাকে, তাহলে ব্যবহারকারী না জেনেই সেটের ক্ষতি করতে পারেন।
এমন একটি চিত্র কল্পনা করুন, যেখানে প্রযুক্তি নিয়ে খুব একটা ধারণা রাখেন না এমন একজন ভাবলেন যে তিনি তার ফোনের ইন্টারনাল মেমোরি ফাঁকা করবেন। এই উদ্দেশ্যে তিনি রুট ফোল্ডারে গিয়ে সবগুলো ফাইল কাট করে এসডি কার্ডে ট্রান্সফার করে দিলেন। রুট অ্যাক্সেস থাকার কারণে ট্রান্সফারের সময় ডিভাইস তাকে বাধা দেবে না। কিন্তু ট্রান্সফারের মাঝেই ফোনটি বন্ধ হয়ে যাবে এবং আর ঠিকমতো কাজ করবে না। তখন তিনি দোষ দেবেন কোম্পানির কাঁধে। কিন্তু রুট লক করা থাকলে ব্যবহারকারী রুট ফোল্ডার খুঁজেই পাবেন না।
আশা করছি এবার বুঝতে পারছেন কেন ডিভাইস বাই ডিফল্ট রুট করা থাকে না। কিন্তু ৯০% (কিংবা তারও বেশি) ডিভাইসই রুট করা যায়। যাদের রুট করার একান্ত প্রয়োজন, তাদের রুট করার উপায় রয়েছে। কিছু কিছু কোম্পানি (যেমন সনি) নিজেদের সাইটেই ডিভাইস রুট করা থেকে শুরু করে বিভিন্ন কাজের প্রণালী দিয়ে রেখেছে। কিন্তু তবুও কোম্পানি নিজেরা রুট করা ডিভাইস বাজারে ছাড়ে না, কারণ বেশিরভাগ ক্রেতাই সাধারণ ক্রেতা হয়ে থাকেন যাদের ডিভাইস রুট করার কোনো প্রয়োজনই নেই।

কেন ডিভাইস রুট করবেন?

ডিভাইস রুট করার কারণ একেক জনের একেক রকম হয়ে থাকে। কেউ ডিভাইসের পারফরম্যান্স বাড়ানোর জন্য বা ইন্টারনাল মেমোরি ফাঁকা করার জন্য রুট করে থাকেন, কেউ ওভারক্লকিং করার মাধ্যমে ডিভাইসের গতি বাড়ানোর জন্য রুট করেন, কেউ স্বাধীনভাবে কাজ করা ডেভেলপারদের তৈরি বিভিন্ন কাস্টম রম ব্যবহার করার জন্য, কেউ বা আবার রুট করার জন্য রুট করে থাকেন। আমি নিজেও প্রথম রুট করেছিলাম কোনো কারণ ছাড়াই। লিনাক্স ব্যবহার করি বলে বিভিন্ন সময় রুট হিসেবে অনেক কাজ করেছি কম্পিউটারে। কিন্তু অ্যান্ড্রয়েড ফোনে রুট পারমিশন না থাকায় একটু কেমন যেন লাগছিল। তাই রুট হওয়ার জন্য রুট করেছিলাম।
পরে অবশ্য পারফরম্যান্স বাড়ানোর জন্য বিভিন্ন সিস্টেম অ্যাপ্লিকেশন ব্যবহার করতে শুরু করেছি যেগুলো রুট করা ডিভাইস ছাড়া কাজ করে না। তবে সেসব নিয়ে পড়ে কথা হবে। চলুন আগে এক নজর দেখে নিই রুট করার সুবিধা ও অসুবিধা।

রুট করার সুবিধা

  • পারফরমেন্স বাড়ানোঃবিভিন্ন অ্যাপ্লিকেশন ব্যবহার করে ডিভাইসের অব্যবহৃত ফাইল, টেমপোরারি ফাইল ইত্যাদি নিয়মিত মুছে ফোনের গতি ঠিক রাখা।
  • ওভারক্লকিং করাঃ সিপিইউ স্পিড স্বাভাবিক অবস্থায় যতটা থাকে তারচেয়ে বেশি দ্রুত কাজ করানো। এর মাধ্যমে কোনো বিশেষ কাজে প্রসেসরের গতি বাড়ানোর প্রয়োজন পড়লে তা করা যায়।
  • আন্ডারক্লকিং করাঃ যখন ডিভাইস এমনিতেই পড়ে থাকে, তখন সিপিইউ যেন অযথা কাজ না করে যে জন্য এর কাজের ক্ষমতা কমিয়ে আনা। এতে করে ব্যাটারি ব্যাকআপ বাড়ানো সম্ভব।
  • কাস্টম ইউআই: আপনার ডিভাইসের হোমস্ক্রিন, লক স্ক্রিন, মেনু ইত্যাদি বিভিন্ন ইউজার ইন্টারফেসের ডিজাইন একটা সময় পর আর ভালো নাও লাগতে পারে। তখন আপনি ডিভাইসে নতুনত্ব আনতে পারবেন নতুন সব কাস্টম ইউজার ইন্টারফেসের মাধ্যমে। এগুলোকে অন্যভাবে রমও বলা হয়।
  • কাস্টম রম: ইন্সটল করার সুবিধা। অনেক ডেভেলপার বিভিন্ন জনপ্রিয় ডিভাইসের জন্য কাস্টম রম তৈরি করে থাকেন। এসব রম ইন্সটল করে আপনি আপনার সেটকে সম্পূর্ণ নতুন একটি সেটের রূপ দিতে পারবেন। বাইরে থেকে অবশ্যই এর ডানা-পাখনা গজাবে না বা ক্যামেরা ৫ মেগাপিক্সেল থেকে ৮ মেগাপিক্সেল হবে না, কিন্তু ভেতরের ডিজাইন ও ক্ষেত্রবিশেষে পারফরম্যান্সেও আসবে আমূল পরিবর্তন।

রুট করার অসুবিধা

  • ওয়ারেন্টি হারানোঃ ডিভাইস রুট করার মাধ্যমে আপনার ওয়ারেন্টি বাতিল হয়ে যাবে। তাই রুট করার আগে সাবধান। অবশ্য অনেক সেট আবার আনরুট করা যায়। আর সেট আনরুট করা হলে তা সার্ভিস সেন্টারে থাকা টেকনিশিয়ানরা অনেক সময়ই ধরতে পারেন না যে সেটটি রুট করা হয়েছিল। তবে কাস্টম রম থাকলে ধরা খাওয়া এড়ানোর উপায় নেই।
  • ফোন ব্রিক করাঃ  ব্রিক অর্থ ইট। আর ফোন ব্রিক মানে আপনার ডিভাইসকে ইটে রূপান্তরিত করা। অর্থাৎ, এর কাজ করার ক্ষমতা হারানো। রুট করা ও এর পরবর্তী বিভিন্ন কাজের সময় একটু এদিক-সেদিক হলেই ফোনে স্থায়ী বা অস্থায়ী সমস্যা হতে পারে। আপনার ফোনের প্রস্তুতকারক কোম্পানি ফোনটি আনরুট অবস্থায় দেন যেন এর ক্ষতি না হয়। রুট করার মাধ্যমে আপনি সেই নিশ্চয়তা ভেঙ্গে ফেলছেন।

রুট করার পদ্ধতি ও শেষ কথা

এই ছিল রুট নিয়ে যত বকবকানি। রুট নিয়ে বা এর করা-না করা, উপকারিতা-অপকারিতা নিয়ে আরও অনেক কথা বলা যায়, কিন্তু এগুলোই হচ্ছে বেসিক কথা। আশা করছি এতটুকু পড়েই আপনারা বেশ স্পষ্ট একটি ধারণা পেয়েছেন ডিভাইস কেন রুট করা হয়, এর সুবিধা-অসুবিধা ইত্যাদি। এখন অনেকেই তাদের ডিভাইস রুট করতে চাইবেন। তাদের জন্য বলছি, একেক ডিভাইস রুট করার পদ্ধতি একেক রকম। স্যামসাং গ্যালাক্সি ওয়াই রুট করার পদ্ধতির সঙ্গে এইচটিসি ওয়ান এক্স রুট করার পদ্ধতির কোনো মিল নেই। এইচটিসি কেন, গ্যালাক্সি ওয়াই-এর সঙ্গে স্যামসাং-এরই অন্য কোনো সেট রুট করার পদ্ধতি এক নয়।
এছাড়াও একই ডিভাইস রুট করার একাধিক পদ্ধতিও রয়েছে। আবার একটি পদ্ধতি দিয়ে একাধিক ডিভাইস রুট করা যায়। রুটের বিষয়টি এতোটাই জটিল ও বিস্তৃত যে, রাতারাতিই এ নিয়ে সব লিখে ফেলা যায় না। আরেকটি বড় সমস্যা হচ্ছে, নিজেদের হাতে সেট না থাকলে রুট করার পদ্ধতি নিয়ে টিউটোরিয়াল লেখাও যায় না। তাই আমরা সিদ্ধান্ত নিয়েছি, বিভিন্ন সময় আমাদের হাতে আসা ও পরিচিতদের ডিভাইস রুট করার পদ্ধতি নিয়ে বিভিন্ন সময় পোস্ট প্রকাশ করবো। আর যদি বিশেষ কোনো ডিভাইস নিয়ে রুট করার টিউটোরিয়ালের জন্য একাধিক অনুরোধ আসে, তাহলে আমরা এক্সডিএ থেকে অনুবাদ করে টিউটোরিয়াল দেবো। বলা বাহুল্য, এক্সডিএ অ্যান্ড্রয়েড বিষয়ক সবচেয়ে বড় ফোরাম যেখানে অ্যান্ড্রয়েডসহ বিভিন্ন সিনিয়র রম ডেভেলপারদের সম্মেলন ঘটে।
এবার আপনার পালা। আপনার ডিভাইসটি কি রুট করা? রুট করা হলে আমাদের জানাতে পারেন কীভাবে ডিভাইসটি রুট করেছেন। আর যদি এখনও রুট না করে থাকেন, তাহলে মন্তব্যের ঘরে বলুন এই লেখা পড়ে আপনি কী ভাবছেন।
রুট করবেন? নাকি রুট করবেন না?
সৌজন্যেঃ  সজীব

No comments:

Post a Comment