Network file system NFS (Network File System, which allows Xiaomi smartphones to access remote folders as if they were on an internal drive, is the perfect solution for working with large media libraries, backups or corporate data stored on the server. NAS-servers, Linux machines or advanced routers, but standard tools MIUI supportive NFS "out of the box β this will require manual configuration, superuser rights or third-party apps.
In this guide, we will analyze all the current ways of connecting. NFS Xiaomi, including the Redmi Note 12 Pro+, POCO F5 and other devices based MIUI 14/15 HyperOS. We will pay special attention to security issues (setting up) rw/no_root_squash), Optimize data transfer speed and solve common errors such as mount: permission denied or server not responding.
What is NFS and why you need it on your smartphone
NFS is a network file access protocol originally developed by Sun Microsystems in 1984, and unlike SMB (Samba) or FTP, NFS is optimized for LANs with minimal overhead, making it ideal for:
- π¬ Streaming video in 4K HDR without buffering (e.g. with Synology) DS220+ or QNAP TS-251D)
- π Work with large databases (1C, SQL-dumps) directly from the smartphone
- π Automatic photo backup bypassing cloud services
- π₯οΈ Remote file management on the server via Termux or FX File Explorer
The main advantages of NFS over alternatives are:
| Characteristics | NFS | SMB (Samba) | FTP/WebDAV |
|---|---|---|---|
| Transmission speed | β‘ High (up to 1 Gbps) | π Medium (depending on version) | π’ Low (protocol with high overhead costs) |
| Delay (latency) | π’ Minimum | π‘ Moderate. | π΄ Tall. |
| Support for MIUI | β No (manual adjustment required) | β There is (through "Network and Sharing") | β There are (through file managers) |
| Security | π Depends on the version (v3/v4) and export settings | π Supports encryption (SMB 3.0+) | π Often transmits data in an open form |
A critical nuance for Xiaomi: NFS is not supported at the Android core level without superuser rights (root), which means that to work properly, you will need either a rooted device or the use of workarounds through Termux or specialized applications.
Preparation for NFS setup on Xiaomi
Before setting up, make sure all the preconditions are met:
The device is connected to the same network as the NFS-server (Wi-Fi) 5/6 or Ethernet through USB-adopter)
On the server (NAS/router/Linux-PC installed and launched NFS-server (nfs-kernel-server or nfs-utils)
2049/TCP and 2049/UDP ports open in server firewall
Xiaomi has one of the applications: Termux, FX File Explorer or Solid Explorer.
For rooted devices: Magisk and module installed NFS Manager-->
Pay particular attention to setting up /etc/exports on the server, an example of the minimum configuration for access from a smartphone:
/mnt/data 192.168.1.0/24(rw,sync,no_subtree_check,no_root_squash,anonuid=1000,anongid=1000)Where:
- 192.168.1.0/24 - Subnet from which access is allowed (replace yours)
- rw β permission to read and write
- no_root_squash β Maintaining root rights (important for rooted devices)
- anonuid = 1000 β binding to the userβs UID on a smartphone (usually 1000 for the first user)
NAS (Synology, QNAP, TrueNAS)
Linux server (Ubuntu, Debian, CentOS)
NFS-enabled router (Asus, Keenetic, MikroTik)
Another option-->
Method 1: Connecting NFS over Termux (without root)
Termux is a Linux terminal emulator for Android that allows you to install standard utilities, including the NFS client. This method works on most Xiaomi devices without superuser rights, but has speed and stability restrictions.
Adjustment steps:
- Install Termux from F-Droid (the version from Google Play is outdated and does not support packages).
- Update repositories and install the necessary packages: pkg update && pkg upgrade -y pkg install nfs-utils openssh -y
- Create a mounting point and connect NFS-ball: mkdir ~/nfs_share mount -t nfs -o port=2049,nolock,proto=tcp 192.168.1.100:/mnt/data ~/nfs_share Where 192.168.1.100 β IP your server, /mnt/data β exportable.
To automatically mount when Termux is started, add a command to the ~/.bashrc file:
echo "mount -t nfs -o port=2049,nolock,proto=tcp 192.168.1.100:/mnt/data ~/nfs_share" >> ~/.bashrcπ‘
If you have a mount error: operation not allowed, try using the soft option or reduce the protocol version to nfsvers=3 in the mount options.
Method 2: Using FX File Explorer (with root)
The FX File Explorer app is one of the few file managers for Android with NFS support, but superuser rights are required to work properly. This method is suitable for Xiaomi devices with an unlocked bootloader and Magisk installed.
Instructions:
- Install FX File Explorer from Google Play and activate Root Access in the app settings.
- Go to the Network β Add Storage β NFS section.
- Fill in the fields: Server: IP-address NFS-servers (e.g., servers, 192.168.1.100) Port: 2049 (Default Export Path: Path to Exported Folder (e.g., Export Path, /mnt/data) Mount Point: Local folder for mounting (e.g, /storage/emulated/0/nfs_share)
Connect
Once successfully connected, the NFS folder will be displayed in the FX File Explorer root directory, and you can copy files directly, just like a regular flash drive.
How to check if the NFS is properly installed?
Method 3: Manual mounting through Magisk (for advanced)
For users willing to work with ADBs and system modifications, there is a method of integrating NFS at the kernel level, which provides maximum speed and stability, but requires deep knowledge and risks disrupting the device.
Algorithm of action:
- Install the NFS Manager module (available in the Kitsune Mask repository) via Magisk.
- Connect to the device on ADB Create a folder for mounting: adb shell su mkdir /data/nfs_share
- Edit the file. /system/etc/fstab.qcom (or similar to your model, adding a line: 192.168.1.100:/mnt/data /data/nfs_share nfs rw,soft,intr,noatime,nodiratime,rsize=8192,wsize=8192 0 0
- Restart the device and check the mounting command: mount | grep nfs
π‘
Using rsize=8192 and wsize=8192 increases data rates by increasing packet size. Gigabit networks can increase the value to 32,768.
Solving Common Errors When Configuring NFS
Even with the right setup of the server and client, errors can occur, and letβs consider the most common and ways to fix them:
| Mistake. | Reason. | Decision |
|---|---|---|
| mount: permission denied | Incorrect rights in /etc/exports or firewall block access | Check the parameters of rw and no_root_squash. Open the port. 2049 server-side |
| server not responding | Network problems or NFS-server not running | Check ping to the server. Restart NFS: sudo systemctl restart nfs-server |
| mount: wrong fs type | No NFS support in the Android kernel | Install the NFS Manager module via Magisk or use Termux |
| Slow transmission speed | Not optimized mounting parameters | Add options rsize=32768,wsize=32768,hard,intr |
A critical mistake for Xiaomi on HyperOS: if a previously configured NFS stopped working after upgrading to HyperOS 1.0+, the reason could be a change in SELinux policy.
- Check SELinux status: adb shell getenforce If Enforcing output, switch to Permissive: adb shell setenforce 0
- For a permanent solution, edit the file /vendor/build.prop by adding the line: androidboot.selinux=permissive