{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Just execute this script from Terminal or a script manager as root :
Warning : This is only for those using http://quarx2k.ru/cm10-2ndboot-nightly-defy(+)/CM10-20121102-NIGHTLY-mb526.zip (20121102)
Code:
#!/system/bin/sh
echo "Mounting system as read/write.."
mount -o rw,remount /system
sleep 2
echo "Cleaning up old symlinks"
if [ -e /system/bin/ls ]
then
rm /system/bin/ls
fi
if [ -e /system/bin/mount ]
then
rm /system/bin/mount
fi
if [ -e /system/bin/cat ]
then
rm /system/bin/cat
fi
if [ -e /system/bin/id ]
then
rm /system/bin/id
fi
if [ -e /system/bin/chmod ]
then
rm /system/bin/chmod
fi
if [ -e /system/bin/chown ]
then
rm /system/bin/chown
fi
if [ -e /system/bin/ln ]
then
rm /system/bin/ln
fi
if [ -e /system/bin/mkdir ]
then
rm /system/bin/mkdir
fi
if [ -e /system/bin/mv ]
then
rm /system/bin/mv
fi
if [ -e /system/bin/rm ]
then
rm /system/bin/rm
fi
if [ -e /system/bin/df ]
then
rm /system/bin/df
fi
echo "Creating symlinks.."
cd /system/bin
ln -s toolbox ls
ln -s toolbox mount
ln -s toolbox cat
ln -s toolbox id
ln -s toolbox chmod
ln -s toolbox chown
ln -s toolbox ln
ln -s toolbox mkdir
ln -s toolbox mv
ln -s toolbox rm
ln -s toolbox df
echo "Mounting system as read only.."
mount -o ro,remount /system
echo "Done.."
exit 0
Apk contain more fixes from cm team. To install it, you'll have to copy it manually to /system/app . Link : http://db.tt/2SOvNdIy
If you have applied the patch correctly, you will have the following files(symlinks) in /system/bin : ls, ln, mv, mkdir, rm, id, chown, chmod, df, cat, mount. Otherwise, the patch wasn't applied correctly.
Thanks for share, working fine here
awesome this works !!
Moved to Themes and Apps section.
for me it;s working only in safe mode, other generate errors: "there is no information available for the system" , "the file or folder was not found"etc..
pawelsz said:
for me it;s working only in safe mode, other generate errors: "there is no information available for the system" , "the file or folder was not found"etc..
Click to expand...
Click to collapse
same for me
pawelsz said:
for me it;s working only in safe mode, other generate errors: "there is no information available for the system" , "the file or folder was not found"etc..
Click to expand...
Click to collapse
It must be because there are a few commits made to the app after the nightly was released. I have added apk as attachment to op. You will have to place it in /system/app manually.
Sent from my MB526 using xda app-developers app
hmm, i've copy apk from here:
http://forum.xda-developers.com/showthread.php?t=1969684
but after replace at /system/app and set permissions icon for app disappeare, only can see app in app manager
pawelsz said:
hmm, i've copy apk from here:
http://forum.xda-developers.com/showthread.php?t=1969684
but after replace at /system/app and set permissions icon for app disappeare, only can see app in app manager
Click to expand...
Click to collapse
It looks like you're doing something wrong. Anyway the fix should make file manager work without installing the new apk. The commits I mentioned above are small changes. Please check the way you run the script ,the rom you are using and the way you install the apk.
Tried using the patch as above, but says my phone is not rooted?
I have rooted it and installed the newest cm10 nightly, which is working perfectly except for the new file manager.
Anyone know how to fix this?
it shows me safe mode when i press yes it crashes....
I am also having same problem
Sent from my MB526 using xda premium
prashant_ch said:
it shows me safe mode when i press yes it crashes....
Click to expand...
Click to collapse
Try removing the "su" line and running it in root mode using script manager.
Sent from my iPod touch using Tapatalk
Thanks.... Works perfectly for me!
thnx....
but dont work:
remove su line
or
with scrip manager...
work on rom tool box scripter... no remove su line...
can someone make a zip? im having problems
Related
Hi All Dev's,
In all dev forums we generally face various challenges and as such need to ask users a lot of question's if you have done this or not etc.
I am thinking of creating a simple script which when run on the machine can give us all the details as much as required.
for example for my BT5 and ubuntu work i require output of following commands.
mount
which busybox
echo $PATH
busybox
need inputs from other developers what exact details do they require to debug so that we can make a custom debug script which we can ask user to run once and use that as input for all its queries.....
More i will keep on adding in here... need dev's input here.
Note to MOD : this thread is in Dev section coz work is going on i am working on script just crowdsourcing the content as i don't want to leave anything out....
u will need to check for the following most used commands:
Code:
cat /proc/mtd
which
busybox
mount
ls -l `which mount`
ls -l `which busybox`
ls -l `which sh`
ls -l `which chmod`
ls -l `which chwon`
ls -l `which grep`
ls -l `which sed`
ls -l `which awk`
and so on...
u get the idea...
so u get most info related to the device... MTD blocks, busybox location, mount points, location & symlink info (if any) of most used commands
Thanks for the inital tips ... working in this as i needed it for BT thread thought i would crowdsource the idea.
ohk so here is what i am doing right now.
creating a simple script which will generate all the debug output and dump it in /sdcard/debug_log.txt
then we can ask use to upload this debug_log.txt for our debugging.
To All Dev,
please suggest anything else you need to check frequently which we can add in here.
Will be uploading first version in few minutes.
@DooMLorD : might need your help in creating a recovery zip file of it.
anantshri said:
...
@DooMLorD : might need your help in creating a recovery zip file of it.
Click to expand...
Click to collapse
ya sure let me know...
till then something for u to read/check for creating update.zip
http://forum.xda-developers.com/showthread.php?t=1041064
also some examples of update-script:
http://forum.xda-developers.com/showthread.php?p=13522506#post13522506
First Set of code file
@DooMLorD : shamelessly copied your script to check type of Recovery, although added a bit of my logic in.
Code:
# DEBUG Log generation script created by Anant Shrivastava
# known as anantshri in XDA forum
# credit goes to B,J,Z and other developers.
# any specific code taken from other dev's have credit in place.
# incase i missed something send me a PM and i will add it.
debug()
{
#general debug listing.
echo "********** BUSYBOX *****************"
which busybox
busybox
echo "********** MOUNT *******************"
mount
cat /proc/mtd
echo "*************Command Permissions***************"
ls -l `which mount`
ls -l `which busybox`
ls -l `which sh`
ls -l `which chmod`
ls -l `which chwon`
ls -l `which grep`
ls -l `which sed`
ls -l `which awk`
echo "********** ROM SPECIFIC SETTINGS ***************"
cat /system/build.prop | grep "ro.build.id"
cat /system/build.prop | grep "ro.build.display.id"
cat /system/build.prop | grep "ro.build.version.incremental"
echo "************* KERNEL INFORMATION ****************"
uname -a
echo "************* DEFAULT PATH **********************"
echo $PATH
}
debug_bt()
{
echo "BackTrack Specific Log"
ls -l /sdcard/bt
}
chk_recovery()
{
#
# Script (v1) to check for type of Recovery
# by DooMLoRD
#
# For Xperia X10 users only
#
echo "Recovery disk's available"
if [ -e /system/bin/xrecovery.tar ]
then
echo "xRecovery FOUND!"
fi
if [ -e /system/recovtools/xrecovery.tar.gz ]
then
echo "FreeXperia Recovery FOUND! [TYPE 1]"
fi
if [ -e /system/recovery/recovery.tar.bz2 ]
then
echo "FreeXperia Recovery FOUND! [TYPE 2]"
fi
echo -n "Chargemon Configured Recovery : "
REC=`cat /system/bin/chargemon | grep tar | grep recovery | cut -f4 -d"/"`
if [ $REC == "xrecovery.tar" ]
then
echo "Xrecovery"
elif [ $REC == "xrecovery.tar.gz" ]
then
echo "FreeXperia Recovery"
elif [ $REC == "recovery.tar.bz2"]
then
echo "FreeXperia Recovery type 2"
fi
}
export LOG_FILE=/sdcard/debug_log.txt
echo "Creating DEBUG LOG please wait"
echo "Collection general information"
debug > $LOG_FILE 2>&1
echo "Checking Recovery installed on phone"
chk_recovery >> $LOG_FILE 2>&1
echo "Collecting BT specific information"
debug_bt >> $LOG_FILE 2>&1
I am right now just attaching the sh file we can add an icon on desktop using gscript lite.
Please suggest if anything i missed.
ooohhhh nice modular functions in shell script!!!
great will be using this trick later for some advance work...
btw do shell scripts allow for "include" commands/scripts
EDIT:
yups i was thinking of including grep code to search for exact "Active" recovery in chargmeon...
EDIT2:
Gscript is weird... the output for ur code will display on device screen:
stderr:
stderr:
stderr:
stderr:
....
lots of them too
DooMLoRD said:
ooohhhh nice modular functions in shell script!!!
great will be using this trick later for some advance work...
btw do shell scripts allow for "include" commands/scripts
EDIT:
yups i was thinking of including grep code to search for exact "Active" recovery in chargmeon...
EDIT2:
Gscript is weird... the output for ur code will display on device screen:
stderr:
stderr:
stderr:
stderr:
....
lots of them too
Click to expand...
Click to collapse
1) just pulling off old shell scripting tricks i used to use.
include bash do support need to check if android shell will support or not.
2) So your task half done...
3) Stderr is what i don't understand at all why they occur in gscript
anantshri said:
1) just pulling off old shell scripting tricks i used to use.
include bash do support need to check if android shell will support or not.
2) So your task half done...
3) Stderr is what i don't understand at all why they occur in gscript
Click to expand...
Click to collapse
u might also want to search for:
Code:
which
on FreeX10-beta4 its a part of busybox (symlinked to busybox)
also some additional stuff u might want to check from build.prop
Code:
echo "********** ROM SPECIFIC SETTINGS ***************"
cat /system/build.prop | grep "ro.build.version.sdk"
cat /system/build.prop | grep "ro.build.version.release"
cat /system/build.prop | grep "ro.product.model"
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
I think this is a great idea, as a standard user it will give me a chance to provide useful feedback (rather then just saying "that's a good idea!")
So, forgive me for my ignorance of development, but could you also use the routine to perform common tests. i.e, besides the bug reports are there other sub-routines that can be executed (harmlessly) to provide the dev's with additional info on the phones' make-up.
I suggest this assuming there are some common problems that could be identified by accessing additional date not currently found in the de-bug outputs..?
Hi All,
updated the script with some more codes ....
Please suggest if anything else is needed will try to see if i can make a flashable zip for this.
changelog
1)added logcat's for events main and radio. also added option to get stacktrace of dalvik.
EDIT : script updated.....
anantshri said:
Hi All,
updated the script with some more codes ....
Please suggest if anything else is needed will try to see if i can make a flashable zip for this.
changelog
1)added logcat's for events main and radio. also added option to get stacktrace of dalvik.
Click to expand...
Click to collapse
dude u posted output of script and not the updated script itself
@DooMLorD
thanks for pointing ... correct script updated....
Please check and suggest...
anantshri said:
@DooMLorD
thanks for pointing ... correct script updated....
Please check and suggest...
Click to expand...
Click to collapse
looking good so far....
few more sugestions:
dmesg
kmesg
last_kmesg
DooMLoRD said:
looking good so far....
few more sugestions:
dmesg
kmesg
last_kmesg
Click to expand...
Click to collapse
I DooMLoRD,
Checked about all three
dmesg gives runtime output of kerenel messages.
cat /proc/kmesg is a copy of dmesg output... with a twist. once cat /proc/kmesg is done the output goes out of file and it just keeps waiting for more input.
last_kmesg as i know is for the last session.
Script is done ... will just post the details. here.
Need your help in creating a zipable file for creating this script as a simple command on shell.
Version 1.0 debug script
Code:
# DEBUG Log generation script created by Anant Shrivastava
# known as anantshri in XDA forum
# credit goes to B,J,Z and other developers.
# any specific code taken from other dev's have credit in place.
# incase i missed something send me a PM and i will add it.
debug()
{
#general debug listing.
echo "********** BUSYBOX *****************"
which
which busybox
busybox
echo "********** MOUNT *******************"
mount
cat /proc/mtd
echo "*************Command Permissions***************"
ls -l `which mount`
ls -l `which busybox`
ls -l `which sh`
ls -l `which chmod`
ls -l `which chwon`
ls -l `which grep`
ls -l `which sed`
ls -l `which awk`
echo "********** ROM SPECIFIC SETTINGS ***************"
cat /system/build.prop | grep "ro.build.id"
cat /system/build.prop | grep "ro.build.display.id"
cat /system/build.prop | grep "ro.build.version.incremental"
cat /system/build.prop | grep "ro.build.version.sdk"
cat /system/build.prop | grep "ro.build.version.release"
cat /system/build.prop | grep "ro.product.model"
cat /system/build.prop | grep "ro.modversion"
cat /system/build.prop | grep "ro.rommanager.developerid"
cat /system/build.prop | grep "ro.build.description"
cat /system/build.prop | grep "ro.build.fingerprint"
echo "************* KERNEL INFORMATION ****************"
uname -a
echo "************* DEFAULT PATH **********************"
echo $PATH
}
debug_bt()
{
echo "************* BackTrack Specific Log ************"
ls -l /sdcard/bt
ls -l /data/local/bt
ls -l `which bt`
ls -l `which stopbt`
ls -l `which startbt`
echo "************* VNC Config File *******************"
cat /data/local/bt/root/.vnc/xstartup
}
chk_recovery()
{
#
# Script (v1) to check for type of Recovery
# by DooMLoRD
#
# For Xperia X10 users only
#
echo "*********************** RECOVERY DETAILS ***************"
echo "Recovery disk's available"
if [ -e /system/bin/xrecovery.tar ]
then
echo "xRecovery FOUND!"
fi
if [ -e /system/recovtools/xrecovery.tar.gz ]
then
echo "FreeXperia Recovery FOUND! [TYPE 1]"
fi
if [ -e /system/recovery/recovery.tar.bz2 ]
then
echo "FreeXperia Recovery FOUND! [TYPE 2]"
fi
echo -n "Chargemon Configured Recovery : "
REC=`cat /system/bin/chargemon | grep tar | grep recovery | cut -f4 -d"/"`
if [ $REC == "xrecovery.tar" ]
then
echo "Xrecovery"
elif [ $REC == "xrecovery.tar.gz" ]
then
echo "FreeXperia Recovery"
elif [ $REC == "recovery.tar.bz2"]
then
echo "FreeXperia Recovery type 2"
fi
}
logcats()
{
echo "========== LOGCAT : MAIN ==================="
logcat -b main -d
echo "========== LOGCAT : EVENTS ================="
logcat -b events -d
echo "========== LOGCAT : RADIO =================="
logcat -b radio -d
echo "******** DALVIK STACK TRACE *********************"
cat `cat /system/build.prop | grep "dalvik.vm.stack-trace-file" | cut -f2 -d"="`
echo "******** Kernel Messages DMESG ******************"
dmesg
echo "******** LOG LAST KMESG *************************"
cat /proc/last_kmsg
}
export LOG_FILE=/data/local/debug_log.txt
echo "Creating DEBUG LOG please wait"
echo "Collection general information"
debug > $LOG_FILE 2>&1
echo "Checking Recovery installed on phone"
chk_recovery >> $LOG_FILE 2>&1
echo "Collecting BT specific information"
debug_bt >> $LOG_FILE 2>&1
echo "Collecting logcat's : main, events, radio + stack trace"
logcats >> $LOG_FILE 2>&1
Bt5 & ubuntu chroot scripts, slighly modified from att GNote version. credit goes to (i assume) msullivan
scripts
http://dl.dropbox.com/u/4109264/chroot.zip
image
BT5 https://www.box.com/s/bi2ix44bi1urufdpatjq
Or Download it from Backtrack's website.
choose BT5
Arch: arm
Image: IMG
http://www.backtrack-linux.org/downloads/
::Ubuntu image and scripts:::
http://ubuntuone.com/1Ew1232e3D51PCjYOkkQU7
http://ubuntuone.com/6majPjQf42Mplb0RZpMjIF
unzip chroot.zip into /sdcard/bt5/ on your phone
(I can't give you the bt5.img I have, it already has a bunch of my stuff in it, just download the bt5.img here, from msullivans post, and take just the bt5.img and put it in your /sdcard/bt5/ folder with that you unzipped earlier.
You should have these files in /sdcard/bt5
bt.sh
mountonly
unionfs
fsrw
bt5.img
Once your files match what's shown above open terminal and:
gain root access for terminal
Code:
su
run the script from the directory
Code:
sh /sdcard/bt5/bt.sh
or change to the dir /sdcard/bt5
Code:
cd /sdcard/bt5
and run sh bt.sh
Code:
sh bt.sh
You should see it start up, and you'll be prompted to start VNC. type Y, for yes, enter
Because our phones are awesome, we want 1280X800 on our images. So, after you have answered yes to starting VNC, we need to edit /usr/bin/startvnc file.
Code:
vi /usr/bin/startvnc
change the last line to (it should say something like vncserver -geometry 800X480)
vncserver -geometry 1280x800
At this point the easy way is restart your phone, and start up bt5 again.
then go to VNC
Nickname: BackTrack5
Password: root
Address: 127.0.0.1
Port: 5901
_______________________________________________________
TL;DR:
scripts http://dl.dropbox.com/u/4109264/chroot.zip
BT5 https://www.box.com/s/bi2ix44bi1urufdpatjq
Or Download it from Backtrack's website.
choose BT5
Arch: arm
Image: IMG
http://www.backtrack-linux.org/downloads/bt5.img
edit /usr/bin/startvnc (in chroot) to vncserver -geometry 1280x800
restart phone, run bt.sh; sh /sdcard/bt5/bt.sh, and start up VNC
It's awesome, and works great with the BT mouse/keyboard, and the extra resolution makes it feel better than the old OQO's . it's awesome
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
also, if you want ubuntu, download the ARM ubuntu.img on XDA (there are everywhere) and just drop it in the folder, rename it to bt.img. (easy way) or change the bt.sh to reflect ubuntu.img everywhere it says bt.img
very interested in this... is this BT5 regular or or is this the version 5 R1 release?
- Dan
Mine is regular bt5, not sure what the images i linked to are. My image is a year old and was used on my atrix too. But i see no reason a new image would'nt work. I'll try to post an image tonight
Any luck finding an image?
images posted. ubuntu image soon.
edounn said:
images posted. ubuntu image soon.
Click to expand...
Click to collapse
Can't wait.
Thanks uploader.
Sorry to bother you but I'm getting the following error:
$ export PATH=/data/local/bin:$PATH
$ su
# sh /sdcard/bt5/bt.sh
mkdir failed for /data/local/mnt, File exists
Loop device exists
losetup: /dev/block/loop255: No such file or directory
mount: Invalid argument
mount: No such file or directory
mount: No such file or directory
mount: No such file or directory
net.ipv4.ip_forward = 1
/sdcard/bt5/bt.sh: cannot create /data/local/mnt/etc/resolv.conf: directory nonexistent
/sdcard/bt5/bt.sh: cannot create /data/local/mnt/etc/resolv.conf: directory nonexistent
/sdcard/bt5/bt.sh: cannot create /data/local/mnt/etc/hosts: directory nonexistent
Ubuntu is configured with SSH and VNC servers that can be accessed from the IP:
eth0: No such device
chroot: can't execute '/bin/bash': No such file or directory
Shutting down BackTrack ARM
failed.
failed.
failed.
failed.
losetup: /dev/block/loop255: No such device or address
#
Any ideas?
Sent from my SGH-I717R using xda premium
dan.expo said:
chroot: can't execute '/bin/bash': No such file or directory
Shutting down BackTrack ARM
failed.
failed.
failed.
failed.
losetup: /dev/block/loop255: No such device or address
#
Any ideas?
Click to expand...
Click to collapse
do you have busybox installed? if not, do that. if so, try running it twice.
Johnsondr80 said:
Can't wait.
Thanks uploader.
Click to expand...
Click to collapse
np guy with 379px signature ;-)
Yes, I have the newest version 1.19.4 from the installer but no avail.
Sent from my SGH-I717R using xda premium
dan.expo said:
Yes, I have the newest version 1.19.4 from the installer but no avail.
Sent from my SGH-I717R using xda premium
Click to expand...
Click to collapse
looks like it doesn't like your loop back for some reason
type in your terminal:
ls -l /dev/block | grep loop
you'll get a result back that shows loop## maybe try on of those instead of loop255
Yep, I am getting the same error as dan.expo
Ya it looks like I only have loop 1-7 so I guess I need to edit the script to one of those?
Sent from my SGH-I717R using xda premium
dan.expo said:
Ya it looks like I only have loop 1-7 so I guess I need to edit the script to one of those?
Sent from my SGH-I717R using xda premium
Click to expand...
Click to collapse
make sure you have losetup -d/dev/block/looop255 in your script.
Anyone fix error yet?
Sent from the best phone in the world Galaxy Note!!!
it works fine on mine and my buddies. I'll upload the script I have once more. The ones having problems? have you flashed anything? Both the ones I have seen personally working, mine and my buddies, both are stock, rooted, normal stuff.
/mnt/sdcard/bt5 # cat bt.sh
Code:
perm=$(id|cut -b 5)
if [ "$perm" != "0" ];then echo "This script requires root! Type: su"; exit; fi
mount -o remount,rw /dev/block/mmcblk0p5 /system
export kit=/sdcard/bt5
export bin=/system/bin
export mnt=/data/local/mnt
export USER=root
mkdir $mnt
export PATH=$bin:/usr/bin:/usr/local/bin:/usr/sbin:/bin:/usr/local/sbin:/usr/games:$PATH
export TERM=linux
export HOME=/root
if [ -b /dev/block/loop255 ]; then
echo "Loop device exists"
else
busybox mknod /dev/block/loop255 b 7 255
fi
#mount -o loop,noatime -t ext2 $kit/bt5.img $mnt
losetup /dev/block/loop255 $kit/bt5.img
mount -t ext2 /dev/block/loop255 $mnt
mount -t devpts devpts $mnt/dev/pts
mount -t proc proc $mnt/proc
mount -t sysfs sysfs $mnt/sys
busybox sysctl -w net.ipv4.ip_forward=1
echo "nameserver 8.8.8.8" > $mnt/etc/resolv.conf
echo "nameserver 8.8.4.4" >> $mnt/etc/resolv.conf
echo "127.0.0.1 localhost bt5" > $mnt/etc/hosts
echo "Ubuntu is configured with SSH and VNC servers that can be accessed from the IP:"
ifconfig eth0
echo " "
busybox chroot $mnt /bin/bash
echo "Shutting down BackTrack ARM"
umount $mnt/dev/pts
umount $mnt/proc
umount $mnt/sys
umount $mnt
losetup -d /dev/block/loop255
I have the overclock kernel and stock rogers rom. I managed to get the universal phone bt5 script working without issue (not optimized for the note mind you).
Sent from my SGH-I717R using xda premium
i think i changed something, and uploaded the normal one, just change the vnc file as per the instructions on the main post, and it'll be ready to go.
dan.expo said:
Sorry to bother you but I'm getting the following error:
$ export PATH=/data/local/bin:$PATH
$ su
# sh /sdcard/bt5/bt.sh
mkdir failed for /data/local/mnt, File exists
Loop device exists
losetup: /dev/block/loop255: No such file or directory
mount: Invalid argument
mount: No such file or directory
mount: No such file or directory
mount: No such file or directory
net.ipv4.ip_forward = 1
/sdcard/bt5/bt.sh: cannot create /data/local/mnt/etc/resolv.conf: directory nonexistent
/sdcard/bt5/bt.sh: cannot create /data/local/mnt/etc/resolv.conf: directory nonexistent
/sdcard/bt5/bt.sh: cannot create /data/local/mnt/etc/hosts: directory nonexistent
Ubuntu is configured with SSH and VNC servers that can be accessed from the IP:
eth0: No such device
chroot: can't execute '/bin/bash': No such file or directory
Shutting down BackTrack ARM
failed.
failed.
failed.
failed.
losetup: /dev/block/loop255: No such device or address
#
Any ideas?
Sent from my SGH-I717R using xda premium
Click to expand...
Click to collapse
check your mount
type mount and look for /dev/block/mmcblk0pXX /system something like that where XX is the number you need to change in the script file.
should look somethinig like this
mount -o remount,rw /dev/block/mmcblk0p24 /system
24 depending on what you see in your file system.
i'm on Tmobile Galaxy Note. and i was able to use this script by changing that
I Rooted my New SONY XPERIA TABLET S SGPT121US ICS 4.0.3
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Guide to Root your Xperia Tablet S!! ATTENTION: I am not responsible if you brick or damage your device, use at your OWN RISK!!
Files you need:
All in one Xperia Tablet root.zip
OR
ADB Tools
SonyTabletICS-2.zip
Superuser-3.1.3-arm-signed.zip
VpnFaker.apk (Attachment)
ATTENTION: For those who are not using the US firmware, the attached VpnFaker.apk may not be suitable for your tablet.
Please follow these steps(click me) to resign the VpnFaker.apk. Thanks to WonderEkin
***Pls Execute the command line by line***
Unzip those files into a dir, Open cmd console, cd to that dir
Run the following command and press Restore on your tablet
Code:
Code:
adb restore settings.ab
Check the result
Code:
Code:
adb shell ls -ld /data/data/com.android.settings/a
[COLOR="Green"]drwxrwxrwx system system a[/COLOR]
And continue, ignore the "rm -r a" permission denied error
Code:
Code:
adb shell
cd /data/data/com.android.settings
rm -r a
while : ; do ln -s /data a/file99; done
While the loop is running, open another cmd console and run
Code:
Code:
adb restore settings.ab
Once the restore process is completed, you can press CTRL+C on the 1st cmd console to break the loop
Check the /data permission
Code:
Code:
adb shell ls -ld /data
[COLOR="Green"]drwxrwxrwx system system data[/COLOR]
Then continue
Code:
Code:
adb push busybox /data/local/tmp
adb push rootkit.tar.gz /data/local/tmp
adb push Superuser.apk /data/local/tmp
adb push su /data/local/tmp
adb shell
cd /data/local/tmp
chmod 755 busybox
./busybox tar zxf rootkit.tar.gz
exit
Push the resigned VpnFaker.apk(resign by ZipSigner 2) and update the timestamp
Code:
Code:
adb push VpnFaker.apk /data/local/tmp
adb shell
touch -t 1346025600 /data/local/tmp/VpnFaker.apk
exit
Now, replace the VpnDialogs (ignore "cp: can't open 'system/xxxxxxx': Permission denied" while you execute "/data/local/tmp/busybox cp -r system system2")
Code:
Code:
adb shell
cd /data
/data/local/tmp/busybox cp -r system system2
/data/local/tmp/busybox find system2 -type f -exec chmod 666 {} \;
/data/local/tmp/busybox find system2 -type d -exec chmod 777 {} \;
mv system system-
mv system2 system
mv app app-
mkdir app
mv /data/local/tmp/VpnFaker.apk /data/app
Make sure the datatime is 2012/08/27 00:00
Code:
Code:
TZ=0 ls -l /data/app
[COLOR="green"]-rw-r--r-- shell shell 198580 2012-08-27 00:00 VpnFaker.apk[/COLOR]
Generate the packages.xml
Code:
Code:
/data/local/tmp/busybox sed -f /data/local/tmp/packages.xml.sed system-/packages.xml > system/packages.xml
And double check the result
Code:
Code:
/data/local/tmp/busybox grep vpndialogs system/packages.xml
[COLOR="green"]<updated-package name="com.android.vpndialogs" codepath="/system/app/VpnDialogs.apk" nativelibrarypath="/data/data/com.android.vpndialogs/lib" flags="1" ft="136f14be668" it="136f14be668" ut="136f14be668" version="15" shareduserid="1000">
<package name="com.android.vpndialogs" codepath="/data/app/VpnFaker.apk" nativelibrarypath="/data/data/com.android.vpndialogs/lib" flags="1" ft="1396560b400" it="1396560b400" ut="1396560b400" version="45" shareduserid="1000">[/COLOR]
Exit adb shell and reboot, you should see something like "Android is updating" during startup.
Code:
Code:
exit
adb reboot
Start the injected Terminal Emulator
Code:
Code:
adb shell am start -n com.android.vpndialogs/.Term
In Terminal Emulator
Code:
Code:
id
You should see the uid is 1000(system)
Still in the Terminal Emulator, ignore the script error
Code:
Code:
/data/local/tmp/onload.sh
/data/local/tmp/onload2.sh
Now back to the cmd console
Code:
adb shell
/dev/sh
id
Check the uid is 2000(shell)
And
Code:
Code:
chown 0.0 /data/local/tmp/_su
chmod 6755 /data/local/tmp/_su
/data/local/tmp/_su
id
Check the root access uid 0(root)
Backup /system (you may just skip it)
Code:
Code:
dd if=/dev/block/mmcblk0p3 of=/mnt/sdcard/system.ext4 bs=128K
Copy su & Superuser.apk to /system
Code:
Code:
/data/local/tmp/busybox mount -o rw,remount /system
/data/local/tmp/busybox cp /data/local/tmp/_su /system/xbin
chown 0.0 /system/xbin/_su
chmod 6755 /system/xbin/_su
/data/local/tmp/busybox cp /data/local/tmp/su /system/xbin
chown 0.0 /system/xbin/su
chmod 6755 /system/xbin/su
/data/local/tmp/busybox cp /data/local/tmp/Superuser.apk /system/app
/data/local/tmp/busybox mount -o ro,remount /system
sync
exit
Check the /system _su is working or not
Code:
Code:
_su
id
Should be uid 0(root)
And move the original /data/app & /data/system back (the original steps will keep the VpnFaker.apk, but i skip it)
Code:
Code:
cd /data
mv app app2
mv app- app
mv system system2
mv system- system
exit
exit
Reboot your tab
Code:
adb reboot
Now, your Sony Xperia Tablet S ICS 4.0.3 should be rooted.
Credits Yupandra2012 for link to Original Root Method.
& WonderEkin for his Translation from Japanese to English.
I have the Sony Tablet S and this is as far as I can get:
c:\SonyTablet>adb shell
[email protected]:/ $ cd /data
cd /data
[email protected]:/data $ /data/local/tmp/busybox cp -r system system2
/data/local/tmp/busybox cp -r system system2
cp: can't open 'system/entropy.dat': Permission denied
cp: can't open 'system/batterystats.bin': Permission denied
cp: can't open 'system/users/userlist.xml': Permission denied
cp: can't open 'system/users/0.xml': Permission denied
cp: can't open 'system/accounts.db': Permission denied
cp: can't open 'system/accounts.db-journal': Permission denied
cp: can't open 'system/called_pre_boots.dat': Permission denied
cp: can't open 'system/wallpaper_info.xml': Permission denied
cp: can't open 'system/appwidgets.xml': Permission denied
1|[email protected]:/data $
Any ideas?
This Thread is for Xperia Tablet S, but anyways you ignore this error and complete the rest of the steps, I had the same error, ignored it and it worked for me.
Another road block:
c:\STS>adb shell
[email protected]:/ $ cd /data
cd /data
[email protected]:/data $ /data/local/tmp/busybox cp -r system system2
/data/local/tmp/busybox cp -r system system2
cp: can't open 'system/entropy.dat': Permission denied
cp: can't open 'system/batterystats.bin': Permission denied
cp: can't open 'system/users/userlist.xml': Permission denied
cp: can't open 'system/users/0.xml': Permission denied
cp: can't open 'system/accounts.db': Permission denied
cp: can't open 'system/accounts.db-journal': Permission denied
cp: can't open 'system/called_pre_boots.dat': Permission denied
cp: can't open 'system/wallpaper_info.xml': Permission denied
cp: can't open 'system/appwidgets.xml': Permission denied
1|[email protected]:/data $ /data/local/tmp/busybox find system2 -type f -exec chmod
666 {} \;
d system2 -type f -exec chmod 666 {} \; <
[email protected]:/data $ /data/local/tmp/busybox find system2 -type d -exec chmod 7
77 {} \;
system2 -type d -exec chmod 777 {} \; <
[email protected]:/data $ mv system system-
mv system system-
[email protected]:/data $ mv system2 system
mv system2 system
[email protected]:/data $ mv app app-
mv app app-
[email protected]:/data $ mkdir app
mkdir app
[email protected]:/data $ mv /data/local/tmp/VpnFaker.apk /data/app
mv /data/local/tmp/VpnFaker.apk /data/app
[email protected]:/data $ TZ=0 ls -l /data/app
TZ=0 ls -l /data/app
-rw-rw-rw- shell shell 200436 2012-08-27 00:00 VpnFaker.apk
[email protected]:/data $ /data/local/tmp/busybox sed -f /data/local/tmp/packages.xm
l.sed system-/packages.xml > system/packages.xml
tem-/packages.xml > system/packages.xml <
/system/bin/sh: cannot create system/packages.xml: Permission denied
1|[email protected]:/data $ /data/local/tmp/busybox grep vpndialogs system/packages.
xml
p vpndialogs system/packages.xml <
<package name="com.android.vpndialogs" codePath="/system/app/VpnDialogs.apk" nat
iveLibraryPath="/data/data/com.android.vpndialogs/lib" flags="1" ft="138eb7f41b0
" it="138eb7f41b0" ut="138eb7f41b0" version="15" sharedUserId="1000">
[email protected]:/data $ exit
exit
c:\STS>adb reboot
c:\STS>adb shell am start -n com.android.vpndialogs/.Term
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
Starting: Intent { cmp=com.android.vpndialogs/.Term }
Error type 3
Error: Activity class {com.android.vpndialogs/com.android.vpndialogs.Term} does
not exist.
c:\STS>
There were a few things that didn't match up along the way as well...
I am lost...
same here:
adb shell am start -n com.android.vpndialogs/.Term
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
Starting: Intent { cmp=com.android.vpndialogs/.Term }
Error type 3
Error: Activity class {com.android.vpndialogs/com.android.vpndialogs.Term} does
not exist.
Do you type this in?
Code:
while : ; do ln -s /data a/file99; done
Now, can you please upload a system dump of Xperia Tablet S?
Thanks!
Guys the error you are facing means missing terminal emulator is not installed on your device. make sure you have terminal emulator downloaded and installed from Google play. Also note you will face errors with the onload scripts using the emulator just ignore it and resume normally.
could you upload the terminal emulator?
zorbakun said:
Guys the error you are facing means missing terminal emulator is not installed on your device. make sure you have terminal emulator downloaded and installed from Google play. Also note you will face errors with the onload scripts using the emulator just ignore it and resume normally.
Click to expand...
Click to collapse
I am a user in China,and my tablet S cant's download any app from googleplay.Can you upload the terminal emulator?
Thank you very much.
txiangyang said:
I am a user in China,and my tablet S cant's download any app from googleplay.Can you upload the terminal emulator?
Thank you very much.
Click to expand...
Click to collapse
The Vpnfaker.apk has already injected with terminal emulator. Moreover, all installed apps will temporary missing during the process.
as WonderEkin pointed out, people with problem (Error: Activity class {com.android.vpndialogs/com.android.vpndialogs.Term} does
not exist.) don't have the US version of the device hence They will need to re-sign the VpnFaker.apk as described here and start all over again from the beginning.
Guide has been updated to reflect the same.
Credits to WonderEkin
This method works like a charm. Yay for rooted Tablet S!
Thank you so much!
I was getting this:
adb shell am start -n com.android.vpndialogs/.Term
Starting: Intent { cmp=com.android.vpndialogs/.Term }
Error type 3
Error: Activity class {com.android.vpndialogs/com.android.vpndialogs.Term} does not exist.
I have a Tablet S, US Tablet, US Firmware, what am I suppose to do with the VpnFaker.apk?
"ATTENTION: For those who are not using the US firmware, the attached VpnFaker.apk may not be suitable for your tablet.
Please follow these steps(click me) to resign the VpnFaker.apk. Thanks to WonderEkin"
Not clear to me...
Is this only for new xperia tab s or does it work for the old tab s?
WOW so fast ..
Even though Sony Xperia Tablet S ain't Global out there yet ..
Great Job .
typo86 said:
I was getting this:
adb shell am start -n com.android.vpndialogs/.Term
Starting: Intent { cmp=com.android.vpndialogs/.Term }
Error type 3
Error: Activity class {com.android.vpndialogs/com.android.vpndialogs.Term} does not exist.
I have a Tablet S, US Tablet, US Firmware, what am I suppose to do with the VpnFaker.apk?
"ATTENTION: For those who are not using the US firmware, the attached VpnFaker.apk may not be suitable for your tablet.
Please follow these steps(click me) to resign the VpnFaker.apk. Thanks to WonderEkin"
Not clear to me...
Click to expand...
Click to collapse
If you don't have the US version of the tablet, then you may need to re-sign the VpnFaker.apk, but since you own the US version, then no need to resign it. just make sure you follow the procedure carefully one step at a time, and if possible have terminal emulator installed on your tab as well.
Roscobigfoot said:
Is this only for new xperia tab s or does it work for the old tab s?
Click to expand...
Click to collapse
Check this thread for old Sony Tablet S.
SWFlyerUK said:
Do you type this in?
Code:
while : ; do ln -s /data a/file99; done
Click to expand...
Click to collapse
Yes you do.
Still no luck...
Tried it both ways, followed instructions and I still end up here:
adb shell am start -n com.android.vpndialogs/.Term
Starting: Intent { cmp=com.android.vpndialogs/.Term }
Error type 3
Error: Activity class {com.android.vpndialogs/com.android.vpndialogs.Term} does not exist.
US old Tablet S, US Firmware...Is there anyone with a US tablet that has been able to root this way?
Now you can use my new All in one Xperia Tablet Root.zip for easier process, just extract it to an easy path like C:/Xperia root/ then open CMD pointing to the same path and Follow the guide in the first page.
I want to make app symlinks to sd-ext on booting.
I made a short init.d script, And It correctly worked on JB based rom.
But after I downgraded to GB, It doesn't work anymore.
I founded that pure bone shell doesn't support arrays.
The script uses string array to declare apk list I want to symlink.
So is there a way to use string array or make similar effect?
Here is my script.
Code:
#!/system/bin/sh
if [ -z "$SD_EXT_DIRECTORY" ]; then SD_EXT_DIRECTORY=/sd-ext; fi
SYSBLOCK=`mount | grep system | cut -f 1 -d ' '`
sysapp2sd=("BackupRestoreConfirmation.apk" "BasicDreams.apk" "Bluetooth.apk" "CertInstaller.apk" "Calculator.apk" "CMFileManager.apk" "CMScreenshot.apk" "DSPManager.apk" "DrmProvider.apk" "Email.apk" "Email2.apk" "Exchange.apk" "Exchange2.apk" "Gmail.apk" "GoogleBackupTransport.apk" "InputDevices.apk" "Music.apk" "OneTimeInitializer.apk" "PhotoTable.apk" "PicoTts.apk" "SamsungTTS.apk" "SharedStorageBackup.apk" "SoundRecorder.apk" "Talk.apk" "ThemeChooser.apk" "ThemeManager.apk" "Torch.apk" "VpnDialogs.apk" "WAPPushManager.apk")
app2sd_exception=("com.UCMobile" "com.adobe.flashplayer" "com.android.lmt" "com.fiberthemax.OpQ2keyboard" "com.fiberthemax.OpQ2keyboard.dict.ko" "com.google.android.gms" "com.google.android.googlequicksearchbox" "com.jungsup.thecall" "com.mobint.hololauncher" "com.mobint.hololauncherplus" "com.mobitobi.android.gentlealarm" "com.myhome.mytheme" "com.rs.autorun" "com.teslacoilsw.launcher" "com.vladlee.callconfirm.free" "eu.chainfire.supersu" "kz.mek.DialerOne" "me.dennis.weather.naver" "net.dinglisch.android.taskerm" "net.everythingandroid.smspopup" )
# make sure $SD_EXT_DIRECTORY is actually mounted
if ! awk -vDIR="$SD_EXT_DIRECTORY" '$2 == DIR { exit 1; }' /proc/mounts ; then
mount -rw -o remount SYSBLOCK /system
mkdir -p /sd-ext/symlink/system/app
# /system/app/ -> /sd-ext/symlink/system/app/
FILES=`find /system/app -maxdepth 1 -type f`
for file in $FILES; do
filename=`basename $file`
for pattern in ${sysapp2sd[@]}; do
if [[ $filename == $pattern ]]; then
cp /system/app/$filename /sd-ext/symlink/system/app/
rm -f /system/app/$filename
ln -s /sd-ext/symlink/system/app/$filename /system/app/$filename
fi
done
done
# /data/app/ -> /sd-ext/symlink/data/app/
FILES=`find /data/app -maxdepth 1 -type f`
for file in $FILES; do
filename=`basename $file`
match=false
for pattern in ${app2sd_exception[@]}; do
if [[ $filename == $pattern* ]]; then
match=true
fi
done
if ! $match; then
cp /data/app/$filename /sd-ext/symlink/data/app/
rm -f /data/app/$filename
ln -s /sd-ext/symlink/data/app/$filename /data/app/$filename
fi
done
mount -r -o remount SYSBLOCK /system
fi
You can use echo or cat command to wrap list and grab it with awk.
and add another for loop over for loop for getting the counted numbers to be used on awk...
Hi all,
I have a ZP980 rooted running android 4.2.1 that has 1.5GB for app storage and another partition of 26GB in the internal memory mounted as /sdcard used for data.
I wanted to use the big partition to store apps too and since none of the app I tried worked to move some apps to the fake SD I tried to do a script on my own.
PROBLEM:
The script works good but the problem is that if I reboot the phone all files and symlinks are still there but the app is "not installed" so I can't lunch it, I think android makes a scan on boot and maybe /sdcard is not available at that time.
TEMPORARY SOLUTION:
The only way to make it work again is to move the apk back to /data/app and reboot, or remove the symlink and use:
# pm install -r PACKAGE
WHAT I TRIED:
#pm enable PACKAGE
but it looks like it's not disabled that way
WHAT I'D LIKE TO HAVE:
I'd like to find a way to reenable the PACKAGE without having to reinstall it, any clue where android memorize that the app is "installed" or a command to do only that tiny bit and not the whole install process?
SCRIPT (for who interested)
Code:
#!/system/bin/sh
sdcard="/storage/sdcard0/Apps"
internal="/data"
data="/data/data"
package="$2"
usage()
{
echo "Usage: $0 [OPTION] [PACKAGE]"
echo
echo "This script copy app and dalvik cache from internal memory to sd and back creating a symlink."
echo
echo "OPTIONS:"
echo " -a Move app and dalvik cache to sd"
echo " -b Move app and dalvik cache back to internal memory"
echo " -r Restore apps after reboot"
echo
echo "PACKAGE"
echo " without .apk"
echo " ES. to move candycrush to sd:"
echo " mv2sd -a com.king.candycrushsaga"
}
function setperm
{
local file=$1
case $type in
"app")
group="system"
;;
"dalvik-cache")
local group=$(ls -ld $data/$package | awk '{print $4}')
;;
esac
chown system:$group $file
chmod 644 $file
}
function mvfile
{
local fileFrom=$1
local fileTo=$2
if [ "$back" -eq 1 ]; then
rm -f $fileTo
local destination="data"
else
local destination="sd"
fi
cp -a $fileFrom $fileTo
if [ $? -ne 0 ]; then
exit $?
else
echo "$package $type moved to $destination"
rm -f $fileFrom
if [ $back -eq 0 ]; then
ln -s $fileTo $fileFrom
else
setperm $fileTo
fi
fi
}
function mvfiles
{
type=$1
case $type in
"app")
local uri="$type/$filename"
;;
"dalvik-cache")
local uri="$type/[email protected]@[email protected]"
;;
esac
intFile="$internal/$uri"
sdFile="$sdcard/$uri"
if [ "$back" -eq 0 ] && [ -f "$intFile" ]; then
mvfile $intFile $sdFile
elif [ "$back" -eq 1 ] && [ -L "$intFile" ] && [ -f "$sdFile" ]; then
mvfile $sdFile $intFile
else
echo "$type file or symlink not found"
fi
}
#initialize
back=2
restore=0
while getopts "abrh" option
do
case $option in
a)
back=0;
;;
b)
back=1;
;;
r)
restore=1;
;;
h)
usage
exit
;;
esac
done
if [ "$back" -eq "2" ] && [ "$restore" -eq "0" ]; then
usage
exit 1
fi
#restore
if [ "$restore" -eq "1" ]; then
for file in $sdcard/app/*.apk
do
filename=$(basename "$file")
intFile="$internal/app/$filename"
sdFile="$sdcard/app/$filename"
intDalvik="$internal/dalvik-cache/[email protected]@[email protected]"
sdDalvik="$sdcard/dalvik-cache/[email protected]@[email protected]"
package="${filename%-*}"
if [ -L "$intFile" ] && [ -f "$sdFile" ] && [ -L "$intDalvik" ] && [ -f "$sdDalvik" ]; then
rm -f $intFile
rm -f $intDalvik
rm -f $sdDalvik
pm install -r $sdFile
rm -f $sdFile
mv2sd -a $package
fi
done
else
file=$(ls $internal/app/$package-*)
filename=$(basename "$file")
#move app
mvfiles "app"
mvfiles "dalvik-cache"
fi
shift $(($OPTIND -1))
I found something, thanks to this nice article:
http://www.kpbird.com/2012/10/in-depth-android-package-manager-and.html
So I tried to reboot and I see that in /data/system/packages.xml all apps I symlinked have flags="0"
Before:
<package name="com.king.candycrushsaga" codePath="/data/app/com.king.candycrushsaga-1.apk" nativeLibraryPath="/data/app-lib/com.king.candycrushsaga-1" flags="572996" ft="1435aa87ca0" it="140f50e81fe" ut="14303810da6" version="102212" userId="10084">
Click to expand...
Click to collapse
After:
<package name="com.king.candycrushsaga" codePath="/data/app/com.king.candycrushsaga-1.apk" nativeLibraryPath="/data/app-lib/com.king.candycrushsaga-1" flags="0" ft="1435aa87ca0" it="140f50e81fe" ut="14303810da6" version="102212" userId="10084">
Click to expand...
Click to collapse
Changing that value on runtime doesn't work.
I'm still looking how to change it maybe PackageManagerService.grantPermissionsLP()
https://android.googlesource.com/pl.../android/server/pm/PackageManagerService.java
At the end I solved the problem.
I'm not sure why but if an app is symlinked to anything on sdcard is disabled at start, but if it's symlinked on another folder on /data or /system it keeps working after reboot.
So first I tried to symlink /data/sdcard => /sdcard but it's not working because it can still see the final destination is the sdcard, so I mounted the sdcard on /data/sdcard and symlink /data/app/some.app-1.apk => /data/sdcard/app/some.app-1.apk and it's working
sdcard need to be mounted on start inside an init.d script so it's available when the scan happens.
Moving forward I decided to create an ext2 filesystem in a file, keep it in my sdcard partition and mount it on /data/sdcard.
This way, with a modified and improved version of my script I can move apks, libs, dalvik-cache and all the data folder for each app I want keeping the right file permissions