Related
Hey guys, in an effort to theme my phone, I decided to remove the ringtones/notifications and put them on the sd card. First I just copied them over to the main FAT32 SD partition, however I didn't want to lose my notifications when I had mounted my SD card. So I copied them over to my /system/sd/ and then symlinked them from the /system/media/audio folder. However now I'm getting a force close when I try to view them in the settings. My guess is that when I copied them to the FAT32 partition that they lost their ownership/permissions. Does anyone know what the proper permissions are?
I tried "chmod 0777 ringtones" to try and change the permissions for the entire folder and didn't get any errors, but I still get a force close when trying to view my ringtone settings.
I also copied the alarms folder straight to the sd card ext2 partition and its still working perfectly. So I did a ls -l on that folder and saw that the alarms owner and group were both 0 while the ringtones and notifications folders owner/group ids were 1000. So I ran this:
chmod -R 0 notifications
chgrp -R 0 notifications
chmod -R 0 ringtones
chgrp -R 0 ringtones
So now all of the folders have the 0 group and owner, yet I still get the error. And after rebooting my phone, the alarms are now giving a force close as well. Why would this happen? Shouldn't the system think the tones are in the same place that they were and use them?
could you post the output of an :
"busybox ls -la" in the folder you copied the files ?
try a :
chmod 755 -R media and a
chown root:root -R media
it should solve your problem
dixxa said:
could you post the output of an :
"busybox ls -la" in the folder you copied the files ?
try a :
chmod 755 -R media and a
chown root:root -R media
it should solve your problem
Click to expand...
Click to collapse
# busybox ls -la
busybox ls -la
drwxrwxrwx 5 0 0 1024 Mar 3 03:48 .
drwxr-xr-x 7 0 0 1024 Mar 3 03:27 ..
drwxr-xr-x 2 0 0 1024 Aug 1 2008 alarms
drwxrwxrwx 2 0 0 1024 Aug 1 2008 notifications
drwxrwxrwx 2 0 0 1024 Aug 1 2008 ringtones
#
I've already chmodded and chowned the files. The only difference is I gave them full permissions (777).
No one else has any ideas huh?
It doesn't work for me either. I tried symlinking whole directories as well as individual files. They don't show up even after a reboot. The files are 0:0 644 and the dirs are 0:0 755. I also tried 777, no difference.
I got a new x10 from Best Buy Mobile as a loaner phone, running 1.6 on AT&T fresh out of the box. followed the ATT thread to go to 2.1 using flash tool.
I have tried nearly everything to root it, flash tool tells me phone should be rooted after reboot, it isnt, X10root.apk fails, superoneclick fails (maybe adb related & not sure why.. had adb path set up properly and shows device id, but says protocol error?), z4root doesnt even get temp root.
Im on generic 2.1 x10a , this wall all done on my win 7 64 bit laptop. I will try via adb on my computer at work running win xp later today, but the root .apks should have rooted, I dont understand why.
I will post a log for you guys to check out, Im not a n00b, but not an expert either.
I may have the phone for a week or a month, while my other LCD is repaired.
Thanks everyone!
Go for root !
Version: Universal Androot - v1.6.2 beta 5
Detected OS version:7
ls -l /system/etc
-rw-r--r-- root root 461 2011-01-07 06:11 pvextensions.cfg
-rw-r--r-- root root 418 2011-01-07 06:11 iddd.conf
-rw-r--r-- root root 684 2011-01-07 06:11 wiperconfig.xml
-rw-r--r-- root root 1853914 2010-12-15 20:46 dop.iso
drwxr-xr-x root root 2011-01-26 05:16 wifi
-rw-r--r-- root root 1358 2011-01-07 06:11 hw_config.sh
drwxr-xr-x root root 2011-01-26 05:16 firmware
-rw-r--r-- root root 2046 2011-01-07 06:11 bookmarks.xml
drwxr-xr-x root root 2011-01-26 05:16 ppp
-rw-r--r-- root root 8319 2011-01-07 06:11 event-log-tags
-r-xr-x--- root shell 1176 2011-01-07 06:11 init.goldfish.sh
-rw-r--r-- root root 85623 2011-01-07 06:11 NOTICE.html.gz
-rw-r--r-- root root 438 2010-10-08 04:40 apns-conf.xml
-rw-r--r-- root root 8858 2010-11-30 20:14 default-capability.xml
drwxr-xr-x root root 2011-01-26 05:16 semc
-rw-r--r-- root root 197 2011-01-07 06:11 pvasfstreaming.cfg
drwxr-xr-x root root 2011-01-26 05:16 dhcpcd
-rw-r--r-- root root 3396 2011-01-07 06:11 init.es209ra.bt.sh
-rw-r--r-- root root 2 2011-01-07 06:11 DualMicControl.txt
-rw-r--r-- root root 177 2011-01-07 06:11 pvasflocal.cfg
drwxr-xr-x root root 2011-01-26 05:16 security
-r--r----- bluetooth bluetooth 935 2011-01-07 06:11 dbus.conf
drwxr-xr-x root root 2011-01-26 05:16 customization
drwxr-xr-x root root 2011-01-26 05:16 permissions
-rw-r--r-- root root 935 2011-01-07 06:11 gps.conf
-rw-r--r-- root root 458 2011-01-07 06:11 pvplayer.cfg
drwxr-xr-x root root 2011-01-26 05:16 bluez
-rw-r--r-- root root 85 2011-01-07 06:11 01_qcomm_omx.cfg
-rw-r--r-- root root 1462 2011-01-07 06:11 vold.conf
-rw-r--r-- root root 285 2011-01-07 06:11 sensors.conf
-rw-r--r-- root root 25 2011-01-07 06:11 hosts
-rw-r--r-- root root 1804 2011-01-07 06:11 loc_parameter.ini
ls -l /system/bin/reboot
lrwxr-xr-x root shell 2011-01-26 05:17 reboot -> toolbox
cat /proc/sys/kernel/osrelease
2.6.29
getprop ro.product.model
X10a
getprop ro.product.brand
SEMC
getprop ro.product.name
X10a_1234-4820
getprop ro.product.manufacturer
Sony Ericsson
getprop ro.build.product
X10a
ls -l /sqlite_stmt_journals
-rw------- app_96 app_96 1 2011-05-02 08:41 persist.service.adb.enable
-rw------- app_96 app_96 158741 2011-05-02 08:41 Superuser.apk
-rw------- app_96 app_96 26256 2011-05-02 08:41 su
-rw------- app_96 app_96 1001388 2011-05-02 08:41 busybox
-rwxr-xr-x app_96 app_96 19114 2011-05-02 08:40 exploid
lrwxrwxrwx app_96 app_96 2011-05-01 23:35 data -> /proc/sys/kernel/hotplug
-rw-r--r-- app_96 app_96 29 2011-05-02 08:41 hotplug
-rw-rw-rw- app_96 app_96 0 2011-05-02 08:41 loading
-rw------- app_96 app_96 164788 2011-05-01 23:30 com.noshufou.android.su.apk
ls -l /data/local/tmp
opendir failed, Permission denied
ls -l /app-cache
/app-cache: No such file or directory
run mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mtdblock2 /system yaffs2 ro 0 0
/dev/block/mtdblock3 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock1 /cache yaffs2 rw,nosuid,nodev 0 0
DxDrmServerIpc /data/DxDrm/fuse fuse.DxDrmServerIpc rw,nosuid,nodev,user_id=0,group_id=0,allow_other 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
run df
/dev: 143500K total, 12K used, 143488K available (block size 4096)
/sqlite_stmt_journals: 4096K total, 1388K used, 2708K available (block size 4096)
/system: 361088K total, 248980K used, 112108K available (block size 4096)
/data: 476160K total, 96052K used, 380108K available (block size 4096)
/cache: 113920K total, 3316K used, 110604K available (block size 4096)
/sdcard: 1913216K total, 368864K used, 1544352K available (block size 16384)
/data/DxDrm/fuse: Permission denied
Preparing Exploit ... :true
Preparing busybox binary ... :true
User selected: Eclair
Preparing Su binary ... :true
Preparing Superuser apk ... :true, resid:2131034118
Preparing root toolkit script ... :true
Trying to get mount point:/data
/dev/block/mtdblock3 /data yaffs2 rw,nosuid,nodev 0 0
Trying to get mount point:/system
/dev/block/mtdblock2 /system yaffs2 ro 0 0
mount -o remount,rw -t yaffs2 /dev/block/mtdblock2 /system
mkdir /system/xbin
cat su > /system/xbin/su
chmod 04755 /system/xbin/su
ln -s /system/xbin/su /system/bin/su
mount -o remount,ro -t yaffs2 /dev/block/mtdblock2 /system
mount -o remount,rw,nosuid,nodev -t yaffs2 /dev/block/mtdblock3 /data
mount -o remount,rw -t yaffs2 /dev/block/mtdblock2 /system
rm /system/bin/su
rm /system/xbin/su
Preparing to execute exploit, do chmod
Executing exploit..
cmd: /data/data/com.corner23.android.universalandroot/files/getroot /dev/block/mtdblock3 yaffs2
[*] Android local root exploid (C) The Android Exploid Crew
[*] Modified by shakalaca for various devices
[+] Using basedir=/sqlite_stmt_journals, path=/data/data/com.corner23.android.universalandroot/files/getroot
[+] opening NETLINK_KOBJECT_UEVENT socket
[-] creat: Permission denied
Wifi enabled ...
/sqlite_stmt_journals/rootshell missing ..
/app-cache/rootshell missing ..
/data/local/tmp/rootshell missing ..
Install/Uninstall rootkit: false
ls -l /sqlite_stmt_journals
-rw------- app_96 app_96 1 2011-05-02 08:41 persist.service.adb.enable
-rw------- app_96 app_96 158741 2011-05-02 08:41 Superuser.apk
-rw------- app_96 app_96 26256 2011-05-02 08:41 su
-rw------- app_96 app_96 1001388 2011-05-02 08:41 busybox
-rwxr-xr-x app_96 app_96 19114 2011-05-02 08:40 exploid
lrwxrwxrwx app_96 app_96 2011-05-01 23:35 data -> /proc/sys/kernel/hotplug
-rw-r--r-- app_96 app_96 29 2011-05-02 08:41 hotplug
-rw-rw-rw- app_96 app_96 0 2011-05-02 08:41 loading
-rw------- app_96 app_96 164788 2011-05-01 23:30 com.noshufou.android.su.apk
ls -l /data/local/tmp
opendir failed, Permission denied
ls -l /app-cache
/app-cache: No such file or directory
run mount
rootfs / rootfs ro 0 0
tmpfs /dev tmpfs rw,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
tmpfs /sqlite_stmt_journals tmpfs rw,size=4096k 0 0
/dev/block/mtdblock2 /system yaffs2 ro 0 0
/dev/block/mtdblock3 /data yaffs2 rw,nosuid,nodev 0 0
/dev/block/mtdblock1 /cache yaffs2 rw,nosuid,nodev 0 0
DxDrmServerIpc /data/DxDrm/fuse fuse.DxDrmServerIpc rw,nosuid,nodev,user_id=0,group_id=0,allow_other 0 0
/dev/block//vold/179:1 /sdcard vfat rw,dirsync,nosuid,nodev,noexec,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
run df
/dev: 143500K total, 12K used, 143488K available (block size 4096)
/sqlite_stmt_journals: 4096K total, 1388K used, 2708K available (block size 4096)
/system: 361088K total, 248980K used, 112108K available (block size 4096)
/data: 476160K total, 96044K used, 380116K available (block size 4096)
/cache: 113920K total, 3316K used, 110604K available (block size 4096)
/sdcard: 1913216K total, 368864K used, 1544352K available (block size 16384)
/data/DxDrm/fuse: Permission denied
I just want to flash a gingerbread ROM of course, but I will need xrecovery right? which isnt installing without root.
Unless its possible for me to flash a new rooted rom without xrecovery, I uppose that will work although it might be dangerous.
I'll post back as soon as I can.
use the latest version of superoneclick and make sure you have USB debugging enabled
if you have rooted with flash tool you do not need to do anything else it will be rooted you dont need x10root or other one click apk apps as flash tool rooted your phone
test it with a tool that requires root such as adfree or terminal emulator
flash tool says success with root, but its not rooted, as i cant install busybox, says not rooted and entering su in terminal says permission denied
please help!
chrisrotolo said:
flash tool says success with root, but its not rooted, as i cant install busybox, says not rooted and entering su in terminal says permission denied
please help!
Click to expand...
Click to collapse
try using SuperOneClick here
failing that use SuperOneClickv1.5.5 here
i already tried the newest SOC, no dice.
ill try the older one too.
I think it may have to do with the drivers, it looks like regular drivers dont work, Im installing the SE developer ones.
but that doesnt really explain why z4root didnt work, and universal androot fails too.
thanks guys. this is killing me.
chrisrotolo said:
i already tried the newest SOC, no dice.
ill try the older one too.
I think it may have to do with the drivers, it looks like regular drivers dont work, Im installing the SE developer ones.
but that doesnt really explain why z4root didnt work, and universal androot fails too.
thanks guys. this is killing me.
Click to expand...
Click to collapse
what firmware are you using on your phone(under about phone) !?
and try the 1.5.5 version make sure when you run it you have USB debugging enabled! (under settings /applications/development ) you may also want to make sure you have UNKNOWN SOURCES checked!
z4 and universal will no longer work after the first version of 2.1! so dont bother with those!
you could also try the root tool that comes with the lastest flashtool
make sure when you root you choose 'connect phone' and not mount for usb storage mode!
2.1-update 1
build 2.1.a.0.435
2.6.29 [email protected] #1
x10a
this is beginning to p1ss me off, I think it must be a driver/adb issue, i did the fix for 64 bit, and now Im on xp and still cant connect to daemon when i say adb devices in cmd. I have the latests drivers, maybe i need to install older ones, maybe these have security?
also what are the signfiles.bat ,etc on my sdcard, they look SE signing tools , like they verify signature, etc.
also tried downloading the new rooting method for 2.1, rootme.tar, but server is unavailable.
yahhhhh! this is nuts!
adb kill-server and start-server work, so I know my adb is ok, I have android sdk installed. path>adb devices **daemon still not runningerror: cannot connect to daemon, so it has to be the phone or the drivers Im guessing. arrghhh!
i have tried different usb ports, still nothing!
Best way to root, install Xrecovery and JIT enable your phone is via Flash Tool. I'm on AT&T too, and found it rather simple.
Follow the guide found here:
http://forum.xda-developers.com/showthread.php?t=1012380
Make sure you have installed java on your computer.
Also, do not mount your SD card. While your phone is on, connect your phone via usb and hit root once your phone is recognized.
I'm not sure if this is necessary for rooting but for flashing purposes you need to connect your phone via pc companion or SEUS. Check to see if you have the latest firmware and set your phone up to flash new firmware. The computer will install flash drivers onto your computer. You don't have to install the latest AT&T firmware if there is one. You just want to have those flash drivers on your PC.
Hope this helps!
ok, so i was trying to follow the AT&T giude from 1.6 -2.1, which says update then root, should I go back to 1.6 and try universalandroot or z4root, root first, then update? or will I lose root when I update? Thanks guys.
installed PC companion update my driver, but still no adb devices cannot connect to daemon, and SOC 1.5.5 failed
I installed SEUS on my other PC too, didnt seem to change much, drivers were the same.
this is crazy, what should i do guys? use pc companion to repair? go back to 1.6 and try rooting then update??
Just use flash tool and press root if you just want to root. You don't have to sideload any apps which is blocked by AT&T anyways.
Update to 2.1 in order to install xrecovery. Once done updating, root it afterwards by pressing the root button on flash tool. No need to go back to 1.6 just to root. Just follow the guide and then you can install any rom you want. The Agent got your back.
Ok, so I re-read your thread. Let me summarize what I know.
1. Flash tool says you have root after your phone rebooted
2. You can not install busybox via flash tool
It might be that your phone is already rooted. If you tried to install busybox or xrecovery through flash tool and have seen that the advanced options are greyed out, it is because you need to press "ask root permissions" and then accept on your phone.
Also check to see if superuser is working correctly, Install Titanium backup to check. Install it from the marketplace open it up. A box should pop up saying "Allow Root Access"?
If so, then you have done it correctly.
I'm not keen with all the coding so I don't know how to read those logs you have noted.
Try pressing root again on flash tool and let it reboot, let me know what you see afterwards.
TYhanks for the help , I appreciate it guys.
im at my home laptop with win7 64 bit and adb devices shows serial number connected. adb push gives me cannot connect to daemon error, and super one click fails. I have busybox and superuser .apks installed from astro but both not "fully" installed without root. I know how to check for root, and I do not have it even when flashtool tells me I should. Really strange. what is going on??
ok, didnt want to do it, but im going to try the old way, with the 3 .bat files, is this a good idea? wish me luck! (if i can find clearer instructions)
cant go to sony ericsson unlock bootlloader online with IMEI, becuase its a loaner and says invalid IMEI... *double facepalm*!
I had those same issues with my 64bit windows 7 too. I think it has to do with Java and how adb tools works better with 32 bit. Troubleshooting your computer and phone might be the way to go.
Make sure on your phone you have usb debugging clicked via Settings>applications>Development. Also, just for the hell of it, click unknown sources.
Make sure on your computer, UAC/User Access Controls is turned off. If you recently installed java, reboot your computer.
After reboot, restart cmd and get into your adb folder. Type adb devices. Should show if you have your phone connected/computer recognizes your phone.
chrisrotolo said:
TYhanks for the help , I appreciate it guys.
im at my home laptop with win7 64 bit and adb devices shows serial number connected. adb push gives me cannot connect to daemon error, and super one click fails. I have busybox and superuser .apks installed from astro but both not "fully" installed without root. I know how to check for root, and I do not have it even when flashtool tells me I should. Really strange. what is going on??
ok, didnt want to do it, but im going to try the old way, with the 3 .bat files, is this a good idea? wish me luck!
Click to expand...
Click to collapse
Start over with new download of Flash Tool and 2.1.A.0.435 ftf firmware.
this is terrible!
will try to reflash the 2.1 update again.
relashed fine, without rebooting, ran Root option from flashtool, says should be rooted after reboot, havent rebooted yet, but definetly no root.
F%ck! after flash tool finishes and reboot still zilch! I dont think flashtool is installing superuser, here's a log, man this is awful!
02/022/2011 20:22:40 - INFO - <- This level is successfully initialized
02/022/2011 20:22:54 - ERROR - Cannot identify your device. Found while expecting X10, E10, U20 or E15 (read from ro.product.model from build.prop)
02/022/2011 20:22:54 - INFO - Selecting from user input
02/023/2011 20:23:17 - INFO - Connected device : X10
02/023/2011 20:23:23 - INFO - Installed version of busybox : * daemon not running. starting it now on port 5037 *
02/023/2011 20:23:29 - INFO - Pushing .\custom\root\busyboxX10 to /data/local/tmp/busybox
02/023/2011 20:23:40 - INFO - Running busyhelper
02/023/2011 20:23:45 - INFO - Pushing .\custom\root\givmeroot.tar to /data/local/tmp/
02/023/2011 20:23:51 - INFO - Running part1 of Root Exploit, please wait
02/023/2011 20:23:55 - INFO - Running rootit
02/024/2011 20:24:07 - INFO - Running part2 of Root Exploit
02/024/2011 20:24:08 - INFO - Running rootit2
02/024/2011 20:24:10 - INFO - Finished!.
02/024/2011 20:24:10 - INFO - Root should be available after reboot!
02/025/2011 20:25:06 - ERROR - Cannot identify your device. Found while expecting X10, E10, U20 or E15 (read from ro.product.model from build.prop)
02/025/2011 20:25:06 - INFO - Selecting from user input
02/025/2011 20:25:10 - INFO - Connected device : X10
02/025/2011 20:25:10 - INFO - Installed version of busybox : /system/bin/busybox: not found
strange.. now i cant seem to get adb devices, with the latest drivers, to show anything.. cant connect to daemon... give me a break.
24 hour bump! hopeless
Hate to say it, but it sounds like a isolated issue. Thousands of people used the flash tool and superoneclick successfully. Are you sure you selected the next tab, "root permissions" after root? You need to do that to install SuperUser and Busybox.
Also, antivirus should be disabled.
Hi,
i post here, because i dont have access to the dev part (10 posts limit maybe).
For the french guys, i have the working files for the hw keyboard.
I'll post them when i get up !
Edit : This is a simple zip file , dont use it with recovery mode !!!!!
Instructions :
unzip file, connect to the phone in adb shell , make /system rw , put the file in /system/usr/keychars (.bin) and /system/usr/keylayout (.kl) . Make the symbolic links to the scholes file. reboot !
I'll test with a more simple(generic) solution.
It's not possible to have an apk?
Nice pat972 I test it now !!
can you explain " Make the symbolic links to the scholes file" please ? (In french toooo )
Ok , let me know if you have a problem with the menu key ! i'll correct it !
For the symbolic links : when you are in the directory , you can do a "ls -l" , you'll see a file pointing to another one, originally pointing to something with "jordan".
you have to do "ln -s /system/usr/keylayout/file.kl sholes-keypad.kl".
No , i don't know how to do apk files !
Thanks for your answer but this don't work.. I have run the folowing command :
>adb remount
remount succeeded
>adb shell
# mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system
# cp /mnt/sdcard/a/umts_milestone2-keypad.kcm.bin /system/usr/keychars
# cp /mnt/sdcard/a/umts_milestone2-keypad.kl /system/usr/keylayout
# cd /system/usr/keychars/
# ln -s /system/usr/keylayout/umts_milestone2-keypad.kl sholes-keypad.kl
# mount -o ro,remount -t ext3 /dev/block/mmcblk1p21 /system
# exit
exit
>adb reboot
It's good? or I do a mistake ?
Ok it 's good , but you mix all the symbolic and directories !
so here it is :
# cd /system/usr/keychars/
# ln -s /system/usr/keychars/umts_milestone2-keypad.kcm.bin sholes-keypad.kcm.bin
# cd ../keylayout/
# ln -s /system/usr/keylayout/umts_milestone2-keypad.kl sholes-keypad.kl
pat972 said:
Ok it 's good , but you mix all the symbolic and directories !
so here it is :
# cd /system/usr/keychars/
# ln -s /system/usr/keylayout/umts_milestone2-keypad.kcm.bin sholes-keypad.kcm.bin
# cd ../keylayout/
# ln -s /system/usr/keylayout/umts_milestone2-keypad.kl sholes-keypad.kl
Click to expand...
Click to collapse
Sorry for this BIG mistake ... but this don't work too....... I think because I do this mistake ! So I come back tomorrow to do new test
Thanks for help!
Sorry for this BIG mistake ... but this don't work too....... I think because I do this mistake ! So I come back tomorrow to do new test
Thanks for help!
Oups it's me, bad bad , sorry i copy paste your line, but there is a mistake in it again !
For the bin file, it is , keychars directory :
# ln -s /system/usr/keychars/umts_milestone2-keypad.kcm.bin sholes-keypad.kcm.bin
then you do a "ls -l" to verify the symlink in each directory :
# ls -l
-rw-r--r-- root root 896 2011-08-24 06:26 umts_milestone2-keypad.kcm.bin
-rw-r--r-- root root 896 2011-07-12 22:00 qwerty2.kcm.bin
-rw-r--r-- root root 896 2011-07-12 22:00 qwerty.kcm.bin
lrwxrwxrwx root root 2011-08-24 05:13 sholes-keypad.kcm.bin -> /system/usr/keychars/umts_milestone2-keypad.kcm.bin
You see that the sholes file point the umts one in the keychars directory not the keylayout !
In fact, this is the problem but when I do this commande line, the result is :
"Link failed file exist"
What I must delete ?
You must delete:
/system/usr/keychars/umts_milestone2-keypad.kcm.bin
so do a
Code:
rm /system/usr/keychars/umts_milestone2-keypad.kcm.bin
Thanks for your answer, but always the same message ...
I have delete "sholes-keypad.kcm.bin" after and can finish all code line but don't work............. I test to restore ROM and restart this
Edit : Now it's work, so the commande line are (if you have put the 2 files on the "a" folder in the SDcard ) :
Code:
>adb shell
# mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system
# cp /mnt/sdcard/a/umts_milestone2-keypad.kcm.bin /system/usr/keychars
# cp /mnt/sdcard/a/umts_milestone2-keypad.kl /system/usr/keylayout
# cd /system/usr/keychars/
# rm sholes-keypad.kcm.bin
# ln -s /system/usr/keychars/umts_milestone2-keypad.kcm.bin sholes-keypad.kcm.bin
# cd /system/usr/keylayout/
# rm sholes-keypad.kl
# ln -s /system/usr/keylayout/umts_milestone2-keypad.kl sholes-keypad.kl
# mount -o ro,remount -t ext3 /dev/block/mmcblk1p21 /system
# exit
>adb reboot
Hi, did someone test this. If you select different country (like german) did the hardware keyboard also switch?
Hi, no i did not, but i would say no ! I have an idea , but i need to test it ! I'll change the bin file and let you know! While im here, it just test your new bluremail.apk and it doesnt seems to work with classic mail ! Said no connection.
Sent from my MotoA953 using XDA App
@walter79 : Yes I have test to change country, but nothing change !
@pat972 : all the "alt" are not good ! (numbers, etc...)
@alex could you do a "ls -l" in each directory and post it here !
@walter : I do some quick test, what appears to me is that my keyboard is always in azerty no matter what locale i put in build.prop or when i change the language setting in the menu.
I also replace my modified keychars by the froyo one, and the keyboard is again in azerty. They are minor differences , more particularly the froyo keychars mix azerty and qwerty layout !
what i think is that the language menu don't change the hw.keyboard layout
I can't see in "cd /system/usr/keychars/" the "Shole.....bin" ....
Code:
# cd /system/usr/keylayout
cd /system/usr/keylayout
# ls -l
ls -l
-rw-r--r-- root root 3295 2011-08-25 11:34 umts_milestone2-k
eypad.kl
-rw-r--r-- root root 4132 2011-08-25 11:16 qwerty.kl
-rw-r--r-- root root 245 2011-08-25 11:16 AVRCP.kl
-rw-r--r-- root root 75 2011-08-25 11:16 cpcap-key.kl
lrwxrwxrwx root root 2011-08-25 11:37 sholes-keypad.k
l -> /system/usr/keylayout/umts_milestone2-keypad.kl
# cd /system/usr/keychars/
cd /system/usr/keychars/
# ls -l
ls -l
----rwxr-x root root 896 2011-08-25 11:36 umts_milestone2-k
eypad.kcm.bin
-rw-r--r-- root root 896 2011-08-25 11:16 qwerty2.kcm.bin
-rw-r--r-- root root 896 2011-08-25 11:16 qwerty.kcm.bin
#
pat972 said:
Oups it's me, bad bad , sorry i copy paste your line, but there is a mistake in it again !
For the bin file, it is , keychars directory :
# ln -s /system/usr/keychars/umts_milestone2-keypad.kcm.bin sholes-keypad.kcm.bin
then you do a "ls -l" to verify the symlink in each directory :
# ls -l
-rw-r--r-- root root 896 2011-08-24 06:26 umts_milestone2-keypad.kcm.bin
-rw-r--r-- root root 896 2011-07-12 22:00 qwerty2.kcm.bin
-rw-r--r-- root root 896 2011-07-12 22:00 qwerty.kcm.bin
lrwxrwxrwx root root 2011-08-24 05:13 sholes-keypad.kcm.bin -> /system/usr/keychars/umts_milestone2-keypad.kcm.bin
You see that the sholes file point the umts one in the keychars directory not the keylayout !
Click to expand...
Click to collapse
So , your problem is you don't have the link in the keychars ! so do it , it must look like my previous post (quote) .
# ln -s /system/usr/keychars/umts_milestone2-keypad.kcm.bin sholes-keypad.kcm.bin
and do a ls -l to verify it !
All works now ! Sorry ...but I don't understand why the 1rst time this command line don't work....pearhap's can't do the 2 files in the same time (reboot between) ???
Thanks for your help !
[Thread edited and changed, because partially solved]
Device: asus Nexus 7
Android Version: 4.2.2
Build: JDQ39
rooted
I have installed SSHDroidPro (v1.9.6) - https://play.google.com/store/apps/details?id=berserker.android.apps.sshdroidpro and Terminal IDE (v2.02) - https://play.google.com/store/apps/details?id=com.spartacusrex.spartacuside
Code:
/storage/emulated/legacy # which rsync
/storage/emulated/legacy # which mkdir
/data/data/berserker.android.apps.sshdroidpro/home/bin/mkdir
Code:
-rwx------ 1 u0_a86 u0_a86 1012309 Dec 5 2011 /data/data/com.spartacusrex.spartacuside/files/system/bin/rsync
What do I have to do, that _this_ rsync is used by SSHDroidPro? I would like to use all shell.commands from Terminal IDE with SSHDroidPro.
It helped to copy rsync set the permissions to 755 and link it:
Code:
cp /data/data/com.spartacusrex.spartacuside/files/system/bin/rsync /data/data/berserker.android.apps.sshdroidpro/dropbear
ls -l /data/data/berserker.android.apps.sshdroidpro/dropbear/rsync
-rwxr-xr-x 1 root root 1012309 Mar 10 01:37 /data/data/berserker.android.apps.sshdroidpro/dropbear/rsync
ls -l /data/data/berserker.android.apps.sshdroidpro/home/bin/rsync
lrwxrwxrwx 1 root root 60 Mar 10 01:38 /data/data/berserker.android.apps.sshdroidpro/home/bin/rsync -> /data/data/berserker.android.apps.sshdroidpro/dropbear/rsync
And then:
Code:
/storage/emulated/legacy # which rsync
/data/data/berserker.android.apps.sshdroidpro/home/bin/rsync
The rest of the posting was deleted, because it was a bug in my script. But what can I do, so the ssh-server can use the commands ot the IDE-Terminal?
**UPDATE**
Here is my collection of scripts for rooting, blocking updates, and all kinds of stuff for ALL fire tv:
https://github.com/pwntrik/firetv/
Here's the video (2 parts) on howto root Fire TV 1st gen using soldering:
https://youtu.be/yhwYfudGiM8
https://youtu.be/Kn7zmXf08bk
**/UPDATE**
Greetings, AFTV hackers!
I have successfully soldered an emmc reader to the Fire TV 1st Gen, and I have complete r/w access. However, the tutorial for rooting appears to be a bit dated as the hacker (@maximus64) at the time was able to just copy the su binary to /system/xbin, modify the permissions, and run it.
Since FireOS 5.2.0.0, however, SELinux now prevents the binary from being executed:
(At this point, I have already copied su binary, chmod 6755 it, chown 0:0 it)
Code:
[email protected]:/ $ ls -la /system/xbin/su
ls -la /system/xbin/su
/system/xbin/su: Permission denied
1|[email protected]:/ $ su
su
/system/bin/sh: su: not found
127|[email protected]:/ $ ls -ld /system/xbin
ls -ld /system/xbin
drwxr-xr-x root shell 2017-01-05 01:35 xbin
[email protected]:/ $ ls -l /system/xbin/
ls -l /system/xbin/
-rwxr-xr-x root shell 63880 2016-05-27 17:00 dexdump
-rwxr-xr-x root shell 49816 2016-05-27 17:00 sqlite3
lstat '/system/xbin//su' failed: Permission denied
-rwxr-xr-x root shell 813248 2016-05-27 17:00 tcpdump
-rwxr-xr-x root shell 9384 2016-05-27 17:00 trapz
-rwxr-xr-x root shell 46456 2016-05-27 17:00 vitals_collection_agent
And just to make sure I did everything correctly, I hooked it up again then checked the binary:
Code:
[email protected]:/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b1/xbin# ls -la
total 1092
drwxr-xr-x. 2 root 2000 4096 Jan 5 04:35 .
drwxr-xr-x. 16 root root 4096 Jan 6 17:07 ..
-rwxr-xr-x. 1 root 2000 63880 May 27 2016 dexdump
-rwxr-xr-x. 1 root 2000 49816 May 27 2016 sqlite3
-rwsr-sr-x 1 root root 112576 Jan 5 04:31 su
-rwxr-xr-x. 1 root 2000 813248 May 27 2016 tcpdump
-rwxr-xr-x. 1 root 2000 9384 May 27 2016 trapz
-rwxr-xr-x. 1 root 2000 46456 May 27 2016 vitals_collection_agent
So at this point, I did some research and it seems that SELinux prevents this from being run. Does anyone have a workaround or could tell me how to give this binary permission? I have zero experience with SELinux, and even if anyone can point me to a similar thread for rooting when you have full r/w access, that'd be excellent..
Thanks!
cancelyourcable said:
Greetings, AFTV hackers!
I have successfully soldered an emmc reader to the Fire TV 1st Gen, and I have complete r/w access. However, the tutorial for rooting appears to be a bit dated as the hacker (@maximus64) at the time was able to just copy the su binary to /system/xbin, modify the permissions, and run it.
Since FireOS 5.2.0.0, however, SELinux now prevents the binary from being executed:
(At this point, I have already copied su binary, chmod 6755 it, chown 0:0 it)
Code:
[email protected]:/ $ ls -la /system/xbin/su
ls -la /system/xbin/su
/system/xbin/su: Permission denied
1|[email protected]:/ $ su
su
/system/bin/sh: su: not found
127|[email protected]:/ $ ls -ld /system/xbin
ls -ld /system/xbin
drwxr-xr-x root shell 2017-01-05 01:35 xbin
[email protected]:/ $ ls -l /system/xbin/
ls -l /system/xbin/
-rwxr-xr-x root shell 63880 2016-05-27 17:00 dexdump
-rwxr-xr-x root shell 49816 2016-05-27 17:00 sqlite3
lstat '/system/xbin//su' failed: Permission denied
-rwxr-xr-x root shell 813248 2016-05-27 17:00 tcpdump
-rwxr-xr-x root shell 9384 2016-05-27 17:00 trapz
-rwxr-xr-x root shell 46456 2016-05-27 17:00 vitals_collection_agent
And just to make sure I did everything correctly, I hooked it up again then checked the binary:
Code:
[email protected]:/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b1/xbin# ls -la
total 1092
drwxr-xr-x. 2 root 2000 4096 Jan 5 04:35 .
drwxr-xr-x. 16 root root 4096 Jan 6 17:07 ..
-rwxr-xr-x. 1 root 2000 63880 May 27 2016 dexdump
-rwxr-xr-x. 1 root 2000 49816 May 27 2016 sqlite3
-rwsr-sr-x 1 root root 112576 Jan 5 04:31 su
-rwxr-xr-x. 1 root 2000 813248 May 27 2016 tcpdump
-rwxr-xr-x. 1 root 2000 9384 May 27 2016 trapz
-rwxr-xr-x. 1 root 2000 46456 May 27 2016 vitals_collection_agent
So at this point, I did some research and it seems that SELinux prevents this from being run. Does anyone have a workaround or could tell me how to give this binary permission? I have zero experience with SELinux, and even if anyone can point me to a similar thread for rooting when you have full r/w access, that'd be excellent..
Thanks!
Click to expand...
Click to collapse
bueller_recovery_v2.zip begins with a shell script. If you open it in a text editor, you can see it. mkdir /system/recovery, unzip the contents of that zip to /system/recovery, and do the mv and ln commands. Make sure the selinux contexts of /system/recovery and it's contents match the other contents of /systems.
And also make sure the contents are chmod 755.
rbox said:
bueller_recovery_v2.zip begins with a shell script. If you open it in a text editor, you can see it. mkdir /system/recovery, unzip the contents of that zip to /system/recovery, and do the mv and ln commands. Make sure the selinux contexts of /system/recovery and it's contents match the other contents of /systems.
And also make sure the contents are chmod 755.
Click to expand...
Click to collapse
Thanks, rbox! I've managed to rewrite the script to do all that, but how do I make sure the SELinux contexts match? Sorry, not familiar with SELinux.
Is this the ACTUAL partition table, or is this the way the eMMC reader loads it?
Code:
[email protected]:/media/root# ls 5*
57f8f4bc-abf4-655f-bf67-946fc0f9f25b:
adb backup hostapd property system?
anr bugreports key_provisioning prReset time
app connectivity local radio tombstones
app-asec dalvik-cache logd resource-cache user
app_ext data lost+found securedStorageLocation vitals
app-lib debug_service media securestop webcrypto
app_ms dontpanic mediadrm security wiper
app-private dpm misc shared wpstiles
audio drm playready ssh
autotrace fota proffline system
57f8f4bc-abf4-655f-bf67-946fc0f9f25b1:
data lost+found usf
57f8f4bc-abf4-655f-bf67-946fc0f9f25b2:
com.amazon.avod.apk lost+found
com.amazon.venezia.apk recovery
com.amazon.vizzini-550901810.apk signed_com.amazon.kso.blackbird-1550000810.apk
dalvik-cache signed_CSAppFireTV-fireOs-release_v112.apk
57f8f4bc-abf4-655f-bf67-946fc0f9f25b3:
data lost+found usf
57f8f4bc-abf4-655f-bf67-946fc0f9f25b4:
app etc lib priv-app sqfs vendor
bin fonts lost+found recovery-from-boot.p tts xbin
build.prop framework media security usr
I ask because /system/bin is actually on a completely separate partition using this method. Is it possible to copy the actual init2stub in place of e2fsck instead of symlinking it? (in case the symlink doesn't work)
Here's my modified version of your script:
Code:
# Put your `recovery' folder in here, unzipped
SHARED="/media/sf_Shared"
# This is the directory created by the MMC reader
LABEL="/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b"
SYSTEM="${LABEL}/system"
BIN="${LABEL}4/bin"
echo "Copying recovery..."
cp -rf $SHARED/recovery $SYSTEM
echo "Chmodding..."
chmod -R 755 $SYSTEM/recovery
echo "Backup the old e2fsck..."
mv $BIN/e2fsck $BIN/e2fsck.real
echo "Symlink e2fsck to 2ndinitstub..."
# If symlink doesn't work, can I copy 2ndinitstub completely?
ln -sf ../recovery/2ndinitstub $BIN/e2fsck
echo "Done."
Thanks for your help otherwise I'd be so SCREWED! :laugh:
cancelyourcable said:
Thanks, rbox! I've managed to rewrite the script to do all that, but how do I make sure the SELinux contexts match? Sorry, not familiar with SELinux.
Is this the ACTUAL partition table, or is this the way the eMMC reader loads it?
Code:
[email protected]:/media/root# ls 5*
57f8f4bc-abf4-655f-bf67-946fc0f9f25b:
adb backup hostapd property system?
anr bugreports key_provisioning prReset time
app connectivity local radio tombstones
app-asec dalvik-cache logd resource-cache user
app_ext data lost+found securedStorageLocation vitals
app-lib debug_service media securestop webcrypto
app_ms dontpanic mediadrm security wiper
app-private dpm misc shared wpstiles
audio drm playready ssh
autotrace fota proffline system
57f8f4bc-abf4-655f-bf67-946fc0f9f25b1:
data lost+found usf
57f8f4bc-abf4-655f-bf67-946fc0f9f25b2:
com.amazon.avod.apk lost+found
com.amazon.venezia.apk recovery
com.amazon.vizzini-550901810.apk signed_com.amazon.kso.blackbird-1550000810.apk
dalvik-cache signed_CSAppFireTV-fireOs-release_v112.apk
57f8f4bc-abf4-655f-bf67-946fc0f9f25b3:
data lost+found usf
57f8f4bc-abf4-655f-bf67-946fc0f9f25b4:
app etc lib priv-app sqfs vendor
bin fonts lost+found recovery-from-boot.p tts xbin
build.prop framework media security usr
I ask because /system/bin is actually on a completely separate partition using this method. Is it possible to copy the actual init2stub in place of e2fsck instead of symlinking it? (in case the symlink doesn't work)
Here's my modified version of your script:
Code:
# Put your `recovery' folder in here, unzipped
SHARED="/media/sf_Shared"
# This is the directory created by the MMC reader
LABEL="/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b"
SYSTEM="${LABEL}/system"
BIN="${LABEL}4/bin"
echo "Copying recovery..."
cp -rf $SHARED/recovery $SYSTEM
echo "Chmodding..."
chmod -R 755 $SYSTEM/recovery
echo "Backup the old e2fsck..."
mv $BIN/e2fsck $BIN/e2fsck.real
echo "Symlink e2fsck to 2ndinitstub..."
# If symlink doesn't work, can I copy 2ndinitstub completely?
ln -sf ../recovery/2ndinitstub $BIN/e2fsck
echo "Done."
Thanks for your help otherwise I'd be so SCREWED! :laugh:
Click to expand...
Click to collapse
That is /data. Not /system. ls -lZ will show you contexts.
rbox said:
That is /data. Not /system. ls -lZ will show you contexts.
Click to expand...
Click to collapse
Well, not sure exactly what happened but I booted it back up and /system/recovery doesn't exist. Even if that's normal behavior, it didn't run TWRP.
The shell script I pasted above, it runs chcon and chmod, but perhaps chcon has no effect since it's being run on a host system (linux), instead of the actual android system (I kinda expected that.)
Code:
[email protected]:/system/bin $ ls -Z e2*
ls -Z e2*
e2fsck: Permission denied
e2fsck.real: Permission denied
Is there an init file I can edit to run chcon or completely disable selinux? Seems like that's probably preventing it. I can't see log files as user, but I feel like that might be part of it.
Thanks
cancelyourcable said:
Well, not sure exactly what happened but I booted it back up and /system/recovery doesn't exist. Even if that's normal behavior, it didn't run TWRP.
The shell script I pasted above, it runs chcon and chmod, but perhaps chcon has no effect since it's being run on a host system (linux), instead of the actual android system (I kinda expected that.)
Code:
[email protected]:/system/bin $ ls -Z e2*
ls -Z e2*
e2fsck: Permission denied
e2fsck.real: Permission denied
Is there an init file I can edit to run chcon or completely disable selinux? Seems like that's probably preventing it. I can't see log files as user, but I feel like that might be part of it.
Thanks
Click to expand...
Click to collapse
Did you properly unmount the filesystem after you were done changing it? That's really the only way the changes wouldn't stick and recovery wouldn't be there. You definitely need to verify all the permissions and contexts manually before booting back in. Don't just assume a script worked. Also, I think chcon isn't going to work, now that I think about it. I remember when I was messing around with this stuff with the Fire TV 2 I wound up having to use extended attributes manually. This page: http://unix.stackexchange.com/quest...on-mounted-ext4-image-from-non-selinux-system explains how to do. As for disabling selinux... that's half the whole point of 2ndinit
rbox said:
Did you properly unmount the filesystem after you were done changing it? That's really the only way the changes wouldn't stick and recovery wouldn't be there. You definitely need to verify all the permissions and contexts manually before booting back in. Don't just assume a script worked. Also, I think chcon isn't going to work, now that I think about it. I remember when I was messing around with this stuff with the Fire TV 2 I wound up having to use extended attributes manually. This page: http://unix.stackexchange.com/quest...on-mounted-ext4-image-from-non-selinux-system explains how to do. As for disabling selinux... that's half the whole point of 2ndinit
Click to expand...
Click to collapse
Ya, definitely unmounted it. I'm like 99% sure it's because of this selinux thing. Ideally if I can get these extended attributes to work and run either `su' or get the recovery to load, that'd be best.
But /system and /recovery are on two separate partitions. When I look at the layout from linux when I mount it using the soldering method, it looks like this:
Code:
# /dev/sdb1 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b3 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb19 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b2 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb2 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b1 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb20 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb18 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b4 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
And from the firetv using adb shell, here's all the mounts:
Code:
[email protected]:/ $ mount
mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,nobarrier,commit=20,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,context=u:object_r:firmware_file:s0,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/block/loop0 /mnt/sqfs squashfs ro,context=u:object_r:squashfs_file:s0,relatime 0 0
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 rw,context=u:object_r:persist_file:s0,nosuid,nodev,noatime,data=ordered 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/shell/emulated/0 fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
It looks very different. Like the /bin that appears in /system on the fire tv is actually on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b4, yet /system appears on a completely separate partition /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b it's weird. Copying e2fsck did make it appear there, yet adding /system/recovery did nothing:
Code:
[email protected]:/ $ cd /system/recovery
cd /system/recovery
/system/bin/sh: cd: /system/recovery: No such file or directory
Not sure whether this is the firetv or the emmc reader which is displaying it oddly.
I'll wire it back up tomorrow and see if I can get extended permissions as well as try to figure out why the recovery dir is not showing up at all.
Thanks!
cancelyourcable said:
Ya, definitely unmounted it. I'm like 99% sure it's because of this selinux thing. Ideally if I can get these extended attributes to work and run either `su' or get the recovery to load, that'd be best.
But /system and /recovery are on two separate partitions. When I look at the layout from linux when I mount it using the soldering method, it looks like this:
Code:
# /dev/sdb1 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b3 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb19 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b2 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb2 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b1 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb20 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
# /dev/sdb18 on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b4 type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
And from the firetv using adb shell, here's all the mounts:
Code:
[email protected]:/ $ mount
mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,seclabel,relatime 0 0
selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0
debugfs /sys/kernel/debug debugfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0
tmpfs /mnt/asec tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/userdata /data ext4 rw,seclabel,nosuid,nodev,noatime,nomblk_io_submit,nobarrier,commit=20,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/modem /firmware vfat ro,context=u:object_r:firmware_file:s0,relatime,uid=1000,gid=1000,fmask=0337,dmask=0227,codepage=cp437,iocharset=iso8859-1,shortname=lower,errors=remount-ro 0 0
/dev/block/loop0 /mnt/sqfs squashfs ro,context=u:object_r:squashfs_file:s0,relatime 0 0
/dev/block/platform/msm_sdcc.1/by-name/persist /persist ext4 rw,context=u:object_r:persist_file:s0,nosuid,nodev,noatime,data=ordered 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
/dev/fuse /mnt/shell/emulated/0 fuse rw,nosuid,nodev,noexec,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
It looks very different. Like the /bin that appears in /system on the fire tv is actually on /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b4, yet /system appears on a completely separate partition /media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b it's weird. Copying e2fsck did make it appear there, yet adding /system/recovery did nothing:
Code:
[email protected]:/ $ cd /system/recovery
cd /system/recovery
/system/bin/sh: cd: /system/recovery: No such file or directory
Not sure whether this is the firetv or the emmc reader which is displaying it oddly.
I'll wire it back up tomorrow and see if I can get extended permissions as well as try to figure out why the recovery dir is not showing up at all.
Thanks!
Click to expand...
Click to collapse
You're not looking for a partition with a directory called system in it. The partition IS /system. So the partition with 'bin' and 'xbin' is the /system partition. That other one is /data.
rbox said:
You're not looking for a partition with a directory called system in it. The partition IS /system. So the partition with 'bin' and 'xbin' is the /system partition. That other one is /data.
Click to expand...
Click to collapse
Alright, so I made some big progress
Here's my script which successfully installed your TWRP zip:
Code:
# Put your `recovery' folder in here, unzipped
SHARED="/media/sf_Shared"
# This is the directory created by the MMC reader
LABEL="/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b"
# WARNING: this CHANGED from 4 to 3. Always CHECK FIRST
SYSTEM="${LABEL}3"
if [ ! -e "${SYSTEM}/xbin" ]; then
echo "ERROR: couldn't find /system/xbin - is the mount point correct?"
exit 1
fi
echo "Copying recovery..."
cp -rf $SHARED/recovery $SYSTEM
echo "Backup the old e2fsck..."
cp -i $SYSTEM/bin/e2fsck $SHARED/e2fsck.real
mv -i $SYSTEM/bin/e2fsck $SYSTEM/bin/e2fsck.real
echo "Chmodding and chconing RECOVERY..."
chown -R 0:2000 $SYSTEM/recovery
chmod -R 755 $SYSTEM/recovery
chcon -R --reference=$SYSTEM/bin $SYSTEM/recovery
echo "Copying, chmodding and chconing SU (in case recovery doesn't work out)..."
cp $SHARED/su $SYSTEM/xbin/
chown 0:2000 $SYSTEM/xbin/su
chmod 6755 $SYSTEM/xbin/su
chcon --reference=$SYSTEM/xbin/trapz $SYSTEM/xbin/su
echo "Symlink e2fsck to 2ndinitstub..."
ln -sf ../recovery/2ndinitstub $SYSTEM/bin/e2fsck
echo "Done."
Then I booted into TWRP successfully.
However, when I tried to install your bueller-5.2.1.1-rooted_r1 I got this:
{
"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"
}
After a long time it was clearly hung, so I rebooted and now it's bricked. But I did do a `dd if=/dev/sdb123 of=system.img` so i have that.
Would it be possible to just overwrite that partition with your system prerooted image while I have it connected to the emmc reader?
Thanks again for all the help!
cancelyourcable said:
Alright, so I made some big progress
Here's my script which successfully installed your TWRP zip:
Code:
# Put your `recovery' folder in here, unzipped
SHARED="/media/sf_Shared"
# This is the directory created by the MMC reader
LABEL="/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b"
# WARNING: this CHANGED from 4 to 3. Always CHECK FIRST
SYSTEM="${LABEL}3"
if [ ! -e "${SYSTEM}/xbin" ]; then
echo "ERROR: couldn't find /system/xbin - is the mount point correct?"
exit 1
fi
echo "Copying recovery..."
cp -rf $SHARED/recovery $SYSTEM
echo "Backup the old e2fsck..."
cp -i $SYSTEM/bin/e2fsck $SHARED/e2fsck.real
mv -i $SYSTEM/bin/e2fsck $SYSTEM/bin/e2fsck.real
echo "Chmodding and chconing RECOVERY..."
chown -R 0:2000 $SYSTEM/recovery
chmod -R 755 $SYSTEM/recovery
chcon -R --reference=$SYSTEM/bin $SYSTEM/recovery
echo "Copying, chmodding and chconing SU (in case recovery doesn't work out)..."
cp $SHARED/su $SYSTEM/xbin/
chown 0:2000 $SYSTEM/xbin/su
chmod 6755 $SYSTEM/xbin/su
chcon --reference=$SYSTEM/xbin/trapz $SYSTEM/xbin/su
echo "Symlink e2fsck to 2ndinitstub..."
ln -sf ../recovery/2ndinitstub $SYSTEM/bin/e2fsck
echo "Done."
Then I booted into TWRP successfully.
However, when I tried to install your bueller-5.2.1.1-rooted_r1 I got this:
View attachment 3996750
After a long time it was clearly hung, so I rebooted and now it's bricked. But I did do a `dd if=/dev/sdb123 of=system.img` so i have that.
Would it be possible to just overwrite that partition with your system prerooted image while I have it connected to the emmc reader?
Thanks again for all the help!
Click to expand...
Click to collapse
UPDATE...
I flashed my original system.img and brought it back to a working state. After that, I set up recovery again then tried to install bueller-5.2.1.1-rooted_r1.zip. Same as before, it froze, but this time at 80%:
Here's the only "log" I could find:
Code:
[email protected]:/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b4/recovery# cat log
Installing new recovery image: failed
So now I have the emmc reader connected again, and I'm *hoping* I can just flash the image in your bueller-5.2.1.1-rooted_r1.zip directly to the mmc using `dd if=system.new.dat of=/dev/sdb19`
But I thought I'd run it by your first before I brick it again :laugh:
Thanks again, @rbox
cancelyourcable said:
UPDATE...
I flashed my original system.img and brought it back to a working state. After that, I set up recovery again then tried to install bueller-5.2.1.1-rooted_r1.zip. Same as before, it froze, but this time at 80%:
View attachment 3997946
Here's the only "log" I could find:
Code:
[email protected]:/media/root/57f8f4bc-abf4-655f-bf67-946fc0f9f25b4/recovery# cat log
Installing new recovery image: failed
So now I have the emmc reader connected again, and I'm *hoping* I can just flash the image in your bueller-5.2.1.1-rooted_r1.zip directly to the mmc using `dd if=system.new.dat of=/dev/sdb19`
But I thought I'd run it by your first before I brick it again :laugh:
Thanks again, @rbox
Click to expand...
Click to collapse
The thread for TWRP talks about what to do if it hangs. You can use adb. You'll need to check the log while it's running. /tmp/recovery.log. The image in the rom is sparse, so you'll have to run sdat2img.py on it. And then you'll have to do all the steps listed in the updater-script. The image itself is 100% pure stock.
rbox said:
The thread for TWRP talks about what to do if it hangs. You can use adb. You'll need to check the log while it's running. /tmp/recovery.log. The image in the rom is sparse, so you'll have to run sdat2img.py on it. And then you'll have to do all the steps listed in the updater-script. The image itself is 100% pure stock.
Click to expand...
Click to collapse
I discovered your "updater-script" so I understand the process a lot better now (wish I had found this earlier)
How do I know which image to use for boot: boot.img or boot_unlocked.img? I'm running from a host system so I can't check the value of ro.boot.unlocked_kernel from within linux.
Thanks!
P.S. Almost finished a bash script others can use to flash your image from an emmc reader - I will post a guide on here!
cancelyourcable said:
I discovered your "updater-script" so I understand the process a lot better now (wish I had found this earlier)
How do I know which image to use for boot: boot.img or boot_unlocked.img? I'm running from a host system so I can't check the value of ro.boot.unlocked_kernel from within linux.
Thanks!
P.S. Almost finished a bash script others can use to flash your image from an emmc reader - I will post a guide on here!
Click to expand...
Click to collapse
Since it's running OS5, you have to use the regular boot.img, since your bootloader isn't unlocked.
cancelyourcable said:
P.S. Almost finished a bash script others can use to flash your image from an emmc reader - I will post a guide on here!
Click to expand...
Click to collapse
I would really appreciate this.
zexma said:
I would really appreciate this.
Click to expand...
Click to collapse
It's almost done! Will post very soon
cancelyourcable said:
It's almost done! Will post very soon
Click to expand...
Click to collapse
Don't want to bother, you
Is there any progress to expect, cause I'm stuck at the very same point, SELinux prevents loading su
(/system/xbin//su' failed: Permission denied)
Thanks in advance.
pwntrik said:
It's almost done! Will post very soon
Click to expand...
Click to collapse
Any progress on this?
zexma said:
Any progress on this?
Click to expand...
Click to collapse
Yes, it works 100%. Literally just ordered an overhead camera tripod for recording a video of the whole process. Sit tight -- I promise it's coming soon!
@pwntrik : any tricks to have your Linux (Ubuntu) box recognizing the FireTV in fastboot mode?
I can get it to connect in fastboot with Win7 on the same machine, but in Ubuntu 16.04 I'm not able to.
I did add ATTR{idVendor}== "1949" and ATTR{idProduct}=="0401" to /etc/udev/51-android.rules and rebooted, but no luck...
My FireTV (1st gen, last firmware was 5.0.5, rooted) is currently , after unsuccessful flash of "rooted-5.0.5_r1" ROM in TWRP stuck at this screen:
.
I know it's a longshot to recover it, but I have patience....
Sent from space
kozmo2k4 said:
@pwntrik : any tricks to have your Linux (Ubuntu) box recognizing the FireTV in fastboot mode?
I can get it to connect in fastboot with Win7 on the same machine, but in Ubuntu 16.04 I'm not able to.
I did add ATTR{idVendor}== "1949" and ATTR{idProduct}=="0401" to /etc/udev/51-android.rules and rebooted, but no luck...
My FireTV (1st gen, last firmware was 5.0.5, rooted) is currently , after unsuccessful flash of "rooted-5.0.5_r1" ROM in TWRP stuck at this screen:
.
I know it's a longshot to recover it, but I have patience....
Sent from space
Click to expand...
Click to collapse
I've been using Win10 for that. I only use Linux for writing the images.