How to get rid of "System UIDs Inconsistent"?
I was on 4.2.1, rooted, and with TWRP as recovery.
I wanted to get the OTA to 4.2.2 so I did full Titanium backup and then used the WugFresh toolkit to flash stock 4.2.1.
After flashing, I was offered the OTA which I allowed to install.
When finished, I got root back with Rootkeeper and restored all Apps and Data (not System data) with Titanium.
Everything was working, but on every reboot I got the message :
"System UIDs Inconsistent. UIDs on the system are inconsistent, you need to wipe your data partition or your device will be unstable."
I also found that My Phone Explorer would no longer connect via USB so I decided to go back to 4.2.1.
I again flashed it with the toolkit and did another restore with Titanium. Again, everything seems to be working, but I still get this message on every boot.
I thought using Titanium Backup was a standard way of restoring apps and data.
How do I get rid of this message without wiping and reinstalling all my Apps individually, which means losing all my game scores, etc?
You might need to painstakingly go through your installed apps one by one and figure out which pair of apps are conflicting on the same uid, or which app got installed with a uid that fails to match the file ownership info in /data/data
That's probably not as bad as it sounds.
$ su
# ls -lnd /data/data/*
# strings /data/system/packages.list
gives you both lists with the uids.
Probably it is a bit safer to do this via adb in recovery, as the filesystems will not be active while you are doing recursive chown
I've never really known whether the "fix permissions" menu pick in CWM/TWRP is attacking this problem or a different permissions problem. I wish I knew; did a search just now, and couldn't quickly find an answer - couldn't find the right tree for all the forests in the way.
If you find that answer, I'd be interested to hear about it; I'd rather that than try to go and find it in TWRP's git tree (don't know where to find that).
Edit/Update ----------------------------------
@devra1
I looked at the TWRP sources for
fix permissions and indeed this looks like it does what you are looking for - it reads the package listing in /data/system/packages.xml and then enforces the uid/gid information found there on each app data folder.
My c++ reading skills aren't all they should be, but I note there is a place in there involving multi-user where the coder punted a little bit. Given that 4.2 is potentially multiuser (do you have more than one user set up?), I suppose YMMV.
Take a Android backup before you run fix permissions in the recovery; that way you can always revert if you don't care for the result.
good luck.