Hey everyone!
I recently installed the Google Pixel Launcher as a system app using Solid Explorer by installing it normally, then moving the app's folder from /data/app to /system/app and setting the folder's permissions to: Owner - Read/Write/Execute Group - Read/Execute Global - Read/Execute (755 - drwxr-xr-x) and the base.apk file to: Owner - Read/Write Group - Read Global - Read (644 -rw-r--r--) Now I can't seem to delete any files in the user internal storage space. I can however delete them if I browse there directly from /data/media/0. I imagine this is because I'm using root privileges when I navigate there directly. I'm pretty sure this is a simple permissions issue, but I honestly know little about permissions, and was only following the guide here. Can anyone give me a hand in sorting this mess out? Thanks in advance!
Let's see if I can make any sense here
First, Android is a flavor of Linux. So I'm going to talk about Linux permissions, but it applies equally to Android.
The groups (Linux term) that have access are dependant on which mount point you are accessing the internal storage from. Each directory/file has an owner and a group. Linux permissions address privileges for: owner, group, all users. The permissions for each look like: rwx. So when you look at a complete permission string it might look like:
rwxrwxrw
That's three sets of read, write, execute. If only the owner has full permissions, and the group has partial permissions, and all users have no permissions it might look like:
-rw-rw----
The very first character in that example is a "-" so I know it's not a directory. If it was a directory, the first character would be a "d". With the same permissions it would look like:
drw-rw----
Here are some examples of the same directory and file in the internal storage, but reached via different mount points. Inside a terminal app on your device, if you type "ls -al" in each of these directories, you should see something similar.
The owner and group are also indicated in a directory listing. In the first example, the owner is root and the group is sdcard_rw.
A final thing, in each example, the first line ends in a single dot "." and the second line in a double "..". The single represents the current directory you are in and the double the current directory's parent.
/storage/emulated
drwxrwx--x 50 root sdcard_rw 4096 2017-06-12 19:06 .
drwx--x--x 4 root sdcard_rw 4096 2016-06-13 19:22 ..
drwxrwx--x 6 root sdcard_rw 4096 2016-09-20 10:45 Android
-rw-rw---- 1 root sdcard_rw 629591 2017-05-27 13:17 image.jpg
Click to expand...
Click to collapse
/data/media/0
drwxrwx--- 50 media_rw media_rw 4096 2017-06-12 19:06 .
drwxrwx--- 4 media_rw media_rw 4096 2016-06-13 19:22 ..
drwxrwxr-x 6 media_rw media_rw 4096 2016-09-20 10:45 Android
-rw-rw-r-- 1 media_rw media_rw 629591 2017-05-27 13:17 image.jpg
Click to expand...
Click to collapse
/sdcard
drwxrwx--x 50 root sdcard_rw 4096 2017-06-12 19:06 .
drwx--x--x 4 root sdcard_rw 4096 2016-06-13 19:22 ..
drwxrwx--x 6 root sdcard_rw 4096 2016-09-20 10:45 Android
-rw-rw---- 1 root sdcard_rw 629591 2017-05-27 13:17 image.jpg
Click to expand...
Click to collapse
So now my question in your case is, what does a directory listing (ls -al) of /sdcard look like in your device? If it's different than my - very abbreviated - example, then you have a permissions problem.
ktmom said:
Let's see if I can make any sense here
First, Android is a flavor of Linux. So I'm going to talk about Linux permissions, but it applies equally to Android.
The groups (Linux term) that have access are dependant on which mount point you are accessing the internal storage from. Each directory/file has an owner and a group. Linux permissions address privileges for: owner, group, all users. The permissions for each look like: rwx. So when you look at a complete permission string it might look like:
rwxrwxrw
That's three sets of read, write, execute. If only the owner has full permissions, and the group has partial permissions, and all users have no permissions it might look like:
-rw-rw----
The very first character in that example is a "-" so I know it's not a directory. If it was a directory, the first character would be a "d". With the same permissions it would look like:
drw-rw----
Here are some examples of the same directory and file in the internal storage, but reached via different mount points. Inside a terminal app on your device, if you type "ls -al" in each of these directories, you should see something similar.
The owner and group are also indicated in a directory listing. In the first example, the owner is root and the group is sdcard_rw.
A final thing, in each example, the first line ends in a single dot "." and the second line in a double "..". The single represents the current directory you are in and the double the current directory's parent.
/storage/emulated
/data/media/0
/sdcard
So now my question in your case is, what does a directory listing (ls -al) of /sdcard look like in your device? If it's different than my - very abbreviated - example, then you have a permissions problem.
Click to expand...
Click to collapse
Screenshot attached.
cfhsncb said:
Screenshot attached.
Click to expand...
Click to collapse
There doesn't seem to be anything wrong there. If you can reproduce the problem, try capturing a logcat and see if it gives a clue.
ktmom said:
There doesn't seem to be anything wrong there. If you can reproduce the problem, try capturing a logcat and see if it gives a clue.
Click to expand...
Click to collapse
Yeah, I had been messing around with the permissions based on the information in your post before I took that screenshot. I think I have everything working now, and if it looks good to you, I'm just going to roll with it.
Related
I have modified wpa_supplicant.conf and after every reboot of the phone, the permissions are reset:
# cd /data/misc/wifi
# ls -ltr
drwxrwx--- 1 1010 1010 2048 Sep 2 18:27 sockets
-rw-rw---- 1 0 0 744 Sep 3 06:15 wpa_supplicant.conf
In order for wireless to work I need to reset perms to 666 as Wifi does not switch on:
/SettingsWifiEnabler( 3196): Received wifi state changed from Unknown to Enabling
E/WifiHW ( 1422): Cannot access "/data/misc/wifi/wpa_supplicant.conf": Permission denied
E/WifiHW ( 1422): Wi-Fi will not be enabled
How can I make the permissions stick?
try to booting into recovery go to console ,then
mount /data
chmod 666 /data/misc/wifi/wpa_supplicant.conf
may or may not work
ubernicholi said:
try to booting into recovery go to console ,then
mount /data
chmod 666 /data/misc/wifi/wpa_supplicant.conf
may or may not work
Click to expand...
Click to collapse
I did that a number of times. in recovery mode after chmoding to 666 permissions show as
-rw-rw-rw- 1 0 0 744 Sep 3 06:15 wpa_supplicant.conf
after reboot it shows as
-rw-rw---- 1 0 0 744 Sep 3 06:15 wpa_supplicant.conf
Not sure how to overcome this as it appears that the reboot process changes the permissions back (perhaps a Cyanogen problem - running on 4.0.4??)
if your running cyanogen's rom couldn't you just put the chmod command in the userinit.sh. welll that is if you have a ext partition
Please read stickies before posting. This should be in the Q&A forum.
problem solved by placing the following into userinit.sh. still strange that something changes the permissions and ownership of that file during boot-process.
if [ -d /data/misc/wifi ];
then
busybox chown 1000:1000 /data/misc/wifi/wpa_supplicant.conf;
busybox chmod 666 /data/misc/wifi/wpa_supplicant.conf;
echo "Changed permissions for wpa_supplicant.conf"
fi;
I found this to be working permanently:
The solution was to simply change ownership back to system:wifi
$ adb root
$ adb -d shell
# cd /data/misc/wifi
# chown system.wifi wpa_supplicant.conf
# reboot
Click to expand...
Click to collapse
Found somewhere. Sorry, I've not bookmarked the link.
thank you!
clean copy of wpa_supplicant.conf
Hey all. New to the forum. was wondering if any has an original copy of the wpa_supplicant.conf file for the flytouch2. i was doing some experimenting and fudged it up real good. thanks in advancd
Hey just wanted to thank you for this thread.. saved me a lot of time on a project
stupid ownership.
Thanks. This post helped me too...
Me too. Thanks
Thanks!
I can't believe I never did a search on the XDA forums for this issue, which has been plaguing me for months.
Well actually "plaguing" is probably too strong a word, but it is usually the little annoyances that drive me up the wall way more than the large problems!
that is all
pam
another way to solve
hello,
I've had similar issues after modifiying the file with ES Explorer. The problem is that the app not only rewrites the permissions of the file but also the owner and group. Fortunately the app stores a .bak file so i could "ls-l" the correct file settings.
U should use
chmod 660 wpa_supplicant.conf (by default and not 666!)
and
chown system.wifi wpa_supplicant.conf (sets owner to system and group to wifi)
Good luck!
I've been having simmular problem:
While back I have edited the same file (using ES file explorer app) and ever since then everytime i reboot my wifi wont switch on (instead it just shows an error in status field)
So far solution i had to use is to open the wpa_supplicant.conf file in ES and "edit and save" it... So pretty much even if i type in and erase a random character, and then try to exit ES asks if i want to save. Click yes and go to settings and wifi is switching on no prob...
Does this seem like I should use one of the solutions posted above, or is there some other resolution to my problem?
Im running Gingerbread on HTC doubleshot.
I appreciate any help given!
Thanks in advance.
thank you!
Just wanted to say thank you,
ts-binds
ts-binds basically make use of “bind” parameter of the “mount” available in your Android environment
Development Abandoned!
This project has been abandoned. This is because I personally do not require ts-binds anymore. Refer announcement post here: https://forum.xda-developers.com/showpost.php?p=79150883&postcount=237
What does it do
Essentially, this "binding" method is widely used to save space on internal storage!
Derived from a very long-living trick for users who are struggling with the internal storage space available on their phones, while at the same time has the benefit of inserting an SD card, ts-binds will make use of already available functions on your device, to mirror a path to another path, effectively making both paths indistinguishable.
For example, if you mirror the `Download` folder on Internal with the `Stuff from Internet` folder on your SD Card, the same list of cat pictures will be shown on both directories when navigated via a file manager, and any changes will take effect on both paths but only the folder in the external path is physically modified.
This saves space because the files physically reside on the external storage instead of internal storage.
Further read
To maintain a similar "Description" of the module, I had to trim down the OP of the thread. There are a total of 3 places where I host the module's description To read documentation, please go to my website
Alternative modules with the same purpose
Magic Folder Binder (really advanced compared to this module!)
Magisk Foldermount (may be abandoned)
Links
Documentation
→ DOWNLOAD ZIPs (Also available in Magisk Repo)
GitHub
Changelogs
Verbose changelog for Magisk releases
Nice work!
Module has been accepted into the repository. Now it is available for install and update via Magisk.
Since the creation of this thread, there has been 4 newer versions, the latest being 1.0.4.
Hi @TechnoSparks!
I have the following problem:
I had set folder list line like this:
folderbind ogi "$sd/Ogi" "$int/Ogi"
and after reboot my log file looks like this:
Log initialised at: Sat Aug 12 19:50:30 CEST 2017
2017-08-12 19:50:30:
Difference found between cached and original user list
2017-08-12 19:50:30:
Updated cached list
2017-08-12 19:50:30:
sdcard 7788-9789 mounted
2017-08-12 19:50:30:
Binding all entries
2017-08-12 19:50:31:
Bind aborted: Folder '/mnt/media_rw/7788-9789/Ogi' as source doesn't exist!
2017-08-12 19:50:31:
All entries were processed
2017-08-12 19:50:31:
Script execution completed
What could be wrong?
Thank you.
---------- Post added at 06:58 PM ---------- Previous post was at 06:57 PM ----------
ogisha said:
Hi @TechnoSparks!
I have the following problem:
I had set folder list line like this:
folderbind ogi "$sd/Ogi" "$int/Ogi"
and after reboot my log file looks like this:
Log initialised at: Sat Aug 12 19:50:30 CEST 2017
2017-08-12 19:50:30:
Difference found between cached and original user list
2017-08-12 19:50:30:
Updated cached list
2017-08-12 19:50:30:
sdcard 7788-9789 mounted
2017-08-12 19:50:30:
Binding all entries
2017-08-12 19:50:31:
Bind aborted: Folder '/mnt/media_rw/7788-9789/Ogi' as source doesn't exist!
2017-08-12 19:50:31:
All entries were processed
2017-08-12 19:50:31:
Script execution completed
What could be wrong?
Thank you.
Click to expand...
Click to collapse
BTW, both folders exist.
ogisha said:
Hi @TechnoSparks!
I have the following problem:
I had set folder list line like this:
folderbind ogi "$sd/Ogi" "$int/Ogi"
and after reboot my log file looks like this:
Log initialised at: Sat Aug 12 19:50:30 CEST 2017
2017-08-12 19:50:30:
Difference found between cached and original user list
2017-08-12 19:50:30:
Updated cached list
2017-08-12 19:50:30:
sdcard 7788-9789 mounted
2017-08-12 19:50:30:
Binding all entries
2017-08-12 19:50:31:
Bind aborted: Folder '/mnt/media_rw/7788-9789/Ogi' as source doesn't exist!
2017-08-12 19:50:31:
All entries were processed
2017-08-12 19:50:31:
Script execution completed
What could be wrong?
Thank you.
---------- Post added at 06:58 PM ---------- Previous post was at 06:57 PM ----------
BTW, both folders exist.
Click to expand...
Click to collapse
Hello
This seems to be a very odd issue, but it could be that ts-binds cannot access the folder via the hardcoded address of "/mnt/media_rw/". this is a perfect opportunity for me to troubleshoot this. Thank you for the report.
It would be great if you could run these commands (without the hashtags) on your terminal emulator and report back with the output (whether text or screenshots, your choice):
Code:
# if [ -d "/storage/7788-9789/Ogi" ]; then echo Exists; else echo Nope; fi
# ls -a1 /mnt
it would also be a great addition if you could copy the file "/proc/mounts" and attach it here.
And may I know what device are you using and the respective ROM version?
TechnoSparks said:
Hello
This seems to be a very odd issue, but it could be that ts-binds cannot access the folder via the hardcoded address of "/mnt/media_rw/". this is a perfect opportunity for me to troubleshoot this. Thank you for the report.
It would be great if you could run these commands (without the hashtags) on your terminal emulator and report back with the output (whether text or screenshots, your choice):
it would also be a great addition if you could copy the file "/proc/mounts" and attach it here.
And may I know what device are you using and the respective ROM version?
Click to expand...
Click to collapse
Commands' output:
HWEVA:/ $ su
HWEVA:/ # if [ -d "/storage/7788-9789/Ogi" ]; then echo Exisge/7788-9789/Ogi" ]; then echo Exists; else echo Nope ; fi <
Nope
HWEVA:/ # ls -a1 /mnt
.
..
appfuse
asec
expand
ext_sdcard
media_rw
obb
runtime
sdcard
secure
user
HWEVA:/ #
mounts file attached:
https://mega.nz/#!VF8wHIAb!hVPzmAVoBEWhLUehostkfb7kXOAELVA4iSsqMiooY3E
Device's information:
BOARD
EVA-L09
BOOTLOADER
unknown
BRAND
HUAWEI
CPU_ABI
arm64-v8a
DEVICE
HWEVA
DISPLAY
EVA-L09C432B386
FINGERPRINT
HUAWEI/EVA-L09/HWEVA:7.0/HUAWEIEVA-L09/C432B386:user/release-keys
HARDWARE
hi3650
HOST
wuhjk0154cna
ID
HUAWEIEVA-L09
MANUFACTURER
HUAWEI
MODEL
EVA-L09
PRODUCT
EVA-L09
SERIAL
MWS7N17104001072
TAGS
release-keys
TYPE
user
UNKNOWN
unknown
USER
test
CODENAME
REL
INCREMENTAL
C432B386
RELEASE
7.0
SDK_INT
24
RADIO
21.258.05.00.030
Root Access:
Access Granted
SU:
su found
UID/GID:
uid=0(root)
gid=0(root)
groups=0(root)
context=u:r:su:s0
Utils:
busybox
toybox
toolbox
Path:
/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin:/system/vendor/bin:/vendor/xbin:/system/vendor/xbin:/product/bin:/product/xbin
Path:
/sbin/
Version:
13.3:MAGISKSU (topjohnwu)
Permissions:
rwxrwxrwx
Owner:
root:root
SELinux:
Enforcing
Path:
[/system/xbin/]
Permissions:
r-xr-xr-x
Owner:
root:shell
Thank you!
ogisha said:
Commands' output:
HWEVA:/ $ su
HWEVA:/ # if [ -d "/storage/7788-9789/Ogi" ]; then echo Exisge/7788-9789/Ogi" ]; then echo Exists; else echo Nope ; fi <
Nope
HWEVA:/ # ls -a1 /mnt
.
..
appfuse
asec
expand
ext_sdcard
media_rw
obb
runtime
sdcard
secure
user
HWEVA:/ #
mounts file attached:
https://mega.nz/#!VF8wHIAb!hVPzmAVoBEWhLUehostkfb7kXOAELVA4iSsqMiooY3E
Device's information:
BOARD
EVA-L09
BOOTLOADER
unknown
BRAND
HUAWEI
CPU_ABI
arm64-v8a
DEVICE
HWEVA
DISPLAY
EVA-L09C432B386
FINGERPRINT
HUAWEI/EVA-L09/HWEVA:7.0/HUAWEIEVA-L09/C432B386:user/release-keys
HARDWARE
hi3650
HOST
wuhjk0154cna
ID
HUAWEIEVA-L09
MANUFACTURER
HUAWEI
MODEL
EVA-L09
PRODUCT
EVA-L09
SERIAL
MWS7N17104001072
TAGS
release-keys
TYPE
user
UNKNOWN
unknown
USER
test
CODENAME
REL
INCREMENTAL
C432B386
RELEASE
7.0
SDK_INT
24
RADIO
21.258.05.00.030
Root Access:
Access Granted
SU:
su found
UID/GID:
uid=0(root)
gid=0(root)
groups=0(root)
context=u:r:su:s0
Utils:
busybox
toybox
toolbox
Path:
/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin:/system/vendor/bin:/vendor/xbin:/system/vendor/xbin:/product/bin:/product/xbin
Path:
/sbin/
Version:
13.3:MAGISKSU (topjohnwu)
Permissions:
rwxrwxrwx
Owner:
root:root
SELinux:
Enforcing
Path:
[/system/xbin/]
Permissions:
r-xr-xr-x
Owner:
root:shell
Thank you!
Click to expand...
Click to collapse
EDIT: never mind, when i return from work today i will create an exclusive simple troubleshooting script for you! This is to ease the troubleshooting.
----
I have to say something weird is happening. The terminal should say the directory exists on the location i mentioned.
From the way you present your things, it seemed that you know what you are doing and is good with terminal. Could you report if you can "ls Ogi" when you changed the working directory to "/mnt/media_rw/7788-9789", "/storage/7788-9789" and "/mnt/ext_sdcard"?
Out of curiosity, I have seen issues in regards to sdcardfs with Magic Folder Binder module, and is wondering if your issue also has to do with it. Please run "grep sdcardfs /system/build.prop" and return me the output. Just some extra for fun note: My module isn't really ready to handle issues with sdcardfs and i may need to implement Magic Folder Binder's methods (persist off for build prop entry)
Also make sure the Ogi folder still exists tho lel ?
Sorry for having the commands not enclosed in the code tags. I am replying to this on the go
TechnoSparks said:
EDIT: never mind, when i return from work today i will create an exclusive simple troubleshooting script for you! This is to ease the troubleshooting.
Click to expand...
Click to collapse
Thanks. ?
--
I have to say something weird is happening. The terminal should say the directory exists on the location i mentioned. From the way you present your things, it seemed that you know what you are doing and is good with terminal. Could you report if you can "ls Ogi" when you changed the working directory to "/mnt/media_rw/7788-9789", "/storage/7788-9789" and "/mnt/ext_sdcard"?
--
Here comes the output:
HWEVA:/ $ su
HWEVA:/ # cd /mnt/media_rw/7788-9789
sh: cd: /mnt/media_rw/7788-9789: No such file or directory
2|HWEVA:/ # cd /storage/7788-9789
sh: cd: /storage/7788-9789: No such file or directory
2|HWEVA:/ # cd /mnt/ext_sdcard
HWEVA:/mnt/ext_sdcard # ls Ogi
HWEVA:/mnt/ext_sdcard #
BTW, both Ogi folders are empty.
--
Out of curiosity, I have seen issues in regards to sdcardfs with Magic Folder Binder module, and is wondering if your issue also has to do with it.
--
Magic Folder Binder did not work for me.
The developer was not interested in investigating the problem. ?
--
Please run "grep sdcardfs /system/build.prop" and return me the output. Just some extra for fun note: My module isn't really ready to handle issues with sdcardfs and i may need to implement Magic Folder Binder's methods (persist off for build prop entry)
--
Here comes the output:
HWEVA:/ $ su
HWEVA:/ # grep sdcardfs /system/build.prop
1|HWEVA:/ #
--
Also make sure the Ogi folder still exists tho lel ?
--
Yeah, both do and both are empty. ?
--
Sorry for having the commands not enclosed in the code tags. I am replying to this on the go
--
No problem at all. ?
Thank you. ?
ogisha said:
Thanks.
--
I have to say something weird is happening. The terminal should say the directory exists on the location i mentioned. From the way you present your things, it seemed that you know what you are doing and is good with terminal. Could you report if you can "ls Ogi" when you changed the working directory to "/mnt/media_rw/7788-9789", "/storage/7788-9789" and "/mnt/ext_sdcard"?
--
Here comes the output:
HWEVA:/ $ su
HWEVA:/ # cd /mnt/media_rw/7788-9789
sh: cd: /mnt/media_rw/7788-9789: No such file or directory
2|HWEVA:/ # cd /storage/7788-9789
sh: cd: /storage/7788-9789: No such file or directory
2|HWEVA:/ # cd /mnt/ext_sdcard
HWEVA:/mnt/ext_sdcard # ls Ogi
HWEVA:/mnt/ext_sdcard #
BTW, both Ogi folders are empty.
--
Out of curiosity, I have seen issues in regards to sdcardfs with Magic Folder Binder module, and is wondering if your issue also has to do with it.
--
Magic Folder Binder did not work for me.
The developer was not interested in investigating the problem.
--
Please run "grep sdcardfs /system/build.prop" and return me the output. Just some extra for fun note: My module isn't really ready to handle issues with sdcardfs and i may need to implement Magic Folder Binder's methods (persist off for build prop entry)
--
Here comes the output:
HWEVA:/ $ su
HWEVA:/ # grep sdcardfs /system/build.prop
1|HWEVA:/ #
--
Also make sure the Ogi folder still exists tho lel
--
Yeah, both do and both are empty.
--
Sorry for having the commands not enclosed in the code tags. I am replying to this on the go
--
No problem at all.
Thank you.
Click to expand...
Click to collapse
Thank you for the output. It seemed that I may have found the issue. My script unreliably pulled the wrong sdcard serial ID when the "grep"ing was run. In your mounts the line:
Code:
/dev/block/bootdevice/by-name/system /dev/magisk/dummy/system/bin/79b77788-9789-4a7a-a2be-b60155eef5f4.sec ext4 ro,seclabel,relatime,data=ordered 0 0
came first before the sdcard mounting line:
Code:
/dev/block/vold/public:179:193 /mnt/media_rw/7EB2-43FD vfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro 0 0
The first line contains sequences of which matches my regular expression here:
Code:
sdname=$(grep -m 1 -Eo "[0-9A-F]{4}-[0-9A-F]{4}" /proc/mounts)
Possible fix: Reliably get the whole "media_rw" line before extracting SD card's serial
Please test the following pre-release: https://drive.google.com/file/d/0ByQKilNkFEpAaW02RGJoRUZGcUU/view?usp=sharing
TechnoSparks said:
Thank you for the output. It seemed that I may have found the issue. My script unreliably pulled the wrong sdcard serial ID when the "grep"ing was run. In your mounts the line:
came first before the sdcard mounting line:
The first line contains sequences of which matches my regular expression here:
Possible fix: Reliably get the whole "media_rw" line before extracting SD card's serial
Please test the following pre-release: https://drive.google.com/file/d/0ByQKilNkFEpAaW02RGJoRUZGcUU/view?usp=sharing
Click to expand...
Click to collapse
Thank you. I have tested it. Log file now looks like this:
-----
Log initialised at: Tue Aug 15 19:30:54 CEST 2017
2017-08-15 19:30:55:
Cached the user list
-----
Anything I copy to internal Ogi folder does not show up in external Ogi folder. ?
Thank you again. ??
ogisha said:
Thank you. I have tested it. Log file now looks like this:
-----
Log initialised at: Tue Aug 15 19:30:54 CEST 2017
2017-08-15 19:30:55:
Cached the user list
-----
Anything I copy to internal Ogi folder does not show up in external Ogi folder.
Thank you again.
Click to expand...
Click to collapse
Thank you for the report again and apologies for the new issue. I have able to pinpoint the issue and it seems to be a grammar error for bash.
I have corrected the issue and this is another test package for you to test: https://drive.google.com/open?id=0ByQKilNkFEpAaW02RGJoRUZGcUU
The reason why the content didn't show up was because no binding process were made. As you can see in the log, there is no "Binding all entries". Hopefully this one will finally squash the issue!
As you may notice, the "beta" also contains some changes, mainly just some cleanup and a new description.
TechnoSparks said:
Thank you for the report again and apologies for the new issue. I have able to pinpoint the issue and it seems to be a grammar error for bash.
I have corrected the issue and this is another test package for you to test: https://drive.google.com/open?id=0ByQKilNkFEpAaW02RGJoRUZGcUU
The reason why the content didn't show up was because no binding process were made. As you can see in the log, there is no "Binding all entries". Hopefully this one will finally squash the issue!
As you may notice, the "beta" also contains some changes, mainly just some cleanup and a new description.
Click to expand...
Click to collapse
Everything went fine according to log file.
Now Ogi folder on internal sdcard has disappeared and file 0 bytes long named Ogi appeared.
Folder Ogi on external sdcard stayed untouched.
Thanks again. ?
ogisha said:
Everything went fine according to log file.
Now Ogi folder on internal sdcard has disappeared and file 0 bytes long named Ogi appeared.
Folder Ogi on external sdcard stayed untouched.
Thanks again.
Click to expand...
Click to collapse
This is abnormal. For the first patch, I could blame myself for not testing it myself before publishing it to you. The reason was because i did a simple test on the terminal on nested command substitution ( $() ) and it worked, so I called it a job done. However I didn't expect it to not work if the nested command substitution is placed as a conditional, hence the past issue. The second revision fixed this by well, not using nested command substitution. The second version is personally tested and my folders are now binded correctly and working as expected like 1.0.4
Also, please tell me what file manager are you using.
I think this must have to do with the ROM or the kernel, since the modifications that I did to try to fix your previous issues was just related to how SD card serial ID is pulled. Let's check if the system recognises the folder via terminal.
Code:
cd /storage/emulated/0
ls -al | grep Ogi
check if the output is similar to this:
Code:
drwxrwx--x 1 root sdcard_rw 131072 2017-08-17 04:25 Ogi
Emphasis on the "drwxr-xr-x". If yours is similar, then continue below. Otherwise please report that it didnt.
Great! It seems that most probably it has something to do with the ROM, but not with the kernel. Next, I'd like for you to "cd" into it, then create a text file by running this simple line:
Code:
echo date > text.txt
Now, check if the text file exists on SD Card folder, by using a file manager.
TechnoSparks said:
This is abnormal. For the first patch, I could blame myself for not testing it myself before publishing it to you. The reason was because i did a simple test on the terminal on nested command substitution ( $() ) and it worked, so I called it a job done. However I didn't expect it to not work if the nested command substitution is placed as a conditional, hence the past issue. The second revision fixed this by well, not using nested command substitution. The second version is personally tested and my folders are now binded correctly and working as expected like 1.0.4
Also, please tell me what file manager are you using.
I think this must have to do with the ROM or the kernel, since the modifications that I did to try to fix your previous issues was just related to how SD card serial ID is pulled. Let's check if the system recognises the folder via terminal.
check if the output is similar to this:
Emphasis on the "drwxr-xr-x". If yours is similar, then continue below. Otherwise please report that it didnt.
Click to expand...
Click to collapse
I am using MiXplorer file manager. I had tried Total Commander, but results are the same.
Here is the output:
HWEVA:/ $ cd /storage/emulated/0
HWEVA:/storage/emulated/0 $ ls -al | grep Ogi
ls: ./Ogi: Cross-device link
1|HWEVA:/storage/emulated/0 $
Obviously, there is no text file. ?
BTW, when I delete Ogi file on internal sdcard, put folderbind line in folder list under comment and reboot, Ogi folder on internal sdcard reappears.
Great! It seems that most probably it has something to do with the ROM, but not with the kernel. Next, I'd like for you to "cd" into it, then create a text file by running this simple line:
Now, check if the text file exists on SD Card folder, by using a file manager.
Click to expand...
Click to collapse
Output:
1|HWEVA:/storage/emulated/0 $ cd Ogi
/system/bin/sh: cd: /storage/emulated/0/Ogi: Cross-device link
2|HWEVA:/storage/emulated/0 $ cd ./Ogi
/system/bin/sh: cd: /storage/emulated/0/Ogi: Cross-device link
2|HWEVA:/storage/emulated/0 $
Thank you for your patience.
ogisha said:
I am using MiXplorer file manager. I had tried Total Commander, but results are the same.
Here is the output:
HWEVA:/ $ cd /storage/emulated/0
HWEVA:/storage/emulated/0 $ ls -al | grep Ogi
ls: ./Ogi: Cross-device link
1|HWEVA:/storage/emulated/0 $
Obviously, there is no text file.
BTW, when I delete Ogi file on internal sdcard, put folderbind line in folder list under comment and reboot, Ogi folder on internal sdcard reappears.
Output:
1|HWEVA:/storage/emulated/0 $ cd Ogi
/system/bin/sh: cd: /storage/emulated/0/Ogi: Cross-device link
2|HWEVA:/storage/emulated/0 $ cd ./Ogi
/system/bin/sh: cd: /storage/emulated/0/Ogi: Cross-device link
2|HWEVA:/storage/emulated/0 $
Thank you for your patience.
Click to expand...
Click to collapse
Sorry for the length of time i took to reply. I have been busy
Hmm.. This is not a bug, but rather an incompatibility. Huge chances that your kernel may contain modifications different from the norm. But let's see if I can workaround from the current method, since the terminal says it's a cross-device link. For this, I need a single file /proc/mounts to be inspected. Can you hand me that file, please?
I am also assuming that your kernel does support binding folders (default and expected behaviour across linux kernels).
TechnoSparks said:
Sorry for the length of time i took to reply. I have been busy
Hmm.. This is not a bug, but rather an incompatibility. Huge chances that your kernel may contain modifications different from the norm. But let's see if I can workaround from the current method, since the terminal says it's a cross-device link. For this, I need a single file /proc/mounts to be inspected. Can you hand me that file, please?
I am also assuming that your kernel does support binding folders (default and expected behaviour across linux kernels).
Click to expand...
Click to collapse
Please see what you can do.
Mounts attached.
Thank you.
ogisha said:
Please see what you can do.
Mounts attached.
Thank you.
Click to expand...
Click to collapse
After a closer look, it seems that your device really does have sdcardfs turned on!
Let's use a simple buildprop entry to turn it off, hopefully it will work (although i know this seems so simple). You may use this new beta: https://drive.google.com/open?id=0ByQKilNkFEpAcmVxbkhsaUhSRHM
TechnoSparks said:
After a closer look, it seems that your device really does have sdcardfs turned on!
Let's use a simple buildprop entry to turn it off, hopefully it will work (although i know this seems so simple). You may use this new beta: https://drive.google.com/open?id=0ByQKilNkFEpAcmVxbkhsaUhSRHM
Click to expand...
Click to collapse
It still the same like previous.
Thank you.
ogisha said:
It still the same like previous.
Thank you.
Click to expand...
Click to collapse
Please try again with a newer version: https://drive.google.com/uc?id=0ByQKilNkFEpAcmVxbkhsaUhSRHM&export=download
TechnoSparks said:
Please try again with a newer version: https://drive.google.com/uc?id=0ByQKilNkFEpAcmVxbkhsaUhSRHM&export=download
Click to expand...
Click to collapse
Still not working. :crying:
Hello, since updating my rooted Pixel 5 to the November Image (via fastboot, flash-all.bat without -w switch) several folders in my internal storage are shown twice. The mentioned folders are in fact identical, if I create a file in one of them it also shows up in the other. After deleting a duplicated directory its twin is also gone but when I recreate it the twin gets resurrected as well.
Please see the following example (excerpt from ls -l in /data/media/0, called in an adb root shell):
Code:
drwx------ 2 u0_a250 u0_a250 3452 2020-11-08 14:31 Download
drwx------ 2 u0_a250 u0_a250 3452 2020-11-08 14:31 Download
After deleting the Download directory it looks like this:
Code:
d????????? ? ? ? ? ? Download
Any ideas how to solve this (without wiping)?
Thanks in advance.
Still nobody?
Upstream Repository
Official Kernel Documentation (zRAM)
Swap Performance (ArchWIki)
This project targets mainly gamers, heavy multitaskers and those with low RAM systems.
VR25 said:
Upstream Repository
Official Kernel Documentation (zRAM)
Swap Performance (ArchWIki)
This project targets mainly gamers, heavy multitaskers and those with low RAM systems.
Click to expand...
Click to collapse
i dont understand what memory limit does
VR25 said:
Upstream Repository
Official Kernel Documentation (zRAM)
Swap Performance (ArchWIki)
This project targets mainly gamers, heavy multitaskers and those with low RAM systems.
Click to expand...
Click to collapse
and how do i change setting , i typed zsm but i dont understand
Guan Yu said:
i dont understand what memory limit does
Click to expand...
Click to collapse
Memory limit caps the amount of memory zRAM can use. This is not something users must deeply understand to use this software. There's a config file: /data/adb/vr25/zram-swap-manager/config.txt (Android) or /etc/zram-swap-manager.conf (GNU/Linux). While the config can be edited with one of many programs, the usual way is with zsm -c [editor], editor being optional (falling back to vim | vi | nano).
sm -v
v2022.1.9 (202201090)
sm -e
Memory Estimates
Without zRAM: 2734 MB
With zRAM: 3727 MB
Net Gain: 993 MB (36%)
sm -f
sm -n
Loops into this.....
cat: can't open '/sys/block/zram0/comp_algorithm': No such file or directory
mkswap: /dev/block/zram0: No such file or directory
(i) Trying alternative: /system/bin/mkswap...
mkswap: can't open '/dev/block/zram0': No such file or directory
(i) Trying alternative: /system/xbin/mkswap...
mkswap: /dev/block/zram0: No such file or directory
(i) Trying alternative: /vendor/bin/mkswap...
mkswap: /dev/block/zram0: No such file or directory
(i) Trying alternative: /system/bin/mkswap...
mkswap: can't open '/dev/block/zram0': No such file or directory
sieger007 said:
sm -v
v2022.1.9 (202201090)
sm -e
Memory Estimates
Without zRAM: 2734 MB
With zRAM: 3727 MB
Net Gain: 993 MB (36%)
sm -f
sm -n
Loops into this.....
cat: can't open '/sys/block/zram0/comp_algorithm': No such file or directory
mkswap: /dev/block/zram0: No such file or directory
(i) Trying alternative: /system/bin/mkswap...
mkswap: can't open '/dev/block/zram0': No such file or directory
(i) Trying alternative: /system/xbin/mkswap...
mkswap: /dev/block/zram0: No such file or directory
(i) Trying alternative: /vendor/bin/mkswap...
mkswap: /dev/block/zram0: No such file or directory
(i) Trying alternative: /system/bin/mkswap...
mkswap: can't open '/dev/block/zram0': No such file or directory
Click to expand...
Click to collapse
What's the output of ls /dev/zram*?
Bash:
ls /dev/zram*
ls: /dev/zram*: No such file or directory
and here is the mod
Bash:
ls -al /data/adb/modules/zram-swap-manager
total 19
drwxr-xr-x 3 root root 3488 2022-03-28 06:04 .
drwxr-xr-x 14 root root 3488 2022-04-01 18:39 ..
-rwxr-xr-x 1 root root 767 2022-03-28 06:04 busybox.sh
-rw-r--r-- 1 root root 103 2022-03-28 06:04 module.prop
-rwxr-xr-x 1 root root 161 2022-03-28 06:04 service.sh
drwxr-xr-x 3 root root 3488 2022-03-28 06:04 system
-rwxrwxrwx 1 root root 697 2022-03-28 06:04 uninstall.sh
-rwxrwxrwx 1 root root 5803 2022-03-28 06:04 zram-swap-manager.sh
Also while you are at it - if its ok with you wanted to ask you about fbind - is there anyway you figured out to modify selinux policy so it can run successfully on enforced mobs. I asked that in relevant thread. wondered if it updated. thx!
sieger007 said:
Bash:
ls /dev/zram*
ls: /dev/zram*: No such file or directory
and here is the mod
Bash:
ls -al /data/adb/modules/zram-swap-manager
total 19
drwxr-xr-x 3 root root 3488 2022-03-28 06:04 .
drwxr-xr-x 14 root root 3488 2022-04-01 18:39 ..
-rwxr-xr-x 1 root root 767 2022-03-28 06:04 busybox.sh
-rw-r--r-- 1 root root 103 2022-03-28 06:04 module.prop
-rwxr-xr-x 1 root root 161 2022-03-28 06:04 service.sh
drwxr-xr-x 3 root root 3488 2022-03-28 06:04 system
-rwxrwxrwx 1 root root 697 2022-03-28 06:04 uninstall.sh
-rwxrwxrwx 1 root root 5803 2022-03-28 06:04 zram-swap-manager.sh
Click to expand...
Click to collapse
It almost seems like your kernel lacks [proper] zRAM support.
Share /dev/.vr25/zram-swap-manager/service.log (recreated on reboot).
Also while you are at it - if its ok with you wanted to ask you about fbind - is there anyway you figured out to modify selinux policy so it can run successfully on enforced mobs. I asked that in relevant thread. wondered if it updated. thx!
Answered in the dedicated thread.
VR25 said:
It almost seems like your kernel lacks [proper] zRAM support.
Share /dev/.vr25/zram-swap-manager/service.log (recreated on reboot).
Also while you are at it - if its ok with you wanted to ask you about fbind - is there anyway you figured out to modify selinux policy so it can run successfully on enforced mobs. I asked that in relevant thread. wondered if it updated. thx!
Answered in the dedicated thread.
Click to expand...
Click to collapse
@sieger007, your kernel does not seem to support zRAM.
Which device is this?
Does /sys/class/zram-control/ exist?
Hi, can you please release a guide for how to do this? My goal is to keep (certain) apps running in the background. If I can't choose specific apps, I'd like to keep ALL apps running in the background unless I actively close them. It's pretty ridiculous not being able to use more than 1-2 apps at a time. I run adguard, accubattery, JamesDSP constantly. I also listen to music sometimes while also browsing or playing a light game. Browsing even requires the keyboard open sometimes to type. And don't even think about summoning the Google assistant or any voice typing because instead of opening as an overlay, it closes the background app and switches to GA as an active foreground app.
I'm using a Pixel 3 with PixelDust12 and sure, it only has 4 gigs of ram. But even stock behavior isn't this bad. And I have the highest amount of zram I can set through EX kernel manager. (yes my kernel supports it. I have the directory mentioned above with two files inside it)
But the more I mess with zram settings the worse it seems to get. At one point yesterday it got so bad I wasn't able to use even 1 foreground app without it crashing on me. Sometimes even pulling up multi-tasking is enough to make it all crash. I even switched to Pure browser because it has far lower foreground ram usage than Brave (more than half) and it was still not enough. I'm now in Via browser and it seems to be ok. But without anything running in the background. Even system keeps crashing on me. Dev ops shows 0 background processes and around 10% average ram usage. It's crazy. EX shows that zram keeps getting disabled.
Hasn't been updated in a year... Does this still work ?
I have a rooted Pixel 7 and It was suggested that I rename a system file to prevent the system from updating itself (despite my having turned off all such options). My first attempt was to merely try renaming the file, but that didn’t work because the file systems in mounted RO.
I did some looking around, and the common approach to dealing with this issue is to remount the file system. Following is a ‘screen grab’ of my abd session:
Code:
cheetah:/ $ su
cheetah:/ $ ls /product
app etc fonts framework lib lib64 lost+found media overlay priv-app tts usr wallpaper
(this has the directory I want, so this file system)
cheetah:/ $ mount | grep product
/dev/block/dm-15 on /product type ext4 (ro,seclabel,relatime)
(this is a mounted file system)
cheetah:/ # mount -o rw,remount /product
'/dev/block/dm-15' is read-only
cheetah:/ # mount -o rw,remount -t ext4 /product
'/dev/block/dm-15' is read-only
cheetah:/ # mount -o rw,remount /dev/block/dm-15 /product
'/dev/block/dm-15' is read-only
(three attempts to remount – all failed)
So, now what should I try?
groston said:
I have a rooted Pixel 7 and It was suggested that I rename a system file to prevent the system from updating itself (despite my having turned off all such options). My first attempt was to merely try renaming the file, but that didn’t work because the file systems in mounted RO.
I did some looking around, and the common approach to dealing with this issue is to remount the file system. Following is a ‘screen grab’ of my abd session:
Code:
cheetah:/ $ su
cheetah:/ $ ls /product
app etc fonts framework lib lib64 lost+found media overlay priv-app tts usr wallpaper
(this has the directory I want, so this file system)
cheetah:/ $ mount | grep product
/dev/block/dm-15 on /product type ext4 (ro,seclabel,relatime)
(this is a mounted file system)
cheetah:/ # mount -o rw,remount /product
'/dev/block/dm-15' is read-only
cheetah:/ # mount -o rw,remount -t ext4 /product
'/dev/block/dm-15' is read-only
cheetah:/ # mount -o rw,remount /dev/block/dm-15 /product
'/dev/block/dm-15' is read-only
(three attempts to remount – all failed)
So, now what should I try?
Click to expand...
Click to collapse
I haven't used this, but maybe it can help you.
Lughnasadh said:
I haven't used this, but maybe it can help you.
Click to expand...
Click to collapse
Thank you. Seems like this might work, but after reading several pages, I am not sure how to install/use overlayfs. I have a Windows system - any chance you could point me to something that provides some guidance?
groston said:
Thank you. Seems like this might work, but after reading several pages, I am not sure how to install/use overlayfs. I have a Windows system - any chance you could point me to something that provides some guidance?
Click to expand...
Click to collapse
I've never used this before but I believe once you flash the module it makes the /system RW so you can start making modifications. There's a README that provides some information. I don't know of any other guides besides the information on that Github page.
Checking out the thread below might reveal a solution and/or give a clue or hint...
Pixel 7 Pro Stuck in read only mode (rooted with magisk 26.1) Am I missing something? HELP
Everything ive tried in FX Explorer fails. No matter what I try, for example editing build.prop or anything else, it constantly says read only. i cannot use any method to allow write access. Did i miss something when i rooted with Magisk? I dont...
forum.xda-developers.com
simplepinoi177 said:
Checking out the thread below might reveal a solution and/or give a clue or hint...
Pixel 7 Pro Stuck in read only mode (rooted with magisk 26.1) Am I missing something? HELP
Everything ive tried in FX Explorer fails. No matter what I try, for example editing build.prop or anything else, it constantly says read only. i cannot use any method to allow write access. Did i miss something when i rooted with Magisk? I dont...
forum.xda-developers.com
Click to expand...
Click to collapse
Good suggestion. I installed FX File Explorer, gave it the appropriate permissions, but was unable to change the /product filesystem to read/write.
groston said:
Good suggestion. I installed FX File Explorer, gave it the appropriate permissions, but was unable to change the /product filesystem to read/write.
Click to expand...
Click to collapse
When you say "gave it the appropriate permissions", just to confirm -- that doesn't mean that you changed the security permissions on the folder & files, correct? I hope it means you did not do what the OP in that thread had done and actually did enable root access particularly (hoping that's what you meant on "gave it appropriate permissions").
Because, in certain cases, I've changed permissions on files/folders vs. simply enabling root access mode....
Apologies in advanced if my inquiry seems fairly obvious (to the point of insulting maybe; it is not meant to be), but you never know and many foolish things has been done/assumed on this site that missed many (obvious) things because it wasn't confirmed....