एंड्रॉइड एमुलेटर पर रूट एक्सेस कैसे प्राप्त करें?


146

मेरे पास सभी एंड्रॉइड एसडीके संस्करण हैं (1.5 से 2.3.3 तक), और मैंने एंड्रॉइड एमुलेटर में रूट प्राप्त करने के लिए कई तरीकों की कोशिश की। मैं किसी भी एंड्रॉइड डिवाइस का उपयोग नहीं करता हूं और एमुलेटर (एवीडी) पर सब कुछ परीक्षण करता हूं।

मुझे 'iptables' और 'busybox' की कार्यक्षमता का उपयोग करने के लिए एंड्रॉइड एमुलेटर में से किसी एक में रूट एक्सेस प्राप्त करने की आवश्यकता है। और iptables का उपयोग करने के लिए मेरे पास रूट एक्सेस होना चाहिए। टर्मिनल एमुलेटर में एटलस्ट 'सु' कमांड को निष्पादित करना चाहिए।

मैंने भी z4rootएप्लिकेशन इंस्टॉल किया ,

लेकिन इसमें बहुत लंबा समय लगता है और रूटिंग समाप्त नहीं होती है, और अटक जाती है। कुछ का कहना है कि अगर हम RC30 से नीचे की प्रणाली को डाउनग्रेड करते हैं, तो इस तरह से हम रूट एक्सेस प्राप्त कर सकते हैं। अगर यह सच है, तो यह कैसे करना है? मैं लिनक्स और विंडोज ओएस दोनों का उपयोग करता हूं।

कृपया किसी ने मुझे मेरे एमुलेटर को रूट करने के लिए कोई भी तरीका बताया।


मुझे लगता है कि आप एमुलेटर को रूट करने के लिए फाइलक्रॉप (एंड्रॉइड सिस्टम में विज़नरी) पर संग्रहीत "Root.apk" का उपयोग कर सकते हैं, क्योंकि प्रत्येक रिबूट पर, यह सिस्टम को रूट करता है। Z4root काम नहीं कर सकता क्योंकि इसे रूट एक्सेस को काम करने के लिए रीबूटिंग की आवश्यकता है। खराब अंग्रेजी के लिए प्रयास करें, मैं फ्रेंच हूं।
जेरेलेमऑफ

मुझे यह कहाँ मिल सकता है ? क्या इसके लिए कोई मैनुअल है?
एंड्रॉयड डेवलपर

6
कृपया ध्यान दें कि एंड्रॉइड एमुलेटर पहले से ही "रूटेड" हैं। रूट एडीबी शेल प्राप्त करने के लिए आपको कुछ भी करने की आवश्यकता नहीं है, क्योंकि यह पहले से ही डिफ़ॉल्ट रूप से रूट के रूप में चलता है। यहां चर्चा की गई है कि हैक किए गए "सु" या समान शिम को स्थापित करने के लिए एप्लिकेशन कोड को रूट के रूप में चलने वाले सहायक कार्यक्रमों को लॉन्च करने की अनुमति मिलती है।
क्रिस स्ट्रैटन

2
Genymotion genymotion.com का उपयोग करें। यह बहुत तेज़ है और डिफ़ॉल्ट रूप से इसकी जड़ है।
किलामत

1
आपने गलत छवि स्थापित की है। यहाँ देखें -> stackoverflow.com/questions/43923996/…
wwwwwwwwwwww

जवाबों:


136

ये उत्तर सभी अनावश्यक रूप से जटिल हैं :)

$ > adb shell
generic_x86:/ $
generic_x86:/ $ exit
$ > adb root
restarting adbd as root
$ > adb shell
generic_x86:/ #

52
adb root"Adbd रन नहीं बना सकता है के रूप में उत्पादन में जड़ें चल रहा है"। क्या आप किसी विशेष एमुलेटर का उपयोग कर रहे हैं? कृपया अधिक जानकारी प्रदान करें।
orodbhen

3
आप किसी भी ऐप के लिए इस रूट का उपयोग नहीं कर सकते हैं।
एनबी

5
अगर कोई भी नए Google Play सिस्टम की छवियों पर काम करने के लिए इसे प्राप्त करने की कोशिश कर रहा है, तो adbd को ramdisk.img में सुरक्षित करने के लिए सेट किया गया है। मैं Google APIs छवि से ramdisk.img का उपयोग करके इसके चारों ओर काम करने में सक्षम था। मैंने 7.0 और 8.0 दोनों छवियों पर परीक्षण किया।
tstaylor7

47
यदि adb rootत्रुटि देता है adbd cannot run as root in production builds, तो stackoverflow.com/a/45668555/1682419 देखें - आपको "Google Play सिस्टम छवि" के बजाय "Google APIs सिस्टम छवि" की आवश्यकता है।
जेरी

10
@JRaymond मैंने adb रूट में टाइप किया लेकिन उसके बाद कुछ भी नहीं निकला

75

Android एमुलेटर को कैसे रूट करें (Android 7.1.1 / Nougat पर परीक्षण किया गया)

आवश्यकताएँ :

अनुदेश

  1. SuperSu.apk स्थापित करें

    • सबसे पहले SuperSu ऐप इंस्टॉल करें, बस खींचें और ड्रॉप करें (यदि नवीनतम इम्यूलेटर संस्करण या एडबेल के माध्यम से चल रहा है adb -e install supersu.apk)

    • इसे स्थापित करने के बाद, जब आप इसे चलाते हैं तो एक स्क्रीन दिखाता है जैसा कि नीचे दर्शाया गया है कि "कोई एसयू बाइनरी स्थापित नहीं है .."। यह त्रुटि अभी पुष्टि करती है कि डिवाइस अभी तक निहित नहीं है।

यहां छवि विवरण दर्ज करें


  1. एमुलेटर सिस्टम विभाजन को योग्य बनाएं

    • जैसा कि यह सुझाव देता है, हमें इम्यूलेटर को सिस्टम फाइल लिखने की अनुमति देने की आवश्यकता है।

    • इसे पूरा करने के लिए निम्न कोड टाइप करें: emulator -avd {emulator_name} -writable-system

यदि आपके पास एक से अधिक AVD है, तो आप कमांड का उपयोग करके अवार्ड की एक सूची प्राप्त कर सकते हैं: emulator -list-avds

नोट: एंड्रॉइड एसडीके इंस्टॉल किए गए टूल फोल्डर पर जाएं और वहां शिफ्ट और राइट क्लिक करके कमांड प्रॉम्प्ट खोलें।


  1. सिस्टम डायरेक्टरी में सु बाइनरी को पुश करना

    • रिकवरी फ्लैशबल निकालें। ज़िप (अलग आर्किटेक्चर के सु बायनेरिज़ युक्त)

जरूरी! केवल सु बाइनरी का उपयोग करें जो आपके एवीडी आर्किटेक्चर जैसे कि x86, आर्म आदि से मेल खाता हो .. और उस पथ पर ध्यान दें जहां आपने इन बायनेरिज़ को निकाला था।

  • सुनिश्चित करें कि आप adb को रूट के रूप में चला रहे हैं और आपको रिमूव करने की भी आवश्यकता है। बस इन कोड को दर्ज करें

adb root

adb remount

अब इसका समय सु बाइनरी पुश करने के लिए है:

यह वह कोड है जिसका मैंने सफलतापूर्वक उपयोग किया है :adb -e push C:\Users\User1\Desktop\rootemu\x86\su.pie /system/bin/su

(सु बाइनरी के मेरे विशिष्ट स्थान के बारे में कभी नहीं, कोई भी स्थान तब तक ठीक है जब तक कि कोई सफेद स्थान न हो)

ध्यान दें: पहले, कंसोल में पता लगाने binया xbinकरने के लिए:> adb shell,>ls /system/xbin/su

यदि यह विफल रहता है तो इसके बजाय इस निर्देशिका पर धकेलने का प्रयास करें /system/xbin/su। इसके अलावा एंड्रॉइड 5.1 और नीचे चलने वाले एमुलेटर का उपयोग करें suऔर नहींsu.pie


  1. सु बाइनरी की अनुमति बदलें

    • अगला चलो सु बाइनरी की अनुमतियों का थोड़ा संशोधन करते हैं। हमें ऐसा करने के लिए एम्यूलेटर डिवाइस में adb:

    adb -e shell su root cd /system/bin chmod 06755 su

जरूरी!! सु बाइनरी पथ पर ध्यान दें (मेरा / सिस्टम / बिन है)


  1. installसु बाइनरी पर निर्देश सेट करना और ए सेट करनाdaemon

कोड टाइप करें:

su --install

और डेमॉन स्थापित करने के लिए:

su --daemon&

जरूरी!! स्पेसिंग पर ध्यान दें


  1. SELinux को Permissive पर सेट करना (यानी SE लिनक्स को बंद करना)

    • अंत में इस कोड के माध्यम से सेलिनक्स को बंद करें:

setenforce 0


  1. SuperSU ऐप खोलें और यह बायनेरिज़ को अपडेट करने के लिए कह सकता है, आप सामान्य विधि का उपयोग कर सकते हैं।

नोट: यदि आप बूटलूप का अनुभव कर रहे हैं, बल्कि बायनेरिज़ को अपडेट न करें, बस इसे वैसे ही उपयोग करें।


तो इतना ही है!!

किसी भी एप्लिकेशन को केवल डबल चेक करने के लिए एसयू अनुमतियों की आवश्यकता होती है और वास्तव में सुपरएसयू पूछें कि क्या आप इसे अनुमति देना चाहते हैं।

यहां छवि विवरण दर्ज करें

रूट सस्ट अपडेट को अपडेट करने के लिए बाइनरी (सामान्य विधि का उपयोग करके), फिर सिस्टम को कॉपी करें। अस्थायी निर्देशिका Users\AppData\Local\Temp\Android Emulatorसे फ़ाइल ( आमतौर पर फ़ाइल को 1359g.tmpबड़े आकार के साथ उदाहरण के लिए नाम दिया जाता है) और डिफ़ॉल्ट को प्रतिस्थापित करें system.img

अपडेट करें :

मैंने नोट किया है कि विंडोज की तुलना में लिनक्स में एक अस्थायी सिस्टम छवि प्राप्त करना आसान है। आप स्नैपशॉट छवि का उपयोग करके देख सकते हैं।

अपडेट 4 अगस्त 2018

एमुलेटर के उद्भव के साथ 27.3.xयह अब स्नैपशॉट सुविधा के माध्यम से रूट को बहुत आसान बनाता है (यदि कॉपी करनाsystem.img विधि काम नहीं कर रही है):

आदर्श रूप से यह हाइबरेंरिग की तरह है जिसमें वर्चुअल डिवाइस कॉन्फिग इंटैक्ट है, इसलिए सब कुछ संरक्षित है।

स्नैपशॉट्स

अब आप दिए गए डिवाइस कॉन्फ़िगरेशन के लिए कई एवीडी स्नैपशॉट को सहेज सकते हैं और एमुलेटर शुरू करते समय लोड किए गए स्नैपशॉट में से कौन सा चुन सकते हैं। स्नैपशॉट लोड करके एक वर्चुअल डिवाइस शुरू करना एक नींद की स्थिति से एक शारीरिक जागने की तरह है, क्योंकि यह एक संचालित राज्य से बूट करने के विपरीत है।

इसका मतलब है कि एमुलेटर को शुरू करने के लिए एकमात्र आवश्यकता एमुलेटर को शुरू -writable-systemकरने के लिए सामान्य emulator -avd [avdname]कमांड में पैरामीटर को जोड़ना है। ( बस एमुलेटर चलाने से emulator -avd [avdname]रूट किए गए संस्करण / कॉपी लॉन्च नहीं होता है या कुछ त्रुटि हो सकती है )

एपीआई स्तर 22 पर परीक्षण किया गया

बूटलूप मुद्दों के लिए भी अन्य पोस्ट देखें: एंड्रॉइड एमुलेटर: रूट करने के बाद बूट लूप से कैसे बचें? और उसके अपडेट।

टिप्पणियों

संदर्भ में अधिकांश सामग्री पुराने Android संस्करणों के लिए थी और इसलिए विभिन्न आदेशों और रास्तों का कारण जो मैंने संशोधित किया था।

स्वीकृतियाँ;


1
ध्यान दें: बिन या xbin पता लगाने से पहले सांत्वना करते हैं:> adb खोल,> ls / प्रणाली / xbin / su
djdance

1
@xavier_fakerat हाँ, मैंने बायनेरिज़ को अपडेट करना बंद कर दिया। समस्या यह है कि प्रत्येक रिबूट के बाद मुझे मशीन को रिमूव करना होगा और su --install && su --daemon&एमुलेटर पर चलना होगा , इसके बाद setenforce 0रूट प्राप्त करना होगा। क्या आप रिबूट में रूट के लिए कोई स्थायी निर्धारण जानते हैं?
क्रिस्चियन होल्डुनु

1
अच्छा! यह विधि उन वास्तविक उपकरणों के लिए भी काम करती है जिन्हें आप adb के माध्यम से रूट एक्सेस कर सकते हैं।
Mygod

1
आपने मुझे उत्तर दिया, कि क्यों-इम्यूलेट-सिस्टम का उपयोग नहीं करने पर छवि को रूट करने के बाद एंड्रॉइड एमुलेटर अप्रत्याशित रूप से बंद हो जाता है। यह स्नैपशॉट्स के कारण है।
रोड्रोक्र ऑक्ट

1
मैं Pixel 2 XL का उपयोग कर रहा हूँ: लोगों को Pixel XL के साथ एक ही समस्या लगती है: forum.xda-developers.com/pixel-xl/how-to/…
noraj

33

यहां उन आदेशों की सूची है जो आपको एमुलेटर चलाने के दौरान चलाने होंगे, मैं एंड्रॉइड 2.2 पर इस समाधान का परीक्षण करता हूं:

adb shell mount -o rw,remount -t yaffs2 /dev/block/mtdblock03 /system  
adb push su /system/xbin/su  
adb shell chmod 06755 /system  
adb shell chmod 06755 /system/xbin/su

यह मानता है कि सु बाइनरी कार्य निर्देशिका में स्थित है। आप यहां su और superuser पा सकते हैं: http://forum.xda-developers.com/showthread.php?t=682828 । आपको एमुलेटर लॉन्च करते समय हर बार इन कमांड को चलाने की आवश्यकता होती है। आप एक स्क्रिप्ट लिख सकते हैं जो एमुलेटर को लॉन्च करता है और इसे रूट करता है।


15
कृपया अपने ब्लॉग पोस्ट के प्रासंगिक भागों को यहाँ शामिल करें। एसओ उत्तर के लिए एक जगह है, लिंक नहीं।
cHao

2
ऐसी कोई फ़ाइल या निर्देशिका 'SU'
महेंद्रन

4
यह एम्यूलेटर 2.2, 2.3 या 2.3.3 पर काम नहीं करता है। मुझे एडीबी पुश के लिए केवल त्रुटियां मिलती हैं: मेमोरी से बाहर निकलना, खाली नहीं होना, आदि
पॉइंटर नल

2
@ मसाला: जैसा कि त्रुटि कहती है कि आप बाइनरी को धक्का नहीं दे सकते क्योंकि वर्चुअल डिवाइस पर पर्याप्त जगह नहीं है। एमुलेटर लॉन्च करते समय आप -partition-sizeविभाजन आकार निर्दिष्ट करने के लिए विकल्प जोड़ सकते हैं । के साथ अपने एमुलेटर लांच करने का प्रयासtools/emulator -avd MyAndroidVirtualDeviceName -partition-size 256
अब्द

2
नए एमुलेटर पर रीमाउंट कमांड काम नहीं कर सकता है, आप इसे बदल सकते हैं adb shell mount -o rw,remount -t yaffs2 /dev/block/mtdblock03 /system : adb root adb remount
कामरान अहमद

20

5.1.1 और 6.0 के साथ AVD के लिए मैंने विंडोज़ में अगली स्क्रिप्ट का उपयोग किया:

set adb=adb -s emulator-5558
set arch=x64
set pie=
adb start-server
%adb% root
%adb% remount
rem %adb% shell mount -o remount,rw /system
%adb% shell setenforce 0
%adb% install common/Superuser.apk
%adb% push %arch%/su%pie% /system/bin/su
%adb% shell chmod 0755 /system/bin/su
%adb% push %arch%/su%pie% /system/xbin/su
%adb% shell chmod 0755 /system/xbin/su
%adb% shell su --install
%adb% shell "su --daemon&"
rem %adb% shell mount -o remount,ro /system

exit /b

SuperSU से UPDATE.zip की आवश्यकता है। उन्हें किसी भी फ़ोल्डर में अनपैक किया। ऊपर सामग्री के साथ बैट फ़ाइल बनाएँ। आवश्यक आर्किटेक्चर और डिवाइस निर्दिष्ट करना न भूलें:set adb=adb -s emulator-5558 और set arch=x64। यदि आप एंड्रॉइड 5.0 या उसके ऊपर 5.0 चलाते हैं, तो बदल set pie=दें set pie=.pie। चलाओ। आपको वर्तमान रन के लिए अस्थायी रूट मिलता है।

यदि आपको रीमाउंट सिस्टम विभाजन में त्रुटि मिली है, तो आपको कमांड लाइन से AVD शुरू करने की आवश्यकता है। Android 7 के लिए पहले चरण के नीचे देखें।

अगर आप इसे लगातार बनाना चाहते हैं - SuperSU में बाइनरी को अपडेट करें और डिफ़ॉल्ट सिस्टम के स्थान के रूप में अस्थायी फ़ोल्डर से store.img को स्टोर करें।

स्थायी पर परिणामी अस्थायी जड़ को कैसे परिवर्तित करें

पहला - यह सुपरसु को जाता है। यह एक बाइनरी अपग्रेड प्रदान करता है। सामान्य तरीके से अपडेट करें। रिबूट अस्वीकार।

दूसरा - केवल एमुलेटर के लिए प्रासंगिक है। वही ए.वी.डी. लब्बोलुआब यह है कि सिस्टम छवि में परिवर्तन सहेजा नहीं जाएगा। आपको उन्हें अपने लिए रखने की जरूरत है।

अलग-अलग एमुलेटर के लिए पहले से ही निर्देश अलग-अलग हैं।

AVD के लिए आप एक अस्थायी फ़ाइल system.img ढूंढने का प्रयास कर सकते हैं, इसे कहीं सहेज सकते हैं और जब आप एमुलेटर शुरू करते हैं तो इसका उपयोग कर सकते हैं।

विंडोज में यह स्थित है %LOCALAPPDATA%\Temp\AndroidEmulatorऔर इसका नाम कुछ इस तरह है TMP4980.tmp

आप इसे एक फ़ोल्डर एवीडी डिवाइस ( %HOMEPATH%\.android\avd\%AVD_NAME%.avd\) में कॉपी कर सकते हैं , और इसका नाम बदल दिया जाएगा system.img

अब यह सामान्य के बजाय, शुरुआत में उपयोग किया जाएगा। यह सच है कि अगर SDK में छवि अपडेट की जाती है, तो वह पुरानी होगी।

इस मामले में, आपको इसे हटाने की आवश्यकता होगी system.img, और इसके निर्माण पर ऑपरेशन को दोहराना होगा।

रूसी में अधिक विस्तृत मैनुअल: http://4pda.ru/forum/index.php?showtopic=318487&view=findpost&p=45421931


एंड्रॉइड 7 के लिए आपको अतिरिक्त चरणों को चलाने की आवश्यकता है: 1. मैन्युअल रूप से एमुलेटर चलाने की आवश्यकता है। एसडीके फ़ोल्डर में जाएं sdk\tools\lib64\qt\lib। इस -writable-system -selinux disabled तरह से विकल्पों के साथ इस फ़ोल्डर एमुलेटर से चलाएं :

F:\android\sdk\tools\lib64\qt\lib>F:\android\sdk\tools\emulator.exe -avd 7.0_x86 -verbose -writable-system -selinux disabled
  1. आपको पुनः आरंभ करने की आवश्यकता है adbd रूट से :

    adb -s एमुलेटर -5554 रूट

और रिमाउंट सिस्टम:

adb -s emulator-5554 remount

इसे केवल एक बार रन एमुलेटर के लिए दान किया जा सकता है। और किसी भी अन्य रिमाउंट में राइट मोड टूट सकता है। इस वजह से आपको रिमाउंट के साथ किसी अन्य कमांड को चलाने की आवश्यकता नहीं है, जैसेmount -o remount,rw /system

एक और कदम एक ही रहता है - बाइनरी अपलोड करें, बाइनरी को डेमन और इतने पर चलाएं।

AVD Android 7 x86 से रूट के साथ चित्र: AVD Android 7 x86 रूट के साथ


यदि आप suबाइनरी को निष्पादित करने में पीआईई के बारे में त्रुटि देखते हैं - तो आप एमुलेटर गलत बाइनरी पर अपलोड करते हैं। आपको बाइनरी su.pieको आर्काइव के अंदर नाम से अपलोड करना होगा , लेकिन एमुलेटर पर इसका नाम होना चाहिए su, नहीं su.pie


क्या आप मुझे रूट को स्थायी बनाने के उपाय बता सकते हैं?
सत्य

update binary in SuperSU and store system.img from temp folder as replace of default system.img.
एनबेबी

मैंने इन चरणों का उपयोग किया। system.img को temp 1 से प्राप्त करने के लिए) cp / tmp / android / emulator-X8F7Hr ~ / Desktop / system.img 2) ने इस system को कॉपी किया। Android SDK के सिस्टम-इमेज में temp सेimg। एमुलेटर को फिर से शुरू करें, एमुलेटर जड़ अवस्था में नहीं है ... कृपया मुझे सही रास्ता
Satya

बेहतर निर्देशिका निर्देशिका को कॉपी करें। लेकिन पहले आपको सुपर मोड में बाइनरी को सामान्य मोड में अपडेट करना होगा।
एनबीबी

मैंने बाइनरी को सामान्य मोड में अपडेट किया है और AVD डायरेक्टरी में कॉपी किया है, फिर भी रूट कायम नहीं है
Satya

13

मेरा मानना ​​है कि सबसे आसान तरीका कमांड के लिए एक उपनाम बनाना है sh, जैसे

adb shell
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system/bin
cat sh > su && chmod 4775 su

एंड्रॉइड एमुलेटर 3.0 और उच्चतर पर परीक्षण किया गया।


इसने मेरे लिए भी (x86_64 एंड्रॉइड 5.02 एमुलेटर पर) काम किया, जबकि ऊपर का सुझाव xbin में स्थापित करने के लिए नहीं था।
यानिक

7
मुझे मिलाmount: '/system' not in /proc/mounts
केनी वायलैंड

प्रणाली 72 के साथ विफल
ड्यूना

3

यहाँ आप सभी की जरूरत है। या आप इस स्क्रिप्ट का उपयोग कर सकते हैं:

echo on
set device=emulator-5554
set avd_name=
set adb=d:\Poprygun\DevTools\Android\Android-sdk\platform-tools\adb -s %device%
set emulator=d:\Poprygun\DevTools\Android\Android-sdk\emulator\emulator
set arch=x86
set pie=

echo Close all ANDROID emulators and press any key
pause
start %emulator% -avd Nexus_One_API_25 -verbose -writable-system
echo Wait until ANDROID emulator loading and press any key
pause

%adb% start-server
%adb% root
%adb% remount
%adb% shell setenforce 0
%adb% install D:\SuperSU\SuperSU.apk
%adb% push D:\SuperSU\su\%arch%\su.pie /system/bin/su
%adb% shell chmod 0755 /system/bin/su
%adb% push D:\SuperSU\su\%arch%\su.pie /system/xbin/su
%adb% shell chmod 0755 /system/xbin/su
%adb% shell su --install
%adb% shell "su --daemon&"
pause
exit /b

2

मैंने अभी ~ ~ Android / Sdk / system-images / android-22 / google_apis / x86 / system.img के लिए su को प्रतिस्थापित और असाइन किया गया है और अब Android 5 पर मेरे पास हमेशा नए सिस्टम के लिए रूट है, यह SuperPu स्थापित करने के लिए पर्याप्त है। apk

Android 6 is necessary only
adb root
adb shell
>/system/xbin/su --daemon &
>setenfoce 0

उसके बाद, SuperSu.apk रूट को देखता है। लेकिन मैं बाइनरी फ़ाइल को अपडेट नहीं करता हूं


1

मैंने उपरोक्त समाधानों से विधि का हिस्सा इस्तेमाल किया; हालाँकि, वे पूरी तरह से काम नहीं करते थे। एंडी के नवीनतम संस्करण पर, इसने मेरे लिए काम किया:

एंडी (रूट शेल) पर [प्राप्त करने के लिए, हैंडएंडी आइकन पर राइट क्लिक करें और टर्म शेल का चयन करें]

शेल के अंदर, ये कमांड चलाएं:

mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system/bin
cat sh > su && chmod 4775 su

फिर, सुपरएसयू स्थापित करें और एसयू बाइनरी स्थापित करें। यह हमारे द्वारा बनाई गई एसयू बाइनरी को बदल देगा। (वैकल्पिक) SuperSU निकालें और CWM द्वारा Superuser स्थापित करें। सु बाइनरी फिर से स्थापित करें। अब, रूट काम करता है!


1

मैंने SuperSU सहित उपरोक्त कई सुझावों की कोशिश की और काम करने के लिए कोई भी नहीं मिला, लेकिन कुछ बहुत सरल पाया जो मेरे उद्देश्यों के लिए काम करता है। मेरे मामले में, मैं केवल कमांड प्रॉम्प्ट पर साइक्लाइट चलाना चाहता था। मैं बस एंड्रॉइड (लॉलीपॉप) के पुराने संस्करण के साथ एक एमुलेटर का उपयोग करता हूं और तुरंत रूट एक्सेस प्राप्त करता हूं।


-1

मैंने पाया कि डिफ़ॉल्ट एपीआई 23 x86_64 एमुलेटर डिफ़ॉल्ट रूप से निहित है।


मैं जो जानता हूं, सिर्फ इसलिए कि आपके पास एक "जब आप" एडीबी रूट "टाइप करते हैं, तो इसका मतलब यह नहीं है कि ऐप्स रूट विशेषाधिकारों का लाभ ले सकते हैं। / प्रणाली में कहीं भी लिखने के लिए किसी भी परीक्षण के परिणामस्वरूप एक RO त्रुटि हुई, यहां तक ​​कि इसे RW के रूप में हटाने की कोशिश की गई।
१२:३४ पर फुलडेलिब
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.