无需Root!Termux+Samba三步搭建手机NAS,跨平台文件共享无忧
1. 为什么你需要手机NAS?
每次用微信传文件都要忍受压缩画质?电脑和手机互传文件还得找数据线?家里多台设备共享电影资源只能靠U盘来回倒腾?这些问题我都遇到过,直到发现用旧手机搭建NAS这个神器方案。最让我惊喜的是,完全不需要Root权限,用Termux和Samba三步骤就能搞定。
你可能觉得NAS都是专业设备,其实手机NAS特别适合这些场景:
- 学生党:在宿舍用手机给笔记本和平板共享学习资料
- 家庭用户:把孩子的照片视频集中存在旧手机里全家共享
- 移动办公:出差时随时访问手机里的工作文件,比带硬盘方便多了
实测用红米Note8 Pro搭建的NAS,局域网传输速度能稳定在30MB/s,播放4K视频完全不卡顿。最关键的是零成本——谁家里还没个退役的安卓机呢?
2. 准备工作:Termux环境配置
2.1 安装Termux的正确姿势
首先去GitHub下载对应你手机CPU架构的Termux版本(下载前建议先查手机参数):
- 主流安卓机基本都是arm64-v8a架构
- 老旧设备可能是armeabi-v7a
- 模拟器常用x86_64
# 查看手机CPU架构 adb shell getprop ro.product.cpu.abi下载后安装时有个坑要注意:不要从应用商店安装!商店版功能残缺,必须装GitHub的官方版本。安装完打开Termux,你会看到一个绿色背景的命令行界面。
2.2 换源加速安装
默认源速度慢得像蜗牛,换成国内镜像源才能愉快玩耍:
termux-change-repo按方向键选择镜像源,个人实测清华源最稳定。接着更新软件包:
pkg update && pkg upgrade如果卡在下载环节,可能是网络权限没开。到手机设置里给Termux开启后台数据和VPN绕过权限(虽然我们不用VPN,但这个设置能避免某些网络限制)。
3. Samba服务安装与配置
3.1 基础软件安装
只需要两个核心组件:
pkg install samba vim- samba:实现文件共享的核心服务
- vim:编辑配置文件更顺手(不会用的可以用nano)
安装完成后先创建配置目录:
mkdir -p $PREFIX/etc/samba cp $PREFIX/share/doc/samba/smb.conf.example $PREFIX/etc/samba/smb.conf3.2 关键配置修改
用vim打开配置文件:
vim $PREFIX/etc/samba/smb.conf找到这两个关键参数修改:
map to guest = Bad User guest ok = yes这相当于给共享文件夹开了"免密码访客模式",实测这样配置最稳定。接着往下找到[homes]段,修改为:
[Internal Storage] path = /data/data/com.termux/files/home read only = no writable = yes guest ok = yes重要提醒:不要改端口号为445!Termux不允许使用1024以下端口,用默认的4445就行。网上有些教程教人用iptables转发端口,但那需要Root权限,我们这套方案的最大优势就是免Root。
4. 外置存储挂载技巧
想让NAS共享手机SD卡里的内容?Termux默认无法直接访问外部存储,需要特殊操作:
# 先创建挂载点 mkdir ~/external_storage # 获取存储访问权限 termux-setup-storage这时手机会弹出权限请求,同意后会在home目录生成storage文件夹。在smb.conf里新增共享段:
[SD_Card] path = /data/data/com.termux/files/home/storage/shared writable = yes guest ok = yes注意安卓11以上系统对外部存储访问有限制,建议把需要共享的文件放在Termux能直接访问的目录下。
5. 服务启动与故障排查
启动Samba服务用这个命令:
smbd --daemon -s $PREFIX/etc/samba/smb.conf检查是否运行成功:
ps -ef | grep smbd看到有smbd进程就说明成功了。如果启动失败,查看日志找原因:
cat /data/data/com.termux/files/usr/var/log/samba/log.smbd常见错误及解决方案:
- 端口冲突:换用其他端口号(如4446)
- 权限不足:检查path指向的目录是否有读写权限
- 配置错误:重点检查中括号[]内的共享名是否唯一
6. 跨平台访问实战
6.1 Windows电脑访问
Win10访问非445端口需要特殊操作:
- 文件资源管理器地址栏输入:
\\手机IP:4445 - 如果提示连接失败,需要修改注册表:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] "AllowInsecureGuestAuth"=dword:00000001
6.2 安卓手机访问
推荐用CX文件管理器或Solid Explorer:
- 新建SMB连接
- 地址填
smb://手机IP:4445 - 身份验证选"匿名登录"
6.3 Linux/Mac访问
终端直接挂载:
mkdir ~/phone_nas sudo mount -t cifs //手机IP/Internal Storage ~/phone_nas -o port=4445,guest7. 进阶技巧与优化
7.1 开机自启动
Termux本身不支持开机自启,但可以用Termux:Boot插件:
- 安装插件后创建~/.termux/boot/目录
- 新建start.sh文件,内容如下:
#!/data/data/com.termux/files/usr/bin/sh smbd --daemon -s $PREFIX/etc/samba/smb.conf - 给脚本加执行权限:
chmod +x ~/.termux/boot/start.sh
7.2 远程访问方案
想在外网访问家里手机NAS?可以用ZeroTier组建虚拟局域网:
- 在手机和电脑都安装ZeroTier
- 创建虚拟网络并加入设备
- 访问时用虚拟IP替代局域网IP
7.3 性能优化
在smb.conf添加这些参数提升传输速度:
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536 min receivefile size = 16384 write cache size = 524288实测优化后传输大文件速度提升40%,特别是视频播放更流畅。建议把旧手机的省电模式关闭,避免系统自动杀后台进程。
8. 安全注意事项
虽然我们开了匿名访问,但还是要做好基础防护:
- 定期更新:运行
pkg upgrade保持软件最新 - IP限制:在路由器设置只允许特定设备访问4445端口
- 敏感数据:重要文件建议加密后再存放
- 备份配置:把smb.conf备份到电脑,重装系统能快速恢复
这套方案我已经稳定使用两年多,主力机是小米10,用淘汰的小米6做NAS,每周自动同步手机照片到NAS备份。最爽的是出差时酒店电视直接播放NAS里的电影,比带移动硬盘方便太多。遇到任何问题欢迎评论区交流,我会分享更多实战经验。
