Giter Site home page Giter Site logo

stuck always about rootavd HOT 21 OPEN

revolta avatar revolta commented on August 18, 2024
stuck always

from rootavd.

Comments (21)

newbit1 avatar newbit1 commented on August 18, 2024

Hi,
how do you start the script?
And how did you download it?

from rootavd.

revolta avatar revolta commented on August 18, 2024

start like this (the avd is androidapiversion 23, armv7a):
rootAVD.bat C:\xxxx\xxxx\AppData\Local\Android\Sdk\system-images\android-23\google_apis\armeabi-v7a\ramdisk.img

the second question, i am not sure what you mean. simply i downloaded the whole git - went here: https://github.com/newbit1/rootAVD, and then there is a CODE button, then press DOWNLOAD ZIP. thats it.

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

Ok i see.

In your log it says:

[] Extracting busybox from script ...
[!] There is no busybox behind the script

Which means the busybox is missing, which is embedded at the end of the script. So this indicates
your script file is corrupt.

Usually this is not a big issue, the script trys to download the complete script, but your log also says:

[!] AVD is offline

Which is also not a big issue, the script trys to install magisk temporally to get it hands on the busybox
inside the magisk apk. It copies the busybox from that installation to its own working dir.

From this point on, it should be able to execute the busybox binary, but your log says:

[] Extracting Magisk.zip ...
/data/data/com.android.shell/Magisk/rootAVD.sh[2608]: /data/data/com.android.shell/Magisk/busybox: can't execute: Permission denied

Which indicates the execute permissions are not set correctly.
it seems this is the actually issue.

I've changed something in that routine, and it did work for me.
Please re download the script and try again.

Btw: Magisk doesn't support Android 6 anymore, I think minimum Version is Android 7.

If I run a working script with busybox embedded, I got this log:

newbit@rootAVD % ./rootAVD.sh ~/Library/Android/sdk/system-images/android-23/google_apis/armeabi-v7a/ramdisk.img DEBUG
[!] We are in Debug Mode
[!] and we are NOT in an emulator shell
[*] Set Directorys
[-] Test if ADB SHELL is working
[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell
[*] Cleaning up the ADB working space
[*] Creating the ADB working space
[-] Magisk installer Zip exists already
[*] Push Magisk.zip into /data/data/com.android.shell/Magisk
[-] ./Magisk.zip: 1 file pushed, 0 skipped. 14.2 MB/s (11278270 bytes in 0.756s)
[-] ramdisk.img Backup exists already
[*] Push ramdisk.img into /data/data/com.android.shell/Magisk/ramdisk.img
[-] /Users/newbit/Library/Android/sdk/system-images/android-23/google_apis/armeabi-v7a/ramdisk.img: 1 file pushed, 0 skipped. 467.1 MB/s (890197 bytes in 0.002s)
[*] Push rootAVD.sh into /data/data/com.android.shell/Magisk
[-] rootAVD.sh: 1 file pushed, 0 skipped. 14.5 MB/s (7855986 bytes in 0.517s)
[-] run the actually Boot/Ramdisk/Kernel Image Patch Script
[*] from Magisk by topjohnwu and modded by NewBit XDA
[!] We are in a ranchu emulator shell
[-] Api Level Arch Detect
[-] Device Platform is arm only
[-] Device SDK API: 23
[-] First API Level: 
[-] The AVD runs on Android 6.0
[-] Switch to the location of the script file
[*] Extracting busybox from script ...
[!] Found a working busybox Binary: 
[!] BusyBox v1.33.1-Magisk (2021-05-08 15:20:41 PDT) multi-call binary.
[*] Extracting Magisk.zip ...
[-] Checking AVDs Internet connection...
[!] AVD is offline
[*] Re-Run rootAVD in Magisk Busybox STANDALONE (D)ASH
[-] We are now in Magisk Busybox STANDALONE (D)ASH
[*] rootAVD with Magisk MAGISK_VER='25.2' Installer
[-] Get Flags
[*] RECOVERYMODE=false
[-] KEEPVERITY=false
[*] KEEPFORCEENCRYPT=false
[-] copy all armeabi-v7a files from /data/data/com.android.shell/Magisk/lib/armeabi-v7a to /data/data/com.android.shell/Magisk
[*] Detecting ramdisk.img compression
[!] Ramdisk.img uses gzip compression
[-] taken from shakalaca's MagiskOnEmulator/process.sh
[*] executing ramdisk splitting / extraction / repacking
[*] After decompressing ramdisk.img, magiskboot will work
Detected format: [gzip]
[-] Checking ramdisk STATUS=0
[-] Stock boot image detected
[*] Verifying Boot Image by its Kernel Release number:
[-] This AVD = 3.10.0+
[-] Patching ramdisk
[*] adding overlay.d/sbin folders to ramdisk
Loading cpio: [ramdisk.cpio]
Create directory [overlay.d] (0750)
Create directory [overlay.d/sbin] (0750)
Dump cpio: [ramdisk.cpio]
[!] patching the ramdisk with Magisk Init
Loading cpio: [ramdisk.cpio]
Add entry [init] (0750)
Add entry [overlay.d/sbin/magisk32.xz] (0644)
Patch with flag KEEPVERITY=[false] KEEPFORCEENCRYPT=[false]
Found fstab file [fstab.goldfish]
Found fstab file [fstab.ranchu]
Found fstab file [fstab.ranchu-encrypt]
Remove pattern [,forceencrypt=/dev/block/vdd]
Loading cpio: [ramdisk.cpio.orig]
Backup mismatch entry: [fstab.ranchu-encrypt] -> [.backup/fstab.ranchu-encrypt]
Backup mismatch entry: [init] -> [.backup/init]
Record new entry: [overlay.d] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin/magisk32.xz] -> [.backup/.rmlist]
Create directory [.backup] (0000)
Add entry [.backup/.magisk] (0000)
Dump cpio: [ramdisk.cpio]
[*] repacking back to ramdisk.img format
[!] Rename Magisk.zip to Magisk.apk

If I run a working script without busybox embedded, I got this log:

newbit@rootAVD % ./rootAVD.sh ~/Library/Android/sdk/system-images/android-23/google_apis/armeabi-v7a/ramdisk.img DEBUG
[!] We are in Debug Mode
[!] and we are NOT in an emulator shell
[*] Set Directorys
[-] Test if ADB SHELL is working
[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell
[*] Cleaning up the ADB working space
[*] Creating the ADB working space
[-] Magisk installer Zip exists already
[*] Push Magisk.zip into /data/data/com.android.shell/Magisk
[-] ./Magisk.zip: 1 file pushed, 0 skipped. 15.9 MB/s (11278270 bytes in 0.678s)
[-] ramdisk.img Backup exists already
[*] Push ramdisk.img into /data/data/com.android.shell/Magisk/ramdisk.img
[-] /Users/newbit/Library/Android/sdk/system-images/android-23/google_apis/armeabi-v7a/ramdisk.img: 1 file pushed, 0 skipped. 441.8 MB/s (890197 bytes in 0.002s)
[*] Push rootAVD.sh into /data/data/com.android.shell/Magisk
[-] rootAVD.sh: 1 file pushed, 0 skipped. 338.2 MB/s (74196 bytes in 0.000s)
[-] run the actually Boot/Ramdisk/Kernel Image Patch Script
[*] from Magisk by topjohnwu and modded by NewBit XDA
[!] We are in a ranchu emulator shell
[-] Api Level Arch Detect
[-] Device Platform is arm only
[-] Device SDK API: 23
[-] First API Level: 
[-] The AVD runs on Android 6.0
[-] Switch to the location of the script file
[!] There is no busybox behind the script
[*] Trying to Download the Up-To-Date Script Version
[!] Temporarily installing Magisk
[!] Removing Temporarily installed Magisk
[*] Copy busybox from lib to workdir
[-] Checking AVDs Internet connection...
[!] AVD is online
[!] Downloading File rootAVD.sh complete!
[*] Extracting Magisk.zip ...
[*] Move busybox from lib to workdir
[!] Checking available Magisk Versions
[?] Choose a Magisk Version to install and make it local
[s] (s)how all available Magisk Versions
[1] local stable MAGISK_VER='25.2' (ENTER)
[2] stable 26.1
[3] canary d0c93842(26101)
[4] alpha 709f25f6-alpha(26101)
[-] You choose Magisk local stable Version MAGISK_VER='25.2'
[*] Re-Run rootAVD in Magisk Busybox STANDALONE (D)ASH
[-] We are now in Magisk Busybox STANDALONE (D)ASH
[*] rootAVD with Magisk MAGISK_VER='25.2' Installer
[-] Get Flags
[*] RECOVERYMODE=false
[-] KEEPVERITY=false
[*] KEEPFORCEENCRYPT=false
[-] copy all armeabi-v7a files from /data/data/com.android.shell/Magisk/lib/armeabi-v7a to /data/data/com.android.shell/Magisk
[*] Detecting ramdisk.img compression
[!] Ramdisk.img uses gzip compression
[-] taken from shakalaca's MagiskOnEmulator/process.sh
[*] executing ramdisk splitting / extraction / repacking
[*] After decompressing ramdisk.img, magiskboot will work
Detected format: [gzip]
[-] Checking ramdisk STATUS=0
[-] Stock boot image detected
[*] Verifying Boot Image by its Kernel Release number:
[-] This AVD = 3.10.0+
[-] Patching ramdisk
[*] adding overlay.d/sbin folders to ramdisk
Loading cpio: [ramdisk.cpio]
Create directory [overlay.d] (0750)
Create directory [overlay.d/sbin] (0750)
Dump cpio: [ramdisk.cpio]
[!] patching the ramdisk with Magisk Init
Loading cpio: [ramdisk.cpio]
Add entry [init] (0750)
Add entry [overlay.d/sbin/magisk32.xz] (0644)
Patch with flag KEEPVERITY=[false] KEEPFORCEENCRYPT=[false]
Found fstab file [fstab.goldfish]
Found fstab file [fstab.ranchu]
Found fstab file [fstab.ranchu-encrypt]
Remove pattern [,forceencrypt=/dev/block/vdd]
Loading cpio: [ramdisk.cpio.orig]
Backup mismatch entry: [fstab.ranchu-encrypt] -> [.backup/fstab.ranchu-encrypt]
Backup mismatch entry: [init] -> [.backup/init]
Record new entry: [overlay.d] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin/magisk32.xz] -> [.backup/.rmlist]
Create directory [.backup] (0000)
Add entry [.backup/.magisk] (0000)
Dump cpio: [ramdisk.cpio]
[*] repacking back to ramdisk.img format
[!] Rename Magisk.zip to Magisk.apk

from rootavd.

revolta avatar revolta commented on August 18, 2024

i have downloaded the updated script. it seems it was successful. when i try "adb shell --- then: su", it seems rooted (????):

C:\xxxx\xxxx\xxxx\ADB>adb shell
generic:/ $ id
uid=2000(shell) gid=2000(shell) groups=2000(shell),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc) context=u:r🐚s0
generic:/ $ su
generic:/ # id
uid=0(root) gid=0(root) groups=0(root),1004(input),1007(log),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats),3009(readproc) context=u:r:su:s0
generic:/ #

BUT, the app ROOT CHECKER PRO shows not rooted. i dont know.

yes, here is the log (i had to shut down avd manually) (avd is api level 25, android 7.1.1):

rootAVD.bat C:\xxx\xxxx\AppData\Local\Android\Sdk\system-images\android-25\google_apis\armeabi-v7a\ramdisk.img
[] Set Directorys
[-] Test if ADB SHELL is working
[-] ADB connectoin possible
[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell
[
] looking for Magisk installer Zip
[] Cleaning up the ADB working space
[
] Creating the ADB working space
[] Push Magisk.zip into /data/data/com.android.shell/Magisk
[-] C:\xxxxxx\xxxxx\Magisk.zip: 1 file pushed, 0 skipped. 61.7 MB/s (11278270 bytes in 0.174s)
[-] Backup exists already
[
] Push ramdisk.img into /data/data/com.android.shell/Magisk
[-] C:\xxxx\xxxx\AppData\Local\Android\Sdk\system-images\android-25\google_apis\armeabi-v7a\ramdisk.img: 1 file pushed, 0 skipped. 185.8 MB/s (1274384 bytes in 0.007s)
[-] Copy rootAVD Script into Magisk DIR
rootAVD.sh: 1 file pushed, 0 skipped. 77.9 MB/s (7856319 bytes in 0.096s)
[-] run the actually Boot/Ramdisk/Kernel Image Patch Script
[] from Magisk by topjohnwu and modded by NewBit XDA
[!] We are in a ranchu emulator shell
[-] Api Level Arch Detect
[-] Device Platform is arm only
[-] Device SDK API: 25
[-] First API Level:
[-] The AVD runs on Android 7.1.1
[-] Switch to the location of the script file
[
] Extracting busybox from script ...
[!] There is no busybox behind the script
[] Trying to Download the Up-To-Date Script Version
[!] Temporarily installing Magisk
[!] Removing Temporarily installed Magisk
[
] Copy busybox from lib to workdir
[-] Checking AVDs Internet connection...
[!] AVD is offline
[] Extracting Magisk.zip ...
/data/data/com.android.shell/Magisk/rootAVD.sh[2621]: /data/data/com.android.shell/Magisk/busybox: can't execute: Permission denied
[
] Move busybox from lib to workdir
[] Re-Run rootAVD in Magisk Busybox STANDALONE (D)ASH
[-] We are now in Magisk Busybox STANDALONE (D)ASH
[
] rootAVD with Magisk Installer
[-] Get Flags
[] RECOVERYMODE=false
[-] KEEPVERITY=false
[
] KEEPFORCEENCRYPT=false
/data/data/com.android.shell/Magisk/rootAVD.sh: cd: line 81: can't cd to /data/data/com.android.shell/Magisk/lib/armeabi-v7a: No such file or directory
mv: can't rename 'lib*.so': No such file or directory
[-] copy all armeabi-v7a files from /data/data/com.android.shell/Magisk/lib/armeabi-v7a to /data/data/com.android.shell/Magisk
[] Detecting ramdisk.img compression
[!] Ramdisk.img uses gzip compression
[-] taken from shakalaca's MagiskOnEmulator/process.sh
[
] executing ramdisk splitting / extraction / repacking
[] After decompressing ramdisk.img, magiskboot will work
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1335: /data/data/com.android.shell/Magisk/magiskboot: not found
[-] Stock A only system-as-root
[-] Stock boot image detected
[
] Verifying Boot Image by its Kernel Release number:
[-] This AVD = 3.10.0+
cat: can't open '/data/data/com.android.shell/Magisk/ramdisk.cpio': No such file or directory
[-] Patching ramdisk
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1462: /data/data/com.android.shell/Magisk/magiskboot: not found
[] adding overlay.d/sbin folders to ramdisk
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1482: /data/data/com.android.shell/Magisk/magiskboot: not found
[!] patching the ramdisk with Magisk Init
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1489: /data/data/com.android.shell/Magisk/magiskboot: not found
[
] repacking back to ramdisk.img format
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1519: /data/data/com.android.shell/Magisk/magiskboot: not found
[!] Rename Magisk.zip to Magisk.apk
[] Pull Magisk.apk into
[-] /data/data/com.android.shell/Magisk/Magisk.apk: 1 file pulled, 0 skipped. 33.5 MB/s (11278270 bytes in 0.321s
[-] Clean up the ADB working space
[-] Install all APKs placed in the Apps folder
[
] Trying to install APPS\Magisk.apk
[-] Performing Streamed Install
[-] Success
[-] Shut-Down and Reboot [Cold Boot Now] the AVD and see if it worked
[-] Root and Su with Magisk for Android Studio AVDs
[-] Modded by NewBit XDA - Jan. 2021
[*] Huge Credits and big Thanks to topjohnwu, shakalaca and vvb2060
[-] Trying to shut down the AVD
[!] If the AVD doesnt shut down, try it manually!

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

Thanks, still the script doesn't work proper in your situation.
Don't know why.

/data/data/com.android.shell/Magisk/rootAVD.sh[2621]: /data/data/com.android.shell/Magisk/busybox: can't execute: Permission denied

could mean, that busybox doesn't have the execution rights.

I can't fully reproduce your issue. I don't understand, why your rootAVD.sh file, doesn't have
the busyboxes in it. Did you edit this file?

To get more information, could you please add a debug command in your script?
Change Line 1074 and 1075 from:

RemoveTemporarilyMagisk
CopyBusyBox

to:

RemoveTemporarilyMagisk
ls -l $BASEDIR/lib/*
set -x
CopyBusyBox

and then post everything after

[!] Removing Temporarily installed Magisk

Also, please use the fanced code block to post your log.

If you are on a Windows machine, wouldn't it make more sense, to use a x86 or x86_64 image?
the arm images don't run well anyway, if your host isn't already an arm as well.

Can you please upload your rootavd.sh file? So I can see if there is anything wrong with it?

from rootavd.

revolta avatar revolta commented on August 18, 2024

no files were edited by me, all are the original ones from this github.

no, i doesnt make sense for me (the x86). i would like to use this emulator for native arm coding a do some research of android/linux (arm version). yes, this emulation (based on qemu) is really slow (even when you have a fast pc).

upload my rootavd.sh? does it have any sense?? i didn't made any changes, so the file is the same as the one uploaded in this github repo.

changed the lines, here is the cmd output:

[!] Removing Temporarily installed Magisk
total 4640
-rwxr-xr-x 1 shell shell 1461400 2023-05-13 06:52 libbusybox.so
-rwxr-xr-x 1 shell shell  154452 2023-05-13 06:52 libmagisk32.so
-rwxr-xr-x 1 shell shell  323320 2023-05-13 06:52 libmagiskboot.so
-rwxr-xr-x 1 shell shell  210128 2023-05-13 06:52 libmagiskinit.so
-rwxr-xr-x 1 shell shell  218220 2023-05-13 06:52 libmagiskpolicy.so
+ CopyBusyBox
+ echo '[*] Copy busybox from lib to workdir'
[*] Copy busybox from lib to workdir
+ '[' -e /data/data/com.android.shell/Magisk/lib ']'
+ chmod -R 755 /data/data/com.android.shell/Magisk/lib
+ >/dev/null
+ 2>&1
+ cp -f /data/data/com.android.shell/Magisk/lib/armeabi-v7a/libbusybox.so /data/data/com.android.shell/Magisk/busybox
+ >/dev/null
+ 2>&1
+ /data/data/com.android.shell/Magisk/busybox
+ >/dev/null
+ 2>&1
+ cp -f /data/data/com.android.shell/Magisk/lib/armeabi-v7a/libbusybox.so /data/data/com.android.shell/Magisk/busybox
+ >/dev/null
+ 2>&1
+ /data/data/com.android.shell/Magisk/busybox
+ >/dev/null
+ 2>&1
+ cp -f /data/data/com.android.shell/Magisk/lib/arm/libbusybox.so /data/data/com.android.shell/Magisk/busybox
+ DownLoadFile https://github.com/newbit1/rootAVD/raw/master/ rootAVD.sh
+ CheckAVDIsOnline
+ '[' -z ']'
+ echo '[-] Checking AVDs Internet connection...'
[-] Checking AVDs Internet connection...
+ AVDIsOnline=false
+ >/dev/null
+ 2>&1
+ /data/data/com.android.shell/Magisk/busybox timeout 3 /data/data/com.android.shell/Magisk/busybox wget -q --spider --no-check-certificate http://github.com
+ '[' 126 -eq 0 ']'
+ false
+ echo '[!] AVD is offline'
[!] AVD is offline
+ export AVDIsOnline
+ false
[*] Extracting Magisk.zip ...
/data/data/com.android.shell/Magisk/rootAVD.sh[2623]: /data/data/com.android.shell/Magisk/busybox: can't execute: Permission denied
[*] Move busybox from lib to workdir
[*] Re-Run rootAVD in Magisk Busybox STANDALONE (D)ASH
[-] We are now in Magisk Busybox STANDALONE (D)ASH
[*] rootAVD with Magisk  Installer
[-] Get Flags
[*] RECOVERYMODE=false
[-] KEEPVERITY=false
[*] KEEPFORCEENCRYPT=false
/data/data/com.android.shell/Magisk/rootAVD.sh: cd: line 81: can't cd to /data/data/com.android.shell/Magisk/lib/armeabi-v7a: No such file or directory
mv: can't rename 'lib*.so': No such file or directory
[-] copy all armeabi-v7a files from /data/data/com.android.shell/Magisk/lib/armeabi-v7a to /data/data/com.android.shell/Magisk
[*] Detecting ramdisk.img compression
[!] Ramdisk.img uses gzip compression
[-] taken from shakalaca's MagiskOnEmulator/process.sh
[*] executing ramdisk splitting / extraction / repacking
[*] After decompressing ramdisk.img, magiskboot will work
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1337: /data/data/com.android.shell/Magisk/magiskboot: not found
[-] Stock A only system-as-root
[-] Stock boot image detected
[*] Verifying Boot Image by its Kernel Release number:
[-] This AVD = 3.10.0+
cat: can't open '/data/data/com.android.shell/Magisk/ramdisk.cpio': No such file or directory
[-] Patching ramdisk
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1464: /data/data/com.android.shell/Magisk/magiskboot: not found
[*] adding overlay.d/sbin folders to ramdisk
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1484: /data/data/com.android.shell/Magisk/magiskboot: not found
[!] patching the ramdisk with Magisk Init
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1491: /data/data/com.android.shell/Magisk/magiskboot: not found
[*] repacking back to ramdisk.img format
/data/data/com.android.shell/Magisk/rootAVD.sh: line 1521: /data/data/com.android.shell/Magisk/magiskboot: not found
[!] Rename Magisk.zip to Magisk.apk
[*] Pull Magisk.apk into
[-] /data/data/com.android.shell/Magisk/Magisk.apk: 1 file pulled, 0 skipped. 36.8 MB/s (11278270 bytes in 0.292s
[-] Clean up the ADB working space
[-] Install all APKs placed in the Apps folder
[*] Trying to install APPS\Magisk.apk
[-] Performing Streamed Install
[-] Success
[-] Shut-Down and Reboot [Cold Boot Now] the AVD and see if it worked
[-] Root and Su with Magisk for Android Studio AVDs
[-] Modded by NewBit XDA - Jan. 2021
[*] Huge Credits and big Thanks to topjohnwu, shakalaca and vvb2060
[-] Trying to shut down the AVD
[!] If the AVD doesnt shut down, try it manually!

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

no files were edited by me, all are the original ones from this github.
upload my rootavd.sh? does it have any sense?? i didn't made any changes, so the file is the same as the one uploaded in this github repo.

Well, this is what we expect, and what is normally the case, yes! But the observations clearly indicates, that there
must be something wrong with the script. Otherwise, it wouldn't say, there is no busybox behind the script.
Plus, as you can clearly see -rwxr-xr-x 1 shell shell 1461400 2023-05-13 06:52 libbusybox.so
busybox has execution permits, as the script is setting it. But it still says: data/data/com.android.shell/Magisk/rootAVD.sh[2623]: /data/data/com.android.shell/Magisk/busybox: can't execute: Permission denied

So please, upload it for me If you can. So I can further investigate the issue.

Did you really put in ls -l $BASEDIR/lib/*this command should list you all sub directories as well, not only one.

no, i doesnt make sense for me (the x86). i would like to use this emulator for native arm coding a do some research of > android/linux (arm version). yes, this emulation (based on qemu) is really slow (even when you have a fast pc).

Yeah performance in this case doesn't bring you much, you need a similar host architecture.
But why do you need Android 7 for it? If you use an Android 11 AVD, it has the libndk_translation built in,
and translates natively arm code for you. -> Run ARM apps on the Android Emulator

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

I have changed the whole unzip and busybox routines, also I removed the busybox behind the
script entirely. Please give it a try, and see if this works now for your use case.

from rootavd.

revolta avatar revolta commented on August 18, 2024

the file rootAVD.sh, is uploaded. the old one, and the new new one modified by you few days ago (i had to add .txt extension, just remove it).
rootAVD-new.sh.txt
rootAVD-old.sh.txt

yes, i made the exact modification as you wrote:

RemoveTemporarilyMagisk
ls -l $BASEDIR/lib/*
set -x
CopyBusyBox

thank you, i didn't know that. i tried to use all major emulators, but none of them was able to run any armv7a/armv8 native binary (even the genymotion with ARM TRANSLATION using libhoudini could't do that). so the only option for me was to use a qemu based emulator (which could possibly run a native binary). i thought that, you must use a armv7a/armv8a image/avd to run a native arm binary. BUT, thank you for your advice, it seems like you are right, i tried ANDROID 11 avd... and, surprise, IT DID WORK! lul and more important thing, the android 11 avd runs really fast, and another more important thing is, that rootavd is working!! i have root access. so, i have to tell you, i am really grateful for your advice. now i can play with (debug binaries, hope that debugging will also work, i didn't tried it yet, uff!!) fast running avd (x86/64) which seems to work with arm binaries.

also i tried the new rootavd, the new modified, on the arm avd/image, still not working:

[*] Set Directorys
[-] Test if ADB SHELL is working
[-] ADB connectoin possible
[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell
[*] looking for Magisk installer Zip
[*] Cleaning up the ADB working space
[*] Creating the ADB working space
[*] Push Magisk.zip into /data/data/com.android.shell/Magisk
[-] rootAVD-master\Magisk.zip: 1 file pushed, 0 skipped. 48.2 MB/s (11278270 bytes in 0.223s)
[-] Backup exists already
[*] Push ramdisk.img into /data/data/com.android.shell/Magisk
[-] AppData\Local\Android\Sdk\system-images\android-25\google_apis\armeabi-v7a\ramdisk.img: 1 file pushed, 0 skipped. 157.4 MB/s (1274384 bytes in 0.008s)
[-] Copy rootAVD Script into Magisk DIR
rootAVD.sh: 1 file pushed, 0 skipped. 63.4 MB/s (76222 bytes in 0.001s)
[-] run the actually Boot/Ramdisk/Kernel Image Patch Script
[*] from Magisk by topjohnwu and modded by NewBit XDA
[!] We are in a ranchu emulator shell
[-] Api Level Arch Detect
[-] Device Platform is arm only
[-] Device SDK API: 25
[-] First API Level:
[-] The AVD runs on Android 7.1.1
[-] Switch to the location of the script file
[*] Looking for an unzip binary
[-] No unzip binary found
[!] Temporarily installing Magisk
[*] Copy Magisk Lib Files to workdir
[!] Removing Temporarily installed Magisk
[*] Finding a working Busybox Version
ls: /data/data/com.android.shell/Magisk/lib/armeabi-v7a/*busybox*: No such file or directory
[*] Copy busybox from lib to workdir
chmod: /data/data/com.android.shell/Magisk/busybox: No such file or directory
[*] Extracting Magisk.zip via Busybox ...
[!] Busybox binary does not support extracting Magisk.zip

from rootavd.

revolta avatar revolta commented on August 18, 2024

aaaah, shit! i thought that it would be possible to debug arm code, but no it is not. the debug server arm binary works on the x86/64 avd (android 11), it can run. but the debugging itself doesn't work. it is maybe because of the libhoudini translation library, who knows. so, it's look like that the only hope is to use one of the VEEERY slow ARM images/avds - but the root still doesn't work.

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

Interesting, so debugging doesnt work with the ndk libtranslation.

I dont get why the script acts different on your machine, while tested it with the same configuration.

You can try to add the debug commands again, and show me the log files.

RemoveTemporarilyMagisk
ls -l $BASEDIR/lib/*
set -x
CopyBusyBox

You could also delete your system-image, and re download it. While it is downloading, it shows you the complete download link. Copy and paste it here please. Perhaps you system image has a difference to mine. With that download link i can try to use it and see how it works on my machine.

from rootavd.

revolta avatar revolta commented on August 18, 2024

i don' know if i am doing it right (the rootAVD.sh file has changed), the right place for the debug commands is here:

DownloadUptoDateSript() {
	echo "[*] Trying to Download the Up-To-Date Script Version"
	
	local DLL_URL="https://github.com/newbit1/rootAVD/raw/master/"
	local DLL_SCRIPT="rootAVD.sh"
	local DLL_ROOTAVD_ZIP="https://github.com/newbit1/rootAVD/archive/refs/heads/master.zip"
	local PKG_PATH=""
	
	ExtractMagiskViaPM
	FindWorkingBusyBox
	CopyBusyBox	
	DownLoadFile $DLL_URL $DLL_SCRIPT

changed it to:

DownloadUptoDateSript() {
	echo "[*] Trying to Download the Up-To-Date Script Version"
	
	local DLL_URL="https://github.com/newbit1/rootAVD/raw/master/"
	local DLL_SCRIPT="rootAVD.sh"
	local DLL_ROOTAVD_ZIP="https://github.com/newbit1/rootAVD/archive/refs/heads/master.zip"
	local PKG_PATH=""
	
	ExtractMagiskViaPM
	FindWorkingBusyBox
	RemoveTemporarilyMagisk ----->>> NEW
	ls -l $BASEDIR/lib/* ----->>> NEW
	set -x ----->>> NEW
	CopyBusyBox ----->>> NEW
	DownLoadFile $DLL_URL $DLL_SCRIPT

is that place right?

anyways, it doesn't work, here's the latest log:

[*] Set Directorys
[-] Test if ADB SHELL is working
[-] ADB connectoin possible
[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell
[*] looking for Magisk installer Zip
[*] Cleaning up the ADB working space
[*] Creating the ADB working space
[*] Push Magisk.zip into /data/data/com.android.shell/Magisk
[-] x:\xxx\rootAVD-master\Magisk.zip: 1 file pushed, 0 skipped. 68.4 MB/s (11278270 bytes in 0.157s)
[*] create Backup File
[*] Push ramdisk.img into /data/data/com.android.shell/Magisk
[-] x:\xxxx\xxxx\AppData\Local\Android\Sdk\system-images\android-25\google_apis\armeabi-v7a\ramdisk.img: 1 file pushed, 0 skipped. 1323.9 MB/s (1274384 bytes in 0.001s)
[-] Copy rootAVD Script into Magisk DIR
rootAVD.sh: 1 file pushed, 0 skipped. 54.1 MB/s (76272 bytes in 0.001s)
[-] run the actually Boot/Ramdisk/Kernel Image Patch Script
[*] from Magisk by topjohnwu and modded by NewBit XDA
[!] We are in a ranchu emulator shell
[-] Api Level Arch Detect
[-] Device Platform is arm only
[-] Device SDK API: 25
[-] First API Level:
[-] The AVD runs on Android 7.1.1
[-] Switch to the location of the script file
[*] Looking for an unzip binary
[-] No unzip binary found
[!] Temporarily installing Magisk
[*] Copy Magisk Lib Files to workdir
[!] Removing Temporarily installed Magisk
[*] Finding a working Busybox Version
[*] Copy busybox from lib to workdir
[*] Extracting Magisk.zip via Busybox ...
[!] Busybox binary does not support extracting Magisk.zip

for example i chose this system image, here is the info:

Packages to install: - Google APIs ARM EABI v7a System Image (system-images;android-25;google_apis;armeabi-v7a)

Nougat 25 armeabi-v7a Android 7.1.1 (Google APIs)

https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-25_r18.zip

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

Yes, add the lines in the rootavd.sh
Sorry, my bad. Between lines 1107 and 1108

	FindWorkingBusyBox
	CopyBusyBox

insert:

	ls -l $BASEDIR/lib/*
	set -x

to:

	FindWorkingBusyBox
	ls -l $BASEDIR/lib/*
	set -x
	CopyBusyBox

These commands are for debugging, not for fixing.
Make sure, if you save the file, to keep the file ending LF.

Thanks for the download link, i will have a look into it.

from rootavd.

revolta avatar revolta commented on August 18, 2024

here's the log:

x:\xxx\rootAVD-master>x:\xxx\rootAVD-master\rootAVD.bat x:\xxx\xxx\AppData\Local\Android\Sdk\system-images\android-25\google_apis\armeabi-v7a\ramdisk.img
[*] Set Directorys
[-] Test if ADB SHELL is working
[-] ADB connectoin possible
[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell
[*] looking for Magisk installer Zip
[*] Cleaning up the ADB working space
[*] Creating the ADB working space
[*] Push Magisk.zip into /data/data/com.android.shell/Magisk
[-] x:\xxx\rootAVD-master\Magisk.zip: 1 file pushed, 0 skipped. 68.5 MB/s (11278270 bytes in 0.157s)
[-] Backup exists already
[*] Push ramdisk.img into /data/data/com.android.shell/Magisk
[-] x\xxx\xxx\AppData\Local\Android\Sdk\system-images\android-25\google_apis\armeabi-v7a\ramdisk.img: 1 file pushed, 0 skipped. 1500.6 MB/s (1274384 bytes in 0.001s)
[-] Copy rootAVD Script into Magisk DIR
rootAVD.sh: 1 file pushed, 0 skipped. 24.4 MB/s (76253 bytes in 0.003s)
[-] run the actually Boot/Ramdisk/Kernel Image Patch Script
[*] from Magisk by topjohnwu and modded by NewBit XDA
[!] We are in a ranchu emulator shell
[-] Api Level Arch Detect
[-] Device Platform is arm only
[-] Device SDK API: 25
[-] First API Level:
[-] The AVD runs on Android 7.1.1
[-] Switch to the location of the script file
[*] Looking for an unzip binary
[-] No unzip binary found
[!] Temporarily installing Magisk
[*] Copy Magisk Lib Files to workdir
[!] Removing Temporarily installed Magisk
[*] Finding a working Busybox Version
ls: /data/data/com.android.shell/Magisk/lib/armeabi-v7a/*busybox*: No such file or directory
[*] Copy busybox from lib to workdir
chmod: /data/data/com.android.shell/Magisk/busybox: No such file or directory
[*] Extracting Magisk.zip via Busybox ...
[!] Busybox binary does not support extracting Magisk.zip

from rootavd.

newbit1 avatar newbit1 commented on August 18, 2024

ok great, thanks. Somehow, the just copied busybox is not there.

from rootavd.

revolta avatar revolta commented on August 18, 2024

hm, i was reading the output, and this seems interesting to me:

[-] In any AVD via ADB, you can execute code without root in /data/data/com.android.shell

the sentence tell's it all. so i tried it. i pushed a debugging server to that directory "/data/data/com.android.shell", and it worked homehow (as root??). but unfortunately i wasn't able to attach to any process (only the system process was shown). so maybe the server isn't doing what it should.

that was just an sudden idea.. anyways, hope you will make the root run!

from rootavd.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.