উত্তর:
যদি আমি আপনার প্রশ্নটি সঠিকভাবে বুঝতে পারি তবে আপনি যখন চালাবেন তখন কীভাবে স্বয়ংক্রিয়ভাবে রুট অ্যাক্সেস পাবেন তা আপনি জিজ্ঞাসা করছেন adb shell, যাতে আপনাকে শেলের মধ্যে যেতে হবে না এবং suআপনার ফোনে রুট হিসাবে কোনও কমান্ড কার্যকর করতে টাইপ করতে হবে না ।
এটি আপনার বুট পার্টিশনের একটি পতাকা দ্বারা নিয়ন্ত্রণ করা হয়, যা বেশিরভাগ কাস্টম রমগুলি ডিফল্টরূপে রুট অনুমতি অনুমোদনের জন্য সংশোধন করে। আপনি $যখন ব্যবহার করেন adb shellতখন আপনি যদি তা থেকে সরে যান তবে আপনার কাছে দুটি স্থায়ী বিকল্প এবং একটি অস্থায়ী একটি (অস্থায়ী অর্থ আপনি পুনরায় বুট করলে এটি স্থির হয় না):
adbdরুট অনুমতি নিয়ে আপনার ডিভাইসে পুনরায় চালু করুন2 নাম্বারটি আসলে তেমন কঠিন নয়, তবে আপনি যদি অসতর্ক হন তবে কিছুটা বিপজ্জনক হতে পারে। এখানে একটি উইকি নিবন্ধ রয়েছে যা প্রক্রিয়াটি ব্যাখ্যা করে এবং আপনাকে সাহায্য করার জন্য পার্ল স্ক্রিপ্টগুলির কয়েকটি অন্তর্ভুক্ত করে। এই নির্দেশাবলী একটি লিনাক্স / ইউনিক্স পরিবেশ ধরে। আমি ব্যক্তিগতভাবে ফেডোরা লিনাক্সে এই নির্দেশাবলী ব্যবহার করেছি এবং আপনাকে বলতে পারি যে তারা কাজ করে তবে আমি ম্যাক্সের মতো অন্যান্য * নিক্স পরিবেশ সম্পর্কে জানি না। আমি অনুরূপ উইন্ডোজ নির্দেশাবলী জানি না, তবে আপনি যদি উইন্ডোজটিতে থাকেন তবে আমি কিছুটা ট্র্যাক করার চেষ্টা করতে পারি। বিভিন্ন ডিভাইস বিভিন্ন পার্টিশন টেবিল ব্যবহার করার কারণে সঠিক কমান্ডগুলি ফোন থেকে ফোনে কিছুটা পৃথক হবে।
সাধারণভাবে বলতে গেলে, আপনার নিজের ফোন থেকে আপনার বর্তমান বুট.আইএমজি টানতে হবে, এটি আনপ্যাক করুন, র্যামডিস্কটি এক্সট্রাক্ট করতে হবে এবং ডিফল্ট.প্রপ ফাইলটি সন্ধান করতে হবে। এটি একটি প্লেইন টেক্সট ফাইল যা আপনাকে কোনও পাঠ্য সম্পাদককে খুলতে হবে এবং তারপরে মানটি যুক্ত রেখাটি সন্ধান করতে হবে ro.secure। যদি লাইনটি বলে ro.secure=1তবে আপনার এটিকে পরিবর্তন করতে হবে ro.secure=0। এর পরে আপনি রামডিস্ক এবং বুট.আইএমজি পুনরায় প্যাক করতে পারেন, তারপরে এটি আপনার ফোনে ফ্ল্যাশ করুন। একবার আপনি পুনরায় বুট করার পরে, আপনি #যখনই adb shellকোনও চালনা না করেই সঞ্চালন করবেন তখনই আপনাকে একটি প্রম্পট দিয়ে স্বাগত জানানো হবে su।
বিকল্পভাবে, আপনি যদি একটি কাস্টম রম ব্যবহার করছেন তবে এতে কোনও পরিবর্তন নেই তবে আপনি কেবল রমটি আনজিপ করতে পারবেন এবং উপরের পদক্ষেপগুলি ব্যবহার করে এর সাথে যুক্ত বুট.আইএমজি সংশোধন করতে পারবেন। তারপরে আপনি নতুন সংশোধিত বুট.আইএমজি দিয়ে রমটি জিপ আপ করতে এবং জিপ ফাইলটি ফ্ল্যাশ করতে পারবেন যেমনটি আপনি চান।
এটি সম্ভবত বলা ছাড়াই যায় তবে এটি করার সময় সাবধান হন । আপনার বুট পার্টিশনের সাথে মেসিং করা খুব সহজেই আপনার ফোনটি ধ্বংস করে দিতে পারে এবং আপনাকে এইচবিউটের মাধ্যমে পুনরুদ্ধার করতে বাধ্য করতে পারে। আপনি এক্সটেন্ডেড ফাস্টবুট কমান্ড ব্যবহার করতে এবং একটি পুনরুদ্ধার সম্পাদন করতে পারেন তা নিশ্চিত করার জন্য আমি ফাস্টবুট পরীক্ষা করার সুপারিশ করব। এটি আপনার মডেলের উপর ভিত্তি করে কিছুটা ভিন্ন হয় তবে বেশিরভাগ ফোনে কিছু ডেস্কটপ সফ্টওয়্যার থাকে যা ফোনটি পুনরায় চাপিয়ে দেওয়ার জন্য চালানো যায়।
তৃতীয় বিকল্পটি হ'ল অনেক ক্ষেত্রে adbdআপনার ডিভাইসে রুট সুবিধাগুলি দিয়ে পুনরায় চালু করা সম্ভব হতে পারে । একটি সম্ভাবনা হ'ল adb rootপিসি টার্মিনাল থেকে চালানো , যদিও এটি সমস্ত রম কনফিগারেশনে কাজ করবে না (রমটি অবশ্যই "ইউজারডিগ" হিসাবে নির্মিত হবে)। আপনি চেইনফায়ারের অ্যাডবিডি নিরাপত্তাহীন অ্যাপও চেষ্টা করে দেখতে পারেন । এটি একটি রিবুট জুড়েই থাকবে না, সুতরাং adb rootআপনার ফোনটি পুনরায় চালু করার সময় আপনাকে অ্যাপ্লিকেশনটি আবার ব্যবহার করতে হবে ।
adbdডিফল্টভাবে ফোনে রুট অনুমতি পেতে দেয়। অ্যান্ড্রয়েড দলের কোনও সদস্যের একটি পোস্ট রয়েছে যা এটি বোঝায়, তবে এটি স্পষ্টভাবে বলে না। এওএসপি-র কাছে করা এই প্রতিশ্রুতিটিও বোঝায় যে এটি কেবল একটি পতাকা যা adbdপ্রারম্ভকালে যাচাই করে (আমি উত্সে এটি অন্য কোথাও দেখতে পাই না)। আমি উল্লেখ হিসাবে, কাস্টম ROM- র বিষয়বস্তু সংখ্যাগরিষ্ঠ যে আমি দেখা করেছি (সিএম অন্তর্ভুক্ত) এটি 0 সেট আছে
adb rootসবেমাত্র অটো-স্যু মোডে অ্যাডবিডি পুনরায় চালু করার কমান্ডটি সন্ধান করেছে , সম্ভবত এটি এটির উপর নির্ভর করে। যদিও আমি মনে করি আপনি এটি ঠিক একটি পতাকা হিসাবে ঠিক ছিলেন, তবে।
// ... except we allow running as root in userdebug builds if the service.adb.root property has been set by the "adb root" command"। ঘটনাচক্রে, কিন্ডল ফায়ারের জন্য বুরিট্রো রুটের প্রথম সংস্করণটি আইআইআরসি কাজ করেছিল।
ঠিক আছে যদি আপনার ফোনটি রুট করা থাকে তবে আপনি "su -c" কমান্ডের সাহায্যে কমান্ড চালাতে পারেন।
ফোনের পণ্যের তথ্য পেতে বিল্ড.প্রপ ফাইলটিতে ক্যাট কমান্ডের একটি উদাহরণ এখানে।
adb shell "su -c 'cat /system/build.prop |grep "product"'"
এটি রুট অনুমতি প্রার্থনা করে এবং '' এর ভিতরে কমান্ড চালায়
5 টি শেষের উদ্ধৃতিগুলি লক্ষ্য করুন, এর জন্য আপনার সমস্ত শেষের উদ্ধৃতি বন্ধ করা দরকার বা আপনি একটি ত্রুটি পাবেন।
স্পষ্টতার জন্য ফর্ম্যাটটি এরকম।
adb shell "su -c '[your command goes here]'"
নিশ্চিত হয়ে নিন যে শেলটি চালানোর সময় আপনি সাধারণত কমান্ডটি ঠিক একইভাবে প্রবেশ করেছিলেন।
এটি ব্যবহার করে দেখুন, আশা করি।
কেবল অ্যাডবিডি ইনসিকিউর ইনস্টল করুন ।
আপনি কি জন্য রুট হিসাবে চালানোর চেষ্টা করছেন? আপনি বলছেন যে আপনি রুট দিয়ে ADB শেলটি চালাতে চান তবে আপনি ADB শেলটি ব্যবহার করতে চান না? আপনি কি স্পষ্ট করতে পারেন?
যদি অ্যাপ্লিকেশনটি রুট অ্যাক্সেসের জন্য অনুরোধ করে, তবে আপনার ফোনের সুপার ইউজার অ্যাপ্লিকেশনটির অনুমতি দেওয়া উচিত কিনা তা পরিচালনা করা উচিত। আপনি যে প্রক্রিয়াটিতে আপনার ফোনটি রুট করেছেন তাতে একটি সুপার ব্যবহারকারীর অ্যাপ্লিকেশন অন্তর্ভুক্ত থাকা উচিত।
adb shell psবা adb shellএবং তারপর psচলমান প্রক্রিয়া তালিকা জন্য। সুতরাং কিছু কিছুতে রুট অ্যাক্সেস প্রয়োজন, আমি প্রাক্তনটি করতে সক্ষম হতে চাই।
বিকল্প হিসাবে, আপনি ফোনে আপনার স্ক্রিপ্টটি লিখতে পারতেন এবং এডিবিকে এটি সম্পাদন করতে পারেন, উদাহরণস্বরূপ:
adb shell sh /sdcard/myscript.sh
আপনার হস্তক্ষেপ ছাড়াই স্ক্রিপ্টটি নিজেকে উন্নত করতে পারে (ধরে নিলেন সুপার ব্যবহারকারীর অনুমোদনের বিষয়টি মনে রাখার জন্য সেট করা আছে), উদাহরণস্বরূপ:
su
pm setInstallLocation 1
আমি কেবল সাফল্যের সাথে আমার ফোনে এটি করেছি, একমাত্র সমস্যা হ'ল আমি কীভাবে অ্যাডবি শেল সেশনটি পরিষ্কারভাবে শেষ করতে পারি তা বেশিরভাগই বুঝতে পারি নি। উইন্ডোজ কমান্ড প্রম্পটে ফিরে আসতে আমাকে আমার উইন্ডোজ শেলের Ctrl-C করতে হবে - অন্যথায় অ্যাডবি #প্রম্পটে বসে থাকে এবং ইনপুট গ্রহণ করে না।
আমি হোম বোতাম ইস্যু ব্যর্থতা মেরামতের জন্য ব্যবহার করি
অ্যাডবি ডিভাইস
adb শেল su -c commands
অথবা
"অ্যাডবি রুট শেল sqlite3 /data/data/com.android.provider.settings/datedias/settings.db" সুরক্ষার মধ্যে অন্তর্ভুক্ত (নাম, মান) VALUES ('ডিভাইস_প্রভিশনড', '1'); "
অ্যাডবি কিল সার্ভার
আপনি নিজের 'sh' এ স্যুইড বিটও সেট করতে পারেন। আমি ব্যাসিবক্স ব্যবহার করছি যাতে নির্দেশাবলী আপনার সেটআপের সাথে মেলে না:
এবং আপনার রুট প্রম্পট করা উচিত