Can I use it? NFS on a smartphone and why it is necessary
Protocol NFS (Network File System is the de facto standard for sharing files on local networks, but is rarely associated with smartphones. NFS Xiaomi Redmi 9C It's not only possible, it's also useful in a few scenarios, like when you need to work with big media files. 4K, RAW-Photos that take up tens of gigabytes, but it's not rational to store them on your phone. 9C Like a media player for a TV connected to the same network.
Main advantage NFS before alternatives (SMB, FTP) β Minimum overhead for data transfers, critical for Redmi. 9C with its modest Helio processor G35 and 2-3 GB of RAM: when watching movies SMB There may be a delay, while NFS It's a smooth reproduction, and it's also a smooth reproduction, NFS Supports Unicode in File Names and Access Rights at Level UNIX, What is important for working with servers on Linux.
However, there are nuances: Redmi 9C runs on Android 10 (in the latest firmware - Android 12 with a shell) MIUI 14), where native-support NFS It means that without third-party apps or root rights, you can't connect. Next, we'll look at all the working methods, from the simplest to the most advanced, with Redmi's limitations in mind. 9C.
What you need to connect NFS
Before you start setting up, make sure you have everything you need. Here's the minimum set:
- π± Xiaomi Redmi 9C firmware MIUI 12+ (On older versions, there may be problems with app compatibility).
- π₯οΈ NFS-This can be a Linux computer (Ubuntu, Debian) with a configured nfs-kernel-server. NAS-storage device (Synology, QNAP) supportive NFS. Firmware router OpenWRT/DD-WRT and the nfs-utils package.
- π Stable Wi-Fi connection (NFS It is very sensitive to delays, so mobile data is not suitable for the user).
- π± Mounting annex NFS. For Redmi. 9C rootless: NFS Manager (paid version with support for Android 10)+). Total Commander + plugin LAN Plugin (free of charge). FX File Explorer (requires the purchase of a module) FX Connect).
If you are planning to use NFS For video streaming, check if your player app supports (e.g, VLC Or Kodi) working with network folders, otherwise the files will have to be pre-copyed onto the device.
Setting up NFS-servers for working with Android
Before connecting from the phone, you need to configure correctly NFS-So let's look at the most common case, which is a Linux server (Ubuntu/Debian). If you NAS or router, skip this section and use the deviceβs web interface to configure folder export.
Open the terminal on the server and execute the following commands:
Install NFS packets (if not already installed)
sudo apt update && sudo apt install nfs-kernel-server
Create a directory for export (e.g. /mnt/nfs_share)
sudo mkdir -p /mnt/nfs_share
sudo chown nobody:nogroup /mnt/nfs_share
sudo chmod 777 /mnt/nfs_share # Temporary solution for the test (then configure the rights more accurately!)
Edit the /etc/exports file by adding a line:
/mnt/nfs_share *(rw,sync,no_subtree_check,no_root_squash,insecure)Pay attention to the parameters:
- Rw allows you to read and write.
- Sync β synchronous recording (important for stability, but slows down)
- no_root_squash β allows the root user to retain the rights of the owner on the client.
- Insecure β Allows connection from ports above 1024 (required for Android)
After editing, restart the server:
sudo exportfs -a
sudo systemctl restart nfs-kernel-serverβ οΈ Attention: Parameter no_root_squash It is potentially dangerous if you have untrusted devices on your network. for home use, the risk is minimal, but in the corporate network, set up stricter rules.
| Parameter /etc/exports | Description | Recommendation for Android |
|---|---|---|
| rw | Reading and writing | Yes, if you need a phone record. |
| sync | Synchronous recording | Include for stability |
| no_subtree_check | Turns off the subtree check. | Improves productivity |
| insecure | Allows ports >1024 | Critical for Android Clients |
Connection NFS on the Redmi 9C rootless
If you donβt have root access, the only option is to use third-party file managers with support. NFS. Letβs look at two ways: Total Commander and NFS Manager.
Method 1: Total Commander + plugin LAN
This method is free and does not require the purchase of additional modules (unlike the one used by the company). FX Download Total Commander from Google Play and the plugin LAN Plugin (aka tcplugins).
Install Total Commander from Google Play|
Download the plugin LAN Plugin (tcplugins)|
Connect your phone to the same network as you NFS-server|
Make sure that port 2049 is open on the server (NFS)
-->
Next:
- Launch Total Commander, go to Networked Environment (the icon of the two computers at the bottom).
- Press Add Add Add. β Choose Add as a Plugin β LAN Plugin.
- In the Server Type field, select NFS.
- Please indicate: Server name β IP-address NFS-servers (e.g., servers, 192.168.1.100). Export name β the path to a folder on the server (for example, /mnt/nfs_share). Port - leave 2049 (standard NFS).
OK.
β οΈ Note: Total Commander may not display Cyrillic file names in the NFS. If it is critical, use it. NFS Manager or rename files on the server to Latin.
Method 2: NFS Manager (paid solution)
Annex NFS Ice Cold Apps is one of the few companies that works with the same name. NFS on modern versions of Android, including MIUI 14 on the Redmi. 9C. Its advantage is that it supports mounting as a system drive (root-rights) and as a user drive (no root.
Instructions:
- Buy and install NFS Manager from Google Play.
- Launch the application, go to the Servers tab.
- Press. + and fill in the fields: Server IP β IP-Export path - the path to the exported folder (for example, /mnt/nfs_share). Mount Point β Local path on the phone (for example, /storage/emulated/0/nfs). Port β 2049. Protocol β NFS v3 (v4 It may not work on some servers).
Save
Mount
/storage/emulated/0/nfs
NFS Manager allows you to set up an automatic connection at startup and add a shortcut to the desktop. This is convenient if you often work with network files.
π‘
If NFS Manager gives you the error "Mount failed: Operation not allowed", try the server settings (/etc/exports) add the fsid parameter=0 It often solves the Android mounting problem. 10+.
Solving Common Errors When Connecting NFS
Even with the right setup of the server and client, errors can occur, and here are the most common ways to fix them:
| Mistake. | Possible cause | Decision |
|---|---|---|
| Connection refused | Port 2049 is closed on a server or firewall | Check sudo ufw allow 2049 and sudo systemctl restart nfs-kernel-server |
| Permission denied | Incorrect rights in /etc/exports or on a folder | Add in. no_root_squash and check the chmod 777 file-fill |
| Mount failed: No such device | No NFS support in the Android kernel | Use apps with your own drivers (NFS Manager) |
| There is a connection, but the files are not displayed. | Problems with encoding or rights | Rename files to Latin or configure nfs-common on the server |
If you see Mount failed: Operation not allowed NFS Manager, try the following:
- Open the app settings and enable the Use root mount option (even if you donβt have root rights).
- Reboot your phone and try again.
- If it doesnβt work, check if itβs blocking. MIUI Access to network resources. To do this, temporarily turn off Security. β Special permits β Network access for other applications.
Another common problem is slow work. NFS on the Redmi 9C. This is due to the hardware limitations of the Helio processor. G35. To speed up access:
- π§ Use it. NFS v3 instead v4 (in the server and client settings).
- πΆ Connect your phone to the network via cable (via USB-OTG adapter instead of Wi-Fi.
- ποΈ Turn off thumbnail preview in the file manager.
Alternatives NFS Xiaomi Redmi 9C
If you tune in NFS If you don't succeed or you don't like the speed, consider alternative protocols. 9C:
| Protocol | Speed. | Reliability | Difficulty setting up | Support for MIUI |
|---|---|---|---|---|
| NFS | βββββ | ββββ | βββ | Requires third-party applications |
| SMB (Samba) | βββ | ββββ | ββ | Built-in support in MIUI |
| FTP | ββ | ββ | β | Anybody. FTP-client |
| WebDAV | βββ | ββββ | βββ | Through Total Commander or Rclone |
| SSHFS | ββββ | βββββ | ββββ | Requires Termux or root |
For most Redmi users 9C The best choice will be SMB. It's built into MIUI (Check the settings. β Connections β Additionally. β Network drive) and does not require the installation of additional applications. SMB lose NFS speed, especially when working with small files.
If you want top speed and are willing to take the time to set up, try it. SSHFS This method allows you to mount a remote folder as a local one, but requires knowledge of Linux commands:
pkg install openssh sshfs
sshfs user@192.168.1.100:/path/to/folder /sdcard/nfs -o allow_otherβ οΈ Attention: When in use SSHFS on the Redmi 9C Avoid mounting multiple folders at once β this can cause the file system to freeze due to limited device resources.
Safety in use NFS Android
NFS β A protocol that wasn't originally designed for untrusted networks. 9C ce NFS-The server should take into account the following risks:
- π Data is transmitted in an open form (without default encryption).
- π΅οΈ An attacker on your network can intercept traffic or connect to a server.
- π Wrong settings /etc/exports It can give you full access to the server file system.
To minimize the risks:
- Limit access to NFS trustlessly IP-For example, in the /etc/exports instead of * specify: /mnt/nfs_share 192.168.1.0/24(rw,sync,no_subtree_check)
- Use it. NFS top-up VPN. For example, set up WireGuard on the server and phone, and then connect to the NFS through VPN-tunnel.
- Turn off the export folder when it is not needed: sudo exportfs -u /mnt/nfs_share
- Update nfs-utils on the server regularly: sudo apt update && sudo apt upgrade nfs-kernel-server
If you need encryption, consider alternatives:
- π SSHFS β data transmission SSH-tunnel.
- π WebDAV with HTTPS β supported by many NAS and cloud services.
- π Rclone with encryption β allows you to mount encrypted cloud drives.
π‘
NFS It's easy to use on LANs, but it's not safe to access over the Internet. Always use it only on trusted networks or overhead. VPN.