当前位置: 首页 > news >正文

无需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.conf

3.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

常见错误及解决方案:

  1. 端口冲突:换用其他端口号(如4446)
  2. 权限不足:检查path指向的目录是否有读写权限
  3. 配置错误:重点检查中括号[]内的共享名是否唯一

6. 跨平台访问实战

6.1 Windows电脑访问

Win10访问非445端口需要特殊操作:

  1. 文件资源管理器地址栏输入:
    \\手机IP:4445
  2. 如果提示连接失败,需要修改注册表:
    Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] "AllowInsecureGuestAuth"=dword:00000001

6.2 安卓手机访问

推荐用CX文件管理器Solid Explorer

  1. 新建SMB连接
  2. 地址填smb://手机IP:4445
  3. 身份验证选"匿名登录"

6.3 Linux/Mac访问

终端直接挂载:

mkdir ~/phone_nas sudo mount -t cifs //手机IP/Internal Storage ~/phone_nas -o port=4445,guest

7. 进阶技巧与优化

7.1 开机自启动

Termux本身不支持开机自启,但可以用Termux:Boot插件:

  1. 安装插件后创建~/.termux/boot/目录
  2. 新建start.sh文件,内容如下:
    #!/data/data/com.termux/files/usr/bin/sh smbd --daemon -s $PREFIX/etc/samba/smb.conf
  3. 给脚本加执行权限:
    chmod +x ~/.termux/boot/start.sh

7.2 远程访问方案

想在外网访问家里手机NAS?可以用ZeroTier组建虚拟局域网:

  1. 在手机和电脑都安装ZeroTier
  2. 创建虚拟网络并加入设备
  3. 访问时用虚拟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. 安全注意事项

虽然我们开了匿名访问,但还是要做好基础防护:

  1. 定期更新:运行pkg upgrade保持软件最新
  2. IP限制:在路由器设置只允许特定设备访问4445端口
  3. 敏感数据:重要文件建议加密后再存放
  4. 备份配置:把smb.conf备份到电脑,重装系统能快速恢复

这套方案我已经稳定使用两年多,主力机是小米10,用淘汰的小米6做NAS,每周自动同步手机照片到NAS备份。最爽的是出差时酒店电视直接播放NAS里的电影,比带移动硬盘方便太多。遇到任何问题欢迎评论区交流,我会分享更多实战经验。

http://www.cnnetsun.cn/news/1843598.html

相关文章:

  • 如何永久保存微信聊天记录:WeChatMsg终极指南与年度报告生成教程
  • CasRel模型与Latex文档处理:学术论文中的公式与实体关系联合抽取
  • 【SpringAI翻车笔记】01-准备工作+SpringAI接入DeepSeek
  • AI开发-python-langchain框架(--langchain与milvus的结合 )兰
  • 3分钟掌握Apex Legends智能压枪:免费开源工具终极指南
  • QModMaster:免费开源的工业级ModBus主站通信解决方案
  • Jasmine漫画浏览器:5分钟掌握跨设备阅读的终极指南
  • UniversalSplitScreen:打破单屏限制,让任何游戏都能本地分屏对战
  • 【深度学习】VSCode远程连接AutoDL部署YOLOv8实战指南
  • 如何在Windows上完美使用苹果触控板:mac-precision-touchpad完全配置指南
  • Xinference 安装与常见问题解决指南
  • 窄幅卫星式柔性版印刷机印刷装置设计(说明书+16张CAD图纸+solidworks三维图……)
  • 别再手动写if-else了!用Python装饰器@register_model实现模型工厂,5行代码搞定动态加载
  • MetaboAnalystR完整指南:3步实现代谢组学数据分析自由
  • 大模型推理延迟骤降73%?揭秘2026奇点大会公布的向量数据库3层协同优化架构
  • 2025届学术党必备的十大AI辅助写作网站推荐
  • 重新定义知识管理:从静态笔记到动态数据思维的范式转移
  • 文脉定序系统处理Typora Markdown笔记库:知识点的自动重构与链接建议
  • 终极指南:3分钟完成Axure RP中文界面切换,告别英文烦恼
  • 避坑指南:用JADX辅助分析混淆代码,精准定位APK内购破解的关键Smali位置
  • Vue2.X/Vue3.X项目中WangEditor 5富文本编辑器的封装实践:从配置到图片上传的完整指南
  • 伏羲天气预报业务监控:Prometheus+Grafana实现推理延迟与成功率看板
  • AI头像生成器部署教程(Windows WSL2):Ubuntu子系统运行Qwen3-32B+Gradio全记录
  • C 盘被微信占满?微信C盘空间清理指南
  • XCOM 2模组管理架构深度解析:AML启动器的技术实现与实践
  • 如何快速掌握ComfyUI节点管理:面向新手的完整指南
  • Win11 WSL2 + Ubuntu 24.04 下,如何让nRF开发板(DK)被VS Code和NCS v3.0.0正确识别?
  • 深入解析字节序与比特序:大小端原理及网络编程实战
  • 如何免费解析Altium电路图文件:5个简单步骤实现SchDoc格式转换
  • LeetCode 152. 乘积最大子数组:从双状态DP到空间优化【C++/Java精讲】