So, I was changing my boot animation and I foolishly removed the execute permissions of my system folder from users and groups and it made everything crash in a cascade. Now I am unable to boot beyond the bootloader or protocols that don't rely on the system folder. I can load fastboot on the Photon but adb cannot see the phone since I cannot boot it. If I choose 'BP Tools' from the boot loader, I can get a shell connection with my phone for about 5 seconds before it crashes, however, the permission is denied. If anyone knows a command that would bypass permissions and allow me to quickly run a shell command to change the system folder permissions back to normal I'd be so very relieved and grateful.
Here's the message when I run adb shell during that 5 second window:
exec '/system/bin/sh' failed: Permission Denied (13)
I need a quick sudo-chmod something or another to ninja that /system folder's permissions back to where they should be. I am terrible with linux so I'm hoping theres a fix as simple as the problem really is. I can do a master boot if I need to but I don't see why the whole system should turn unrecoverable because of ticking 2 little green check boxes that consist of only a few bytes... omg...
K I did a factory reset and I apparently have to flash the entire ROM because the system folder isnt touched by the wipe.
Ugh, another 10 hours to walk in the dark cause Im terrible at this stuff.
Can you boot into recovery?
If so try Recovery -> advanced -> fix permissions reboot.
Sent from my MB855 using xda app-developers app
Related
Question: Is your Superuser app asking for permissions from apps? Mine isn't. On my old rooted Eris, if I ran an app such as Titanium Backup or Root Explorer, I would get a dialog which would ask if I wanted to grant that app root access. This dialog was via the Superuser app. I don't get that now. It seems like any/every app on my phone has su access.
I'm wondering if it's just me or if this is the way the current root exploit works.
DeezNotes said:
Question: Is your Superuser app asking for permissions from apps? Mine isn't. On my old rooted Eris, if I ran an app such as Titanium Backup or Root Explorer, I would get a dialog which would ask if I wanted to grant that app root access. This dialog was via the Superuser app. I don't get that now. It seems like any/every app on my phone has su access.
I'm wondering if it's just me or if this is the way the current root exploit works.
Click to expand...
Click to collapse
It's just you. Try running root explorer or a screen cap program, and verify that you have root access. You may want to use an updated Superuser.apk too, I know the one I'm using (2.3.6.1) asks, (unless I told it not too).
I'm using Superuser 2.3.6.1. When I run Titanium or Root Explorer, everything works without prompting. Now, I'm concerned.
UPDATE: I opened Superuser, went to settings, scrolled to the bottom and updated the su binary. Now, I get prompted when an app needs access. Problem is, when I reboot the su binary is reset. I think this is due to me using the joeykrim root procedure, which uses a version of su that is scripted to be put in place during the boot process. I'm going to take a look at his scripts and change them so I can keep the su binary installed by the Superuser.apk.
Thanks for the info.
Confirmed my issue was due to using the joeykrim method. I backed out his procedure and used Dirrk's method (posted here: http://forum.xda-developers.com/showthread.php?t=779238) and I get a proper Superuser prompt when an application needs access.
I also noticed another flaw in the joeykrim method. Since his procedure was developed for the Epic, he has some incorrect file names in some places.
If you notice in his instructions where he says use playlogos1 instead of playlogos, this is not updated in all of his steps.
To get your boot screen back, you have to change the last line of playlogos1 or playlogosnow (based on whether you did the lag fix or not)
The file that will not show your boot animation will look like this:
Code:
#!/system/bin/sh
#joeykrim-SDX sdx-developers.com scripted
/system/bin/joeykrim-root.sh
/system/bin/playlogo-orig
To fix it, change the last line to read:
Code:
#!/system/bin/sh
#joeykrim-SDX sdx-developers.com scripted
/system/bin/joeykrim-root.sh
/system/bin/playlogos1-orig
In summary, the playlogos1 file is used to execute other startup scripts. The original playlogos1 file has the boot animation in it. It must be referenced in one of the startup scripts. Since these instructions were used for the Epic, there's a slight typo which keeps the original playlogos1 file from being executed.
Thanks--I came to the forums looking for a solution to the fact that my boot animation was now missing. I tried making your changes but I still can't seem to recover it. Here are what my playlogo scripts look like, keeping in mind I have also installed the lag fix:
playlogos1
Code:
#!/system/bin/sh
sh /system/bin/userinit.sh
playlogosnow
playlogosnow
Code:
#!/system/bin/sh
#joeykrim-SDX sdx-developers.com scripted
/system/bin/joeykrim-root.sh
/system/bin/playlogos1-orig
I'll also have a 3rd file called just playlogo (which was very long). Do you know what the issue is? Thanks so much for your help.
theicemonkey said:
Thanks--I came to the forums looking for a solution to the fact that my boot animation was now missing. I tried making your changes but I still can't seem to recover it. Here are what my playlogo scripts look like, keeping in mind I have also installed the lag fix:
playlogos1
Code:
#!/system/bin/sh
sh /system/bin/userinit.sh
playlogosnow
playlogosnow
Code:
#!/system/bin/sh
#joeykrim-SDX sdx-developers.com scripted
/system/bin/joeykrim-root.sh
/system/bin/playlogos1-orig
I'll also have a 3rd file called just playlogo (which was very long). Do you know what the issue is? Thanks so much for your help.
Click to expand...
Click to collapse
Judging by what your files look like, things should work. The original file is playlogos1. We never touch the playlogo file from what I can remember, so let's not do anything there.
What I would do is make sure the permissions are straight on all the files listed above (primarily playlogos1). They should be 755 (shown below):
Code:
# cd /system/bin
# ls -l playl*
-rwxr-xr-x root shell 10060 2010-08-12 04:30 playlogo
-rwxr-xr-x root root 106 2010-09-11 18:53 playlogos1
-rwxr-xr-x root root 177 2010-09-11 18:55 playlogos1-lagfix
-rwxr-xr-x root shell 14420 2010-08-12 12:30 playlogos1-orig
-rwxr-xr-x root shell 14204 2010-08-12 04:30 playlpm
#
If all else fails, you can always grab the original file from the system dump off of this link: http://forum.androidcentral.com/fascinate-roms-hacks/32839-fascinate-system-dump.html
DEAR GOD
Well, I'm an idiot.
I tried to take the playlogos1 file from the dump you showed me and copy it to my /system/bin file and, sure enough, I got the boot animation back. Problem is, I didn't think it through (that the edited playlogos1 file pointed to the rest of the modified boot sequence) and then the phone wouldn't boot. It would just loop the animations.
I booted into recovery, did a factory reset, and now I can get to the lockscreen and the very beginning of setup but TWLauncher force closes over and over and over and I'm unable to do anything except pull down the notification bar occasionally. I think this is because I moved some things (like bing, daily briefing, etc.) that TWLauncher wants at the outset, and it doesn't have them. I tried to bluetooth over LauncherPro and run it, but it fails at the last moment.
Does anyone know of a way to get to ADB Shell so that I can fix my mistake? Or if someone had an update.zip I could flash to get back to factory (with all of the system files in place), that would be super! Otherwise, it looks like I'm effed and will need to come up with a good story to tell Verizon...
theicemonkey said:
Well, I'm an idiot.
I tried to take the playlogos1 file from the dump you showed me and copy it to my /system/bin file and, sure enough, I got the boot animation back. Problem is, I didn't think it through (that the edited playlogos1 file pointed to the rest of the modified boot sequence) and then the phone wouldn't boot. It would just loop the animations.
I booted into recovery, did a factory reset, and now I can get to the lockscreen and the very beginning of setup but TWLauncher force closes over and over and over and I'm unable to do anything except pull down the notification bar occasionally. I think this is because I moved some things (like bing, daily briefing, etc.) that TWLauncher wants at the outset, and it doesn't have them. I tried to bluetooth over LauncherPro and run it, but it fails at the last moment.
Does anyone know of a way to get to ADB Shell so that I can fix my mistake? Or if someone had an update.zip I could flash to get back to factory (with all of the system files in place), that would be super! Otherwise, it looks like I'm effed and will need to come up with a good story to tell Verizon...
Click to expand...
Click to collapse
Sorry you're having issues. Bad news is, you can't flash any zip updates because we don't have a custom recovery re our phones yet. However, what you should be able to do is use adb to push the apps from /system/app from the system dump. That is.. if you can get adb to work? If it can work from recovery, that should save you.
Good luck.
Hi,
i accidently changed the permission of the folder "system" to READ only. atleast i think so... i used Yaffs Explorer to change permission of "system" and i ticked the first line on all 3.
again.. this was an accident cuz i didnt know what i was doing.
now the problem is my phone just keeps restarting ... and then it boots into recovery (3e) on its own...
i tried using ADB to change the permission with adb shell ... and all that.. problem is
adb works. phone connects and shows off as device.
but if i try using the adb shell command or any other command with adb ( except sideload ) it tells me
"PERMISSION DENIED" and similar messages...
i have no clue how to safe my phone now any help would be much much appreciated.
i thought something of my own...
is it possible to write a shell script which changes the permission of "system" folder to its correct one.. make it as a .ZIP file and update use it with "update from adb"
please any help^^
best regards
Krype
I assume you are rooted have you gone into CWM and reset permissions?
The problem:
I rooted my Samsung Galaxy Ace and went exploring the root directory with Root Explorer. I renamed the folder "apk" found in /data to "apk_old", thinking that if everything worked, I could just delete it as it contained a handful of stock apks as well as several apps installed from the market. At the time, I though apks were needed just for installation and that by deleting the folder I would save ~30MB of internal memory. Well, I turns out I was horribly wrong. Several stock apps, such as Youtube or Maps and all market apps that were installed in internal memory have stopped working. In the app drawer, their icons have turned into those default apk icons and their names into com.something.blabla. I was getting crashes every 1-2 minutes from those apps. The widgets on my home screen, such as Google search or Homework 4x2 have also stopped working.
What I've tried:
*renaming the folder back to "apk", obviously. That didn't work, it said something like "execution failed"
*making a copy of the folder - failed
*zipping the folder - failed
*thinking there was a problem with Root Explorer, I installed Total Commander and Solid Explorer hoping I could rename the folder back. Total Commander cannot open the /data folder, while Solid Explorer says the /data folder is empty
*"pulling" all of "/data" with ADB - 0 files pulled.
However, as I was trying to clean up my own mess, things changed a bit. At some point the crashes stopped and all of the "corrupt" apps have simply gone away from the app drawer. While I was unable to do anything with the "apk_old" folder in /data, something changed so that right now I can't even access /data anymore.
So yea, I have a bad feeling that somehow everything inside the /data folder has been wiped, though I sure hope I'm wrong. Anyone have anything to advise?
Oh, and I also noticed that Superuser is gone. I tried re-rooting my phone from this link, it worked the first time I rooted, but not now...
http://forum.xda-developers.com/showthread.php?t=1552792
I don't know exactly what you have in /data/apk I guess is the same I have in /data/app all the installed package.apk
Since your system is compromised I would avoid to use programs from it like Root Explorer to change anything, and for the other programs looks like they don't have root access.
I would try with plain adb: http://forum.xda-developers.com/showthread.php?t=2141817
Once you have your phone connected with adb shell you can go root:
Code:
$ su
to list files and directories in /data
Code:
# ls /data
and then to rename the folder
Code:
# mv /data/apk_old /data/apk
then reboot the phone
good luck
I'm assuming those # signs were suppose to be $'s?, Anyways, what I typed into adb:
1. adb shell
2. $ ls data
What I get:
opendir failed, Permission denied
Another atempt:
1. adb shell
2. $ su
What I get:
su, and after a long pause - Permission denied
eh? So, apparently I can't get root access, what now?
the dficua
Ha, made progress. I installed Superuser through adb and it gave me permission to access data and to rename apk_old back to apk. However, the folder has been wiped of all the apps. Luckily, I have a friend who also has a Galaxy Ace, I'll just copy the folder and paste it into /data, hopefully i'll bring back the default apps.
$ is the normal shell
# is root shell
I forgot to tell you to try that on recovery mode to prevent the calling of SuperUser to grant privilegs, su binary itself should be in /system/xbin
When you restore apps remember also to fix permissions, user and group, it should be something like this:
# chmod 0664 /data/apk/*.apk
# chown system:system /data/apk/*.apk
check the right values in your friend's phone.
Yes, it's possible, and yes, it's pretty much exactly the same process as on your phone. If you've done it there, you can do it on Wear.
Oh, apologies if this is old news to you, but I couldn't find threads on this particular topic, and I'm quite satisfied that it worked, so why not share.
Now, the stock Wear boot animation is great. I personally love it, at least -- so why change it? Well, why do we do most things on XDA? Because we can. Do at your own risk, I take no responsibility if you screw up. Take these notes as suggestions. I mean, they work, but you know. Backups are always a good idea.
tl;dr for people who don't need help with adb:
push the bootanimation.zip to /system/media (back up the original!), then
chmod 644 bootanimation.zip
reboot
done.
Stuff you'll need:
1. An Android Wear device (any should do, I have a Sony Smartwatch 3) that has root access and ADB debugging enabled
2. A custom kernel that has adbd insecure (I used this)
3. ADB drivers on your computer
4. A boot animation. Duh. I used this for testing purposes because the resolution is meh x close enough.
Optional: a file explorer that works on Wear. I use ES.
How to do it (the way I did, I know there are other ways):
1. On your computer: move the .zip file your animation comes in to the folder where you have ADB installed. It's probably something like "C:\Users\yourname\AppData\Local\Android\android-sdk\platform-tools".
2. Open a command window in that location by shift+right clicking on the folder and selecting "Open command window here".
3. Connect your watch to your computer no later than now. If prompted, allow debugging (note that if it's your first time, the prompt should show. If not, check developer settings again).
4. In the command prompt, type
Code:
adb devices
This lists the devices that are connected to your computer. You should see the text "List of devices attached", your watch's serial number, and the text "device" next to it. If you don't, check your drivers.
5. Copy the .zip onto your watch:
Code:
adb push bootanimation.zip /sdcard/
The directory doesn't actually matter, just make sure it's not /system and somewhere you can remember.
6. Why not /system? Because it's, by default, a read-only partition we can't access via normal adb commands. Yet that's where that zip is headed. This is where the adbd insecure kernel comes in: with it, you can remount /system as read-write. For that, enter the adb shell:
Code:
adb shell
It'll show (don't write this!)
Code:
[email protected]:/ $
To get the root privileges you'll need, type
Code:
su
What you should get is
Code:
[email protected]:/ $ su
[email protected]:/ #
The # means you're rooted. If it shows without typing "su," great.
7. Remount /system as read-write by typing the following:
Code:
mount -o rw,remount /system
8. We can now alter the partition, and we'll start by backing up your stock boot animation. To do that, we need to "move" the file to an identical file with a different name. If that sounds like it doesn't make sense, that's because it doesn't -- it's stupid, but adb shell doesn't have a rename command. This is to avoid the stock animation from getting overwritten by the new one if anything goes wrong. Anyway, to accomplish that, type
Code:
mv /system/media/bootanimation.zip bootanimation.zip1
This changes the animation's extension to .zip1, which doesn't exist. The point of this is that Android looks for /system/media/bootanimation.zip when booting up, so "bootanimation.zip1" gets ignored and is out of our way. If you'd reboot the watch now, there would be no boot animation, just a plain "Android" text (or as is the case with my 320x320 SW3, "NDROI")
9. Now we'll need to move our new animation to replace the old one. To accomplish that, use the aforementioned "move" command:
Code:
mv /sdcard/bootanimation.zip /system/media/
10. Finally, to make the animation actually display, we'll need to give it proper permissions, which are rw-r-r. "chmod" is the command that alters permissions, rw is represented by a six, and r by a four.
Code:
chmod 644 /system/media/bootanimation.zip
11. Close down /system
Code:
mount -o ro,remount /system
12. Done! Reboot your watch and enjoy your new boot animation!
Worked thanks
Gave this a try on the train on my way home from work and it worked a treat thanks now off to find some more suitable boot anims to play around with
Smackedgnome said:
Gave this a try on the train on my way home from work and it worked a treat thanks now off to find some more suitable boot anims to play around with
Click to expand...
Click to collapse
Good to hear! Now all we need is that the artistically inclined among us make some awesome-looking animations for our itty-bitty screens.
If you find any, please post them here so I can add them to the OP.
[NUMINIT] said:
Now all we need ... some awesome-looking animations for our itty-bitty screens.
If you find any, please post them here so I can add them to the OP.
Click to expand...
Click to collapse
Went looking for them and found a few, thought that I would share.
There appears to be a size limit to what boot animation can be used (at least with my Sony Smartwatch 3), the biggest file used being ~3000KB.
Watchdogs
view here
https://www.youtube.com/watch?v=ZhH-4zsMB5w
This is the one I currently use
Cyanogenmod12
(sorry dont have a link/ gif - it looks good trust me )
Nexus 7 boot animation
(no link either sorry and tbh havent tried it yet - theoretically works)
I made none of these myself, they belong to the original owners. (I just cant remember where from lol)
Files are aptly named, dont forget to rename to bootanimation.zip
Enjoy
On my aw2 huawei 2 sport 4g sawshark, the time shows during the boot process. Any way to remove for aw2 or add for aw1?
Sent from my amami using XDA Labs
Hello everyone,
I’ve a problem with my system folder as I can’t write to it anymore.
Phone: HTC Desire with Android 4.1.1;
rom: https://forum.xda-developers.com/showthread.php?t=2183281
My story: I wanted to try a model specific soft and I made a change of model in the build.prop in the system folder. Everything was ok, but when I edited back the build.prop with ES file editor, it saved the file as a blank file. I then moved the blank file to the SD card with success and tried to copy the build.prop from a backup I’ve done; and I get permission denied…
So far I’ve tried:
- Re-mounting the system folder
- Clearing ES file explorer data to give a SU access again
- Trying the same thing with Terminal Emulator but I’m not familiar with android command line
So now I’ve a phone without build.prop in the system and I suppose it will not be happy about it the next reboot.
My question: How I lost the capacity to write to the system folder, from a theoretical point of view, and how I can clean this mess as a personal matter. As the phone is still up I hope that it’s still possible to solve the problem without having to re-install everything.
If someone is interested by this, I will welcome any help.
Kuroneko
Try
mount -o remount rw system
In terminal.....And then try to copy with terminal itself...Use CP command
Thank for the help but sadly it didn’t make the trick.
I use Terminal Emulator
After several trials with the command I think that I’ve found the correct syntax but at the end it didn’t worked.
Working in the root folder where I put a copy of build.prop:
su
mount –o remount,rw /system
cp build.prop /system/build.prop
>can’t create “/system/build.prop”: Out of memory
I also tried to create a text file in the system folder with Total Commander without success.
I fear that there is a serious **** up in the system, probably with the file handling. Under windows (and dos) I could find my way but I’m not familiar with Linux system, and even less with Android. Under normal circumstance I would reboot the system but without a build.prop in the system directory I fear that it will go even worse.
Any other suggestion?
Kuroneko
PS: I’ve nothing again command line but with a 3.7” touch panel it’s far from fun…
This is due to HTC's read/write protection that is built into the boot.img. You might see if there is a custom kernel for your device that has this flag disabled.
Thank for your answer,
But I’m not sure that I follow you.
If the problem was due to an r/w protection of the boot image, how I was able to modify my build.prop, and later erase it?
If you could explain this it would help greatly as it means that I could re-boot without worry.