Shared publicly  - 
SuperSU v1.50 released - important dev details

Another day another update - and unless some major issues arise, quite likely the last one until September.

The latest flashable ZIP is linked at the very bottom of the post. The Play store has also been updated, as have all CF-Auto-Root's.

I recommend all end-users on 4.3 update immediately, as root-app-devs will be unlikely to want to support quirks of the previous releases.

PS the ZIP should now also be compatible with the new CM

ARMv5 compatibility dropped

Due to some incompatibilities in the new code for 4.3, and not wanting to create a maintenance nightmare for myself, I have dropped support for ARMv5. The last ARMv5 (and v6) compatible version is v1.45.

It has been quite some time since the last flagship device came out running an older version than ARMv7, the small number of SuperSU users who are still using it will be unlikely to benefit (much) from further updates to SuperSU anyway.

Sorry if this creates problems for you. I may revisit ARMv5 support when a proper 4.3 AOSP build tree is available for it.

Proper storage mounts

All the storage locations ( /storage/emulated/0, obb, legacy, etc) are now properly available from su. These should be the exact same storage mounts as available to the non-privileged portion of your app, and they are now mounted instead of symlinked. This should solve most (internal) storage-related issues with most apps.

Proper mount namespaces

Mount namespaces were brought to Android in 4.2, and are a good thing (just like all the new restrictions in 4.3 really are a good thing, even if it's causing us some root grief at the moment). 

With the previous 4.3 SuperSU versions all root commands were executed in the same (global!) mount namespace (as if this was still 4.1). This is bad for multiple reasons. One reason is that if one su process remounted /system read-write, other processes could sneakily be writing to /system, opening a possible malware hole. Another reason is unintended interference. If you have two root apps who want to update something in /system, one could just be done (remounting the system back read-only) while the other one was still updating. The latter app will probably break in new and unexpected ways.

In this release, su calls from Android apps under 4.3 have same mount privacy as they would have had under 4.2. As it should be!

(Note that su calls from non-Android apps, like adb shell, share a single mount namespace)


If you're going to watch the number of processes running on your device, you will see several daemonsu processes. There is the master daemon, with a subprocess for every different Android app user id that uses su - and a separate one for non-Android callers -, which in turn has a subprocess for every su session (which automatically terminates). You might also see a zombie process sometimes, these are automatically cleaned up.

The exact how and why is long and technical, but it's needed, and these processes do not eat any resources while su isn't being used (they're just sleeping). On the plus side, when debugging you can easily see which su calling process is hogging all your resources, as the process name reflects this information, which will be visible in ps and top .


Minor comments can go here, but please, in-depth discussion should go to the XDA thread here:

Fixing internal storage issues

If this is not your first SuperSU version on 4.3, some files on your internal storage may have the wrong permissions, which will prevent you or your apps from deleting/modifying some files.

This can be fixed pretty easily, but you need to install busybox first, as toolbox's builtin chown command does not recursive directories. Once busybox is installed, this will fix the problem (run from terminal, adb shell, etc, as long as you have a su # prompt):

busybox chown -R 1023.1023 /data/media/*

- Daemon: proper storage mounts
- Daemon: per-uid mount namespace
- Daemon: another exitcode issue fix
- Daemon: adjusted reload code
- Daemon: descriptive process names 
- GUI: added reboot advisory after binary update
- ARCH: Only ARMv7 and X86 are now supported, ARMv5 dropped
- ZIP: install also to and init.d
Full firmware flashing straight from the device itself and ROOT in the process ! Never be without ROOT again ! SuperSU. The best Superuser access management available ! DSLR Controller. Control your Canon EOS DSLR from your phone ! PerfMon. The Performance Monitor that floats on top of all your ...
shamil v's profile photoX WANG's profile photoreno lara rere's profile photoHerman Ng's profile photo
Thanks for all your hard work!
Why, thanks.  Last word I read was you were going to be vacationing, so looks like you got this in before going.
I still can't delete files in /sdcard/ from any file manager (ES File Explorer, Solid Explorer), they have permissions 775, user root and group sdcard_rw but i can succesfully copy files to /sdcard say from a samba share. Also Titanium Backup Pro still force closes upon launch. Not sure why all of these troubles, nor where to look to debug it.
If we have 1.45 installed (flashed via recovery), do i need to download and flash 1.5, or can i just wait for the update through the play store?
+Salvatore La Bua I've seen that on some files as well, but others can be deleted fine - not sure what the issue is. They have the same seclabels as well. It's not directly related to su though, but if we find the issue maybe it can be fixed through su ...

EDIT: Upon further investigation, it seems if you make a file or path through /data/media/uid, you cannot remove it through /storage/emulated/uid. Weirdness.

EDIT#2: found problem and solution, will update the post
Thanks +Chainfire let's see how it goes, maybe there will also be file manager updates. At least I know I'm not the only one eheh :)
+Salvatore La Bua see the post again, I have updated it with the solution - at least, that solved it for me. Let me know if it works for you.
Thank you again +Chainfire it works now! :D it also fixed the Titanium Backup Pro issue, thanks a lot~
Just curious, if I have rooted via recovery ZIP before and then update SuperSU via Play Store, will the su binary also be updated (same process as applying the ZIP)?
+Sven Jacobs sometimes after updating via the play store, I manually run SuperSU and it completes the update process.
+Salvatore La Bua Thanks. Just received the update via Play Store and when I launched SuperSU it notified me that the su binary needs to be updated. However the update dialog is being displayed for a few minutes now...
Hm, +Sven Jacobs at this point you are supposed to choose between normal or recovery update. I always choose normal and it works within a couple of seconds at most.
+Salvatore La Bua Yes, chose "normal" and then the update dialog appeared and nothing more happened.

Now flashed via ZIP.
Humm.... I'm stuck at the "Installing, please wait..." screen. Rebooted 2 times. I also tried the "busybox" command before the last boot.
+Chainfire I discovered another related thing, although it may well be related to TWRP in this particular case. I did a nandroid backup and I booted the system, then tried to adb pull it from my pc and encountered a failed to copy / permission denied problem (and weirdly, only for some of them). I then rerun the busybox command you added to this post, in order to fix the ownership to the newly created files by the recovery, and adb is now pulling the files without any issue.
So I guess, is this related to the single app that writes files, or is there anything else we can do about it? Thanks.
Failed to update binary。stock 4.3
You can also use a custom recovery without actually flashing it, if that's your concern, +Peng Jone .
Hi +Chainfire I'm facing the same problem after the playstore update.
can't do nothing on esfile explorer it returns Phone not rooted but just after that the SuperSu pop-up appear to say root shell enabled but I can't use it anymore.
Terminal emulator require to enter 2 times the su command to enable root shell, the 1st time it returns it can't find any tzdata.
could we expect a play store update to solve this or must we flash SuperSu ?
best regards
+Peng Jone install flashify from play store, backup current recovery, install twrp, update supersu, restore stock recovery backup from flashify. Done.
Now that comes to my mind, I had to flash the old bootloader in order to use a custom recovery, at least on the nexus 4.
Installation fails when I click "normal" from within app but works when I select cwm recovery.
+Chainfire Permissions fix helped to resolve a number of issues on my freshly wiped Nexus 7, 4.3 install. Had a few apps that wouldn't load or install properly. Thanks for the hard work!
+Chainfire , I tried both 1.5 playstore update and CWM flash unsuccessfully.
I had to go back to 1.45 and it works perfect on 4.2.1
Where should we report bugs? Found a couple on the HTC DNA
Hi..... Did the update, now it won't open
says I need a "Su Binary"..... Help, I'm not show what this means 
I may be wrong but maybe this update is only for 4.3? Furthermore: "From v1.50 onward, ARMv5 devices are no longer supported. v1.45 is the last ARMv5 compatible version."
+Edoardo Tedesco, for many devices (such as my Nexus 7), that's not necessary.  As long as one can connect their device to their computer via USB, and enter the bootloader (e.g., so that fastboot on one's computer works), one can simply "fastboot boot twrp.img" (or whatever one has called their bootable image file) to boot it once, without having to touch the device's recovery partition.  But sure, if one can't use fastboot for whatever reasons, you could use flashify to back up recovery, flash and use another one, then restore the previous recovery.
Failed to update su binaries. Did it with recovery zip. All good. 
+Kathy Aleman, if when you open the SuperSU app it prompts for needing an su binary, it probably means there is no /system/xbin/su, and it wants to put one there.  Newer versions designed to work with Andy 4.3 also want a /system/xbin/daemonsu (to handle the new capabilities implementation).  SuperSU keeps a backup copy, usually at something like /system/bin/.ext/.su, and most likely wants to copy it from there to /system/xbin/ (optionally also to the filename daemonsu in that directory too).  
Also failing to update from Store on my GNex after numerous reboots. Will have to try via fastboot TWRP later when I have access to a PC.
Why not sud, as traditional UNIX naming? short and funny.
Nexus 4 with 4.3 the binary Update dont work
Trickster mod settings won't stick after reboot any reasons why?.. Btw I did enabled set on boot
I'll try later, today i'm wayting for an OTA.
it wasn't simple to go back to original recovery with your moded
Installed 1.51 via TWRP successfully, in SuperSU settings selected cleanup for reinstall from play store, play store reinstall successfully via normal option. Version now states 1.50, whereas it was 1.51 before cleanup. Nexus 4 Jss15j.
+Salvatore La Bua I'm having the exact same problem with my Nandroid when I try to copy it to my PC by drag and drop or adb pull (though it worked correctly from recovery). I just installed BusyBox from Play Store (I was postponing this intall until I got all my apps installed), but I'm unsure on how to run the command posted above from adb, could you please tell me the command lines you used? Thanks. 
Yes +David Sánchez , I also have this terminal emulator installed . In the emulator i first typed su and let supersu grant root access to the terminal. Once root, I typed the command: busybox chown -R 1023.1023 /data/media/* and then it worked fine. Try it and let us know whether it worked for you as well.
+Salvatore La Bua nvm, I figured it out... adb shell then su then the command. Now drag and drop and adb pull work correctly. 
Sorry I meant if you used the terminal emulator as I did.
Yes I used the same terminal emulator.
So everything's now fine. Thanks! 
Just got the 1.51 update via play store and the update process completed with no issues :)
With new version SuperSU (1.51) I still can not move my updates with Apps2ROM. I get the message : Unable to obtain the rights to write to your file system.
Galaxy Nexus 4.3 rooted (SuperSU 1.51)
I thought you were supposed to be on vacation? This doesn't sound like vacation although we appreciate it very much.
+Danny Hollis I'm actually only leaving in a few days, but I have a shitload of stuff still to do before leaving - I don't go on hotel holidays ;) I still have an app to release as well. These sort of times there are thing you can do, but you don't really want to release a big patch a few days before you go away, cause you can't fix issues.
Finally have 1.51 installed on my GNex using fastboot of TWRP. Just hope future updates don't need the same.
I don't even see 1.51 on chainfire's site :S
Well I mean no update on his blog or G+ about it
Danke für das schnelle Update. Mit Version 1.50 konnte man die su binary nur per TWRP updaten. Mit der 1.51 funktioniert auch wieder die normal Version. N4,N7 und TF300. Android 4.3
I'm new to all this .. so sorry! Yesterday I flashed 1.45 via TWRP and I think I'm going to flash 1.51 the same way. Will 1.51 just overwrite the old files or do I have to delete them or something before? xD
Hao Wu
report bug: the STweaks tool of perseus kernel 7.2 didn't work when I update my supersu from 1.30 to 1.50, It showed "no root access", then I return back to 1.30 it works fine again.
I installed SuperSU 1.45 after flashing 4.3 on my Nexus 10. I see that I now need to update to 1.51. Do I need to follow those busybox instructions for 1.51 or is that only for 1.50?
I still can't get TB to work properly.
Program will cause the system to power it?
After update my xperia sola hangs on bootloader.
So if someone has a 4.3 OTA waiting to update his Galaxy Nexus -- um, like me :-) -- and if I'm currently up to date on SuperSU, will SuperSU be able to maintain root through the OTA, or will I need to manually re-root?

I mainly just want to know if I can do the OTA over a beer at the pub, or if I should dedicate some time for it...

Update: I let the OTA loose on my Nexus 7, and it lost root. No biggie; I rooted it once, so I can do it again. In any case, thanks +chainfire -- I really appreciate all your work!
Thank you very much!  Got 4.3 with root on my Galaxy Nexus now! (yakju)
Just updated to 4.3 OTA and rooted with CF-Auto-Root. Worked like a charm!
Got myself into a bootloop due to 4.3 OTA update (!!!), so flashed the grouper factory images to my Nexus 7, booted TWRP with fastboot, sideloaded the 1.51 zip, and SO FAR no noticed problems.
Chainfire, you've done it again! Beer money forthcoming.
Md Amin
Good Work.... SuperSU v1.50 Root
Got ForceClose and this on LogCat:

E/AndroidRuntime( 7864): FATAL EXCEPTION: main
E/AndroidRuntime( 7864): java.lang.RuntimeException: Unable to start receiver eu.chainfire.supersu.NativeAccessReceiver: java.lang.SecurityException: Neither user 10071 nor current process has android.permissi
E/AndroidRuntime( 7864):        at
E/AndroidRuntime( 7864):        at$1500(
E/AndroidRuntime( 7864):        at$H.handleMessage(
E/AndroidRuntime( 7864):        at android.os.Handler.dispatchMessage(
E/AndroidRuntime( 7864):        at android.os.Looper.loop(
E/AndroidRuntime( 7864):        at
E/AndroidRuntime( 7864):        at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 7864):        at java.lang.reflect.Method.invoke(
E/AndroidRuntime( 7864):        at$
E/AndroidRuntime( 7864):        at
E/AndroidRuntime( 7864):        at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 7864): Caused by: java.lang.SecurityException: Neither user 10071 nor current process has android.permission.WAKE_LOCK.
E/AndroidRuntime( 7864):        at android.os.Parcel.readException(
E/AndroidRuntime( 7864):        at android.os.Parcel.readException(
E/AndroidRuntime( 7864):        at android.os.IPowerManager$Stub$Proxy.acquireWakeLock(
E/AndroidRuntime( 7864):        at android.os.PowerManager$WakeLock.acquireLocked(
E/AndroidRuntime( 7864):        at android.os.PowerManager$WakeLock.acquire(
E/AndroidRuntime( 7864):        at eu.chainfire.supersu.NativeAccessReceiver.onReceive(Unknown Source)
E/AndroidRuntime( 7864):        at
E/AndroidRuntime( 7864):        ... 10 more
W/ActivityManager( 3783):   Force finishing activity eu.chainfire.supersu/.MainActivity-Emblem
I have an original Nexus 7 (yes the 16g unfortunately).  Unlocked and running STOCK rooted FW.  I was able to do the OTA update to 4.3.  After the update my recovery allowed me to deny it from flashing a new recovery so while I was in there I used it to flash the new SuperSU and can confirm that everything works perfectly.  I am upgraded, still rooted, and lost no data.

You sir, are THE MAN!  Thank you for all your hard work and effort.  It's devs like you that allow us to turn our "cool" Android phones into AWESOME Android phones.
until 1.45 runs great on multiuser Note2 4.2.1. With the new version 1.50 I do not have access to the developer options STweaks no longer works and otherwise also some root privileges were curtailed. That's it :/
thank u very much ! 
Hello! Updated to Android 4.3 (via regular Over the Air) yesterday. Re-rooted using "Nexus Root Toolkit" v.1.6.4 
After that: Super SU (1.5.1) asks to update binary. When I okay that (using normal method) it runs for hours but doesn't succeed. Any ideas for a fix? [Device: Google Nexus 4 8GB]
Having issues with 1.5.1 will try 1.5
Now I no why every time I used Root Browser to copy contents from TWRP backups it would fail.  It had root.root instead of 1023!! Thanks for the advise I just fixed the permissions.
First off, +Chainfire, I just wanted to thank you for the awesome work you do.

I do have one question, though. I am a heavy user of the terminal on my Android device (Nexus 10), and I use su to start a shell session inside a GNU/Linux chroot which I use very regularly. However, I've noticed that the line discipline in my chroot-ed shells, which are necessarily spawned from root shells, tend to get messed up. Also, ncurses/full-screen apps (eg. vim, less, tmux) messes up the terminal when I use them. 

I assume this is because of the proxying that's occurring with daemonsu, whereas previous versions could use the I/O streams from the calling app directly and so be connected to the pseudo-terminal attached to Terminal Emulator. I would appreciate any information or ideas you may have regarding improving the proxy interface so we can work around or fix this problem with root terminals.
there is no su binary installed and supersu cannot install it. this is a problem SU 1.51.I use Nexus 7 2012  and i rooted using Nexus Root Toolkit 1.6 from Wug Fresh.Please help me with this problem.Thank You!
FYI, currently CF-AutoRoot, or this, blocks/breaks 4.3 OTA for i9505G.
Also getting fc on 4.3 on i9505G:
E/AndroidRuntime( 5245): java.lang.RuntimeException: Unable to start receiver eu.chainfire.supersu.NativeAccessReceiver: java.lang.SecurityException: Neither user 10106 nor current process has android.permission.WAKE_LOCK.
It doesn't work on my Huawei U8850 Vision. I have root access and Superuser app installed. When I want to install SuperSU, it is trying to download an update for su binary and then crashes with an error. :(
+Chainfire it takes around 10-15 minutes for my HTC one to boot up after the 1.51 update. I uninstalled it to reinstall it from playstore and when I reboot it's normal. After I install it it takes the same amount of time. Can I just uninstall supersu and will nothing happen? 
the server database error is making me go insane..
Me too. That'll learn me not to undertake any fiddling without making sure I have all the needed files first. 
I assume the site is being crushed by too much traffic? Does anyone know where else the zip is hosted?
Hope that +Chainfire is seeing this and uploads it to an other site, getting sick of this.. :(
A kind soul on SuperSU xda thread above posted the zip. Go to last page of the thread and it's there.
Checksums match between the one I downloaded before the +Chainfire site started having problems and the copy I just grabbed from the xda link...

$ cksum UPDATE-SuperSU-v1.51*
464884653 1192075
464884653 1192075
I flashed it for grouper, it works :D even with PA3.9 and franco kernel
The download doesn't start it says "Datababase error" Can you re-update the file?
+Fabrizio Zanetti Go to the XDA post and the last page, there is someone that has uploaded the .zip there, it works fine :D
Thank you I find the .zip! Thank you very much :D
Hi guys, can i get a link to the latest UPDATE-SuperSU zip i keep getting database error when i click the provided links. Thanks!
Hello, I also got the same message.
Very thanks~
Thank you! I was able to download it this morning. Good weekend guys
I was having rooted tilapia nexus 7. Before applying ota update for 4.3 i unrooted from supersu app itself. I successfully updated to 4.3. But now after flashing twrp and SuperSu, it is still not rooted. Supersu app crashing for me. Any help pls? 
Updated Nexus 4 to JB 4.3 OTA and then SuperSU to v1.51.  Thanks a lot Chainfire!!
Thanks for taking the time out of your day to do this, I hope you continue to enjoy your work and keep doing what you do best :-) 
after update to 1.51 from google play on Nexus 7 Gen 2, cannot update SU binary, any idea?
Anybody have a solution for the force close on WAKE_LOCK permission failure?
Ever since update my terminal fails an powers off my phone for About 10 minutes are longer 
Thanks, I purchased Pro., great work.
Kev K
Was wondering if there was a compatibility issue with CM 10.2 and SuperSu vers. 1.51. Wants to update binaries after a nightly flash. Will not install binaries "normal" way, but will in TWRP. Thanks!
still can't install binary files with normal mode on jelly bean 4.3.
+Chainfire Is there's a root method for the Malaysian KIMO tablet running android 4.2.2?
Can someone please tell me how to update the binary's using CWM? I have an HTC ONE running  Bigixie 4.3 Pure google rom.   +Chainfire   do you just choose install from zip? should I clear cache and delvik cash before doing so? Sorry I'm a noob at this.  
Just got the Nexus 7 flo...updated to 4.4.2 would you have a Super SU file to root? I have bootloader unlocked & TWRP
Not sure you are still monitoring, but when I try to update the package I get an error e:failed to verify whole-file signature  e:signature verification failed.... I am trying to install Superuser for a nexus 10 updated with 4.4.2..
Waduh pak bos bisa g pakek bahasa indonesia
Add a comment...