Users who want to gain full control over their device often wonder where exactly the root of the internal memory on Android is physically and logically located. Understanding the structure of the file system is necessary not only for advanced space cleaning, but also for transferring system files, installing modified firmware, or in-depth diagnostics of failures. Unlike Windows computers, where the drive is usually designated as C:, in the world of Google's mobile operating system, a Linux-based hierarchy is used.
Finding the true "root" is not as easy as it might seem at first glance, since modern versions of Android have implemented strict security restrictions. Standard file managers show only the user part of the storage, hiding system partitions from the eyes of the average user. Getting to the depths where kernel configurations and system libraries are stored requires specialized knowledge of mount paths and root permissions.
In this article, we will take a detailed look at storage architecture, explain the difference between physical memory and emulated storage, and provide specific commands for accessing hidden directories. You will learn why the path /sdcard is only a symbolic link and how to correctly work with the partition /datawithout turning your smartphone into a "brick".
Android file system architecture
The foundation of any Android system is a file system type ext4 or f2fs, which controls how data is written to the physical memory chip. The root directory, indicated by the symbol /, is the starting point for the entire hierarchy. However, access to it from the normal interface is blocked by the SELinux security policy, which isolates application processes from each other.
When you connect the phone to a computer via USB in file transfer mode (MTP), you do not see the entire disk, but only an emulated part of it. This part is a virtual layer that broadcasts the contents of a particular folder in the internal storage to the outside world. Physically, the data is scattered across several logical sections, such as system, vendor, boot and userdata.
It is important to understand that the term “internal memory” in the everyday sense usually refers to the user data section. But from the point of view of system administration, the root is the point at which all these partitions are mounted into a single structure. Without obtaining root access (superuser rights), you are limited only to the sandbox of your application and public media folders.
⚠️ Attention: Directly editing files in system partitions (
/system,/vendor) without a backup copy may lead to cyclic reboot of the device (bootloop). Always make a full backup via Custom Recovery before intervention.
Custom storage and SD card emulation
For most users, the “root” of the internal memory is a folder accessible through a standard explorer. In Linux terms, this path looks like /storage/emulated/0. The number "0" at the end indicates the first user on the device. If you were to create a second user or guest mode, there would be a folder for it /storage/emulated/10 and so on.
There are many symbolic links leading to the same location. For example, path /sdcard or /mnt/sdcard are often used in scripts and older applications for compatibility. In fact, these are not separate folders, but “shortcuts” pointing to the same one /storage/emulated/0. This is where your photos, downloads and messenger cache are stored.
To verify this yourself, you can use a terminal emulator directly on your smartphone. By entering the command ls -l /sdcard, you will see that this is a link (symlink) leading into the depths of the file system. This confirms that all user activity is isolated in one logical container emulating the operation of an external memory card.
- 📂 Path
/storage/emulated/0is the actual physical location of user files. - 🔗 Path
/sdcardis a symbolic link for backward compatibility with the old Software. - 👤 Path
/storage/emulated/10— storage for the second user or guest mode.
Access to the system root via root access
If your goal is to modify the system, remove pre-installed software (bloatware) or fine-tune the kernel, you need to get to the true root /. This requires an unlocked bootloader and an installed superuser rights manager, for example Magisk or SU. Without these tools, any attempts to write data to system partitions will be rejected by the kernel.
After gaining root access, you can use advanced file managers such as Root Explorer or Mixplorer. In them it is necessary to activate the special switch "Mount R/W" (mount as read/write). By default, the system partition is mounted read-only (Read-Only) to protect the integrity of the OS from accidental changes.
Navigation in the root directory provides access to critical folders. The directory /system contains the operating system itself, /data stores application installations and their private data, and /dev provides access to hardware drivers. An error in one letter of the file name here can cost the functionality of the phone.
☑️ Preparing to work with Root access
Particular attention should be paid to the folder /data/data. Here are the databases and settings of each installed application. Access to them is blocked even for the root user in some newer versions of Android due to the introduction of file-level encryption (FBE). To read this data, you may need to temporarily disable encryption or use special scripts in the recovery environment.
Using ADB to analyze the memory structure
For those who prefer to work from a computer, Android Debug Bridge (ADB)is an indispensable tool. This tool allows you to send commands directly to the smartphone shell, bypassing the graphical interface. After connecting a device via USB with USB debugging, you can run the command adb shellto get into the device console.
Inside the ADB shell, you can use the command df -h (disk free) to see the table of mounted partitions. It will show how much space is occupied in each logical volume: system, cache, data and internal emulation. This is the most reliable way to understand what exactly the memory of your gadget is filled with.
adb shell df -h
Also useful is the command ls -la /, which will display a list of all folders in the root with detailed access rights. You will see which directories belong to the user rootand which belong to the group system or media_rw. This helps diagnose permissions issues when an application is unable to save a file.
| ADB Command | Action Description | root access required |
|---|---|---|
adb shell pm list packages |
List all installed packages | No |
adb shell dumpsys meminfo |
Detailed statistics on RAM usage | No |
adb shell rm /system/app/Bloatware.apk |
Uninstalling a system application | Yes |
adb backup -apk -all |
Creating a backup copy of all data | No (depends on settings) |
Why does ADB not see some files?
If you connect via ADB without root access, the adb daemon runs with limited shell user privileges. It cannot read files in other applications' /data/data directories for sandbox security reasons. For full access, you need to run the "adb root" command (works only on engineering builds) or use adb in conjunction with a sub-binary inside the shell.
Differences between internal memory and partitions
There is often confusion between the concepts of “internal storage” and system partitions. In the phone settings, the amount of internal memory is usually indicated as available space for photos and applications. Technically this is a section userdata. However, Android itself takes up space in partitions system and vendorthat are not included in this user limit.
Modern devices use technology Dynamic Partitions (dynamic partitions). It allows you to flexibly redistribute space between system groups. For example, if a system update requires more space, it can temporarily “bite off” gigabytes from the data partition, if so provided by the architecture Super Partition.
Understanding this difference is critical when flashing custom recovery firmware. You can't just write the image to "memory", you need to know the exact name of the block device, for example /dev/block/by-name/recovery. An error in selecting the target partition will lead to overwriting the boot sector or user data.
⚠️ Attention: Manufacturer interfaces (MIUI, OneUI, ColorOS) may display the amount of memory differently. What the system calls "Internal Storage" may exclude reserved areas for recovery and hibernation.
Access issues and file rights
Starting with Android 11 and especially Android 12-14, Google has tightened its policy Scoped Storage (limited storage). Applications can no longer freely scan the entire root of internal memory. They only have access to their own folders and shared media directories (DCIM, Downloads, Pictures).
This change was made to protect privacy, but it made the work of file managers and cleaning utilities more difficult. Even with root access, access to some system paths through standard APIs may be blocked. The solution is to use the special SAF (Storage Access Framework) protocol or directly access the file system through native code.
If you encounter a "Permission Denied" error when trying to copy a file to the root, check the SELinux security context. Sometimes you need to temporarily put it into mode Permissive using commands in the terminal, although this reduces the overall level of protection of the device from malware.
Use the Termux application to emulate a full Linux environment on Android. With it, you can use the grep, find and chmod commands to search and change file rights directly on the device without connecting to a PC.
Restoring access to hidden folders
There are situations when the necessary files end up in hidden directories starting with a dot (for example, .android or .thumbnails). Standard galleries ignore them. To see them, you need to enable the "Show hidden files" option in the Explorer settings. However, some system folders are hidden at a deeper level.
To access such data, you often need to use a computer and a app Total Commander with the ADB plugin, or specialized software like Android Studio Device File Explorer. These tools allow you to view the tree structure that the mobile interface hides.
Always check the contents of a folder before emptying it.
The true root of the file system (/) is only accessible if you have root access. For the average user, the root of the internal memory is the emulated directory /storage/emulated/0.
Is it possible to change the path of the root folder on Android?
Physically changing the location of the root directory / is impossible, since this is the foundation of the Linux architecture. However, you can remount partitions or use functions like bind mountto make the contents of one folder available in another path. This requires deep knowledge of the command line.
Why has the Android/data folder become inaccessible in Android 11?
This is done to protect application data from other apps. Access to Android/data and Android/obb through the standard file manager is now limited. You can get around this using special file managers (for example, Solid Explorer or CX File Explorer), which use the system access dialog, or by connecting to a PC.
Where are the WhatsApp files on the new Android?
Previously, they were in the root of the internal memory in the folder WhatsApp. Now, in accordance with the new Google rules, they have been moved deeper into the system structure: Android/media/com.whatsapp. Old backups can remain in the old folder, but new ones are created using a new path.
How to find the exact path to the file via ADB?
Use the command adb shell find / -name "file_name". This command will scan the entire file system (which may take time) and output the full absolute path to the item you are looking for. To speed up the search, you can limit the search to a specific directory, for example find /sdcard -name...
Is access to the root dangerous for an ordinary user?
Yes, extremely dangerous. Accidentally deleting a system file, changing access rights (chmod) to a critical library, or editing a configuration file can cause the phone to stop booting. Without recovery skills via Fastboot or Recovery, it is better not to go into root directories.