110

All apps (root or not) have a default data directory, which is /data/data/<package_name>. By default, the apps databases, settings, and all other data go here. This directory is "private" to the app – which means no other app and not even the user can access data in it (without root permissions). If an app expects huge amounts of data to be ...


41

First, you need to be aware of two facts: Android uses more than one file system (think of "multiple drives/partitions" when comparing with your computer while sharing a common base, directory structures might differ between manufacturers So as starting points, I further recommend the file-system tag-wiki and the partition tag-wiki (you might ...


33

I usually use a combination of the following 4 commands and correlate them, since each of these commands gives a piece of the information that might be needed. Summarily: Using df lists the filesystem path alias and size info as seen below (total size, used, free and block size) Example output: root@ks01lte:/sdcard # df df Filesystem ...


30

There is no singularly defined "Android" filesystem, so this can vary between devices. Any FS that the kernel can load drivers for is basically fair game. By and large, you'll almost certainly find that ext4 is the most common filesystem on modern devices. Older devices may use older ext* versions as well, or other filesystems entirely. Since everything is ...


26

/data/user was added in Jelly Bean as part of multi-user support. Each user on the device gets a directory in there named after their user ID, and that directory contains each app's data directory for that user. /data/user/0 is a symlink to /data/data.


23

Some major changes occurred to storage in Android 4.4 (see Android's Storage Journey). So the following is generally true for Android 4.4+ and particularly 6+. This is from my detailed answer to How disk space is used on Android device?. Apps' files are saved (by system and app itself) to internal and external storage under different categories. DIRECTORY ...


20

This is a known issue. Go to app manager and find 'external storage' and 'media storage' and clear data and cache for them, then reboot, and wait up to 10 minutes and then connect to PC via USB. Sometimes media scan apps from play store help if you don't want to reboot.


18

The answer to your question is built into your phone's OS. 1. Put the SD card in your phone 2. Reformat the SD card with your phone(Settings --> Storage/Storage & USB) 3. The file system on the freshly formatted SD card is the type that will give you the best performance with your phone. 4. Outside the context of your phone the optimum file system is ...


15

The solution was to reboot the phone. The com.fsck.k9 directory is now visible on the top level of the phones file system.


14

The syntax of mount command usually requires you specify the target: mount -o remount,rw /system /system This output could be useful for us to better understand your problem: cat /proc/mounts As a last resort, as you have root you can try saving raw image of system, mount it on your box and push the app there, then flash it back on your device. To save ...


13

The sequence of commands that worked for me was adb root adb disable-verity adb reboot adb root adb remount If I don't reboot, remount does not succeed.


11

The Android system does not have the conventional /etc/passwd storage for users and groups. In android, user and groups are used to isolate processes and grant permissions. The Android system creates a user per application when an application gets installed. Hence application data files are stored in /data/data/<app-name>/, and are read-writable only ...


11

I'm going to give a general overview of how dm-verity and related things work on Android according to my limited knowledge. Situation might differ on different devices and ROMs. HOW IS DM-VERITY ENFORCED? dm-verity (Verified Boot and AVB) as well as dm-crypt (FDE) are targets of device-mapper feature of Linux kernel. dm-verity verifies the integrity of ...


10

Here's a helpful piece of info also. This is the absolute path to SMS and MMS DB on most android devices: /data/data/com.android.providers/telephony/databases/mmssms.db


10

It might not always be possible to transfer data between multiple users/profiles. It depends on the Device/Work Policy Controller app, installed by you or your IT admin. Android device can be managed in two ways: fully managed (which is setup at the time of first use or after factory reset on a company owned device) and work profiles (which can be added or ...


9

Looks like it moved to data/User_DE/0/com.android.providers.telephony/databases with Nougat. At least, this is where it can be found on my Nexus 6. Hope this helps.


9

Note that, as of Kitkat (Android 4.4, released Sept 2013), the default path changed from: /data/data/com.android.providers/telephony/databases/mmssms.db to /data/data/com.android.providers.telephony/databases/mmssms.db Update: As mentioned in the comments, the latter path already exists in JB.


9

The answer to your question you are asking is too big. I can, however, give you a basic answer which covers the basics. There are two kinds of apps: Root and non-root. Root apps can basically store/modify files wherever they want. Non-root apps can only store/modify files here: /sdcard/ and every folder what comes after.Mostly, the installed apps store ...


9

Even it does not fully answer the question, here's a guide to decrypt the external storage formatted as internal. You do need to be root on your phone, however. The gist is that we search for strings including the keyword expand and ending with .key within vold using: $ strings vold|grep -i expand --change-name=0:android_expand %s/expand_%s.key /mnt/expand/...


8

LOST.DIR is just a storage space (directory) for files that were recovered upon boot. You can safetly remove it with no problems. The sysytem keeps it just in case you want to get your recovered currupted files back. A quick google search yielded: LOST.DIR - what is it? As for preventing it from being created, just prevent the SD card from becoming ...


8

The filesystem support is device-specific, and in fact many devices using Android 2.3 support ext3 in the kernel (or ext4, which can also mount ext3 and ext2 filesystems). Usually the difference in filesystem support is due to different hardware. Older devices often used raw NAND flash chips and MTD drivers in Linux, which did not support conventional ...


8

I installed the Disk Info app and in the options, I enabled Expert mode and Unmounted partitions. It doesn't say "swap", but it shows clearly that it's the only other partition on the SD card and it's the right size, so /dev/block/mmcblk1p2 must be the one: Swapper 2 is configured to use /dev/block/mmcblk0p3 by default, so I'm glad I didn't go with the ...


8

fdisk -l works if you pass the whole disk device name explicitly (e.g., fdisk -l /dev/block/mmcblk1); what does not work is automatic discovery of block devices (apparently because Android places block device files under the /dev/block directory, but fdisk expects to see those files directly in /dev). Therefore one option is to collect the list of whole disk ...


8

DiskInfo displays this information (among other things) when you select a partition to view its details. Works with the internal partitions on my Nexus 5, but should also support external SD cards and the like:


8

In the settings of Google Play Music, if you have it set to cache on the external SD card, your cache location will be /external_sd/Android/data/com.google.android.music/files/music/. If you have it use the internal storage, the path will be /sdcard/Android/data/com.google.android.music/files/music. Note that these files are named [some-id].mp3, like 124....


8

For accessing your Android device via USB in "File Transfer" mode your computer uses the MTP protocol. This protocol allows to list and read/write the files from/to your device. What most people don't know is that the MTP protocol does not show the content of the file-system. Instead it uses the Android MediaStore Database (an SQLite database) ...


7

Try formatting your SDCard as either Ext4Fs or Ext3Fs. Using such a tool as Partition Magic or even Parted To quote from Wikipedia's entry on Ext4fs: Large file system The ext4 filesystem can support volumes with sizes up to 1 exbibyte (EiB) and files with sizes up to 16 tebibytes (TiB). Likewise, for the quote on Wikipedia's entry on Ext3fs ...


7

As su, do this : # mount -o remount,rw /system You will now be able to delete it. As said in comments, don't forget to # mount -o remount,ro /system or just reboot when you have finished. :)


7

WARNING: I have not tested this procedure. You would need to have fstrim in system/bin. This XDA post has a DropBox download link. start up adb and then switch users to root. $ adb shell from your os terminal. $ su to switch to the root user. To copy fstrim to your /system/bin path you first need to mount the system path as Read/Write from adb or some ...


7

I just tried and found that you need to modify a file: sys/class/power_supply/usb/device/charge its default content is '1' which means 'enable charging' you need to set it to '0' to 'disable charging' $ su $ echo 0 > /sys/class/power_supply/usb/device/charge I tested on Nexus 4 and it's working successfully.


Only top voted, non community-wiki answers of a minimum length are eligible