云计算百科
云计算领域专业知识百科平台

安卓手机搭建Samba服务器SMB

文章目录

  • 简介
  • 1. 安装termux
  • 2. 安装Samba
  • 3. 配置Samba
  • 4. 启动Samba
  • 5. Windows访问Smaba
  • ~~[Rclone](https://rclone.org/downloads/)~~
  • 参考文献

简介

使用安卓手机搭建 Samba 服务器提供给电视或车机看视频

Samba 是一款 Linux 上的文件和打印机共享软件,它通过实现 SMB/CIFS 协议,在不同的操作系统之间架起了桥梁,让它们在同一个网络中共享资源。

1. 安装termux

Termux 是 Android 上的 Linux 环境,它可以在不进行 Root 的情况下,提供 Linux 命令行的体验。可以理解为一个装在手机里的迷你 Linux 服务器。它不是一个模拟器,而是一个真正的运行时环境。

安装方式:

  • F-Droid​(官方推荐源)
  • Google Play
  • GitHub Releases(本人用这种)
后缀适用设备
universal 所有设备,包含所有架构的通用包,体积最大
arm64-v8a 现代安卓手机,主流 64 位 ARM 处理器 (2014 年后)
armeabi-v7a 旧安卓设备,32 位 ARM 处理器 (2014 年前)
x86_64 部分平板/模拟器,64 位 Intel/AMD 处理器
x86 老旧平板/模拟器,32 位 Intel/AMD 处理器

2. 安装Samba

pkg update
pkg upgrade
termux-setup-storage
pkg install samba
pkg install nano

3. 配置Samba

# 创建samba配置文件目录
mkdir $PREFIX/etc/samba

# 复制配置模板
cp $PREFIX/share/doc/samba/smb.conf.example $PREFIX/etc/samba/smb.conf

# 获取用户名
whoami

# 记下uid对应的用户名(如 u0_a123)和主组(如 u0_a123_all)
id

# 确认共享目录存在
echo $HOME/storage/shared

# 修改配置
nano $PREFIX/etc/samba/smb.conf

[global]
workgroup = WORKGROUP
server string = Samba on Termux

security = user
map to guest = Bad User
server role = standalone

bind interfaces only = no

smb ports = 1139 4445
max connections = 8

unix password sync = no
pam password change = no
obey pam restrictions = no
passwd program = /data/data/com.termux/files/usr/bin/true
add user script = /data/data/com.termux/files/usr/bin/true
add group script = /data/data/com.termux/files/usr/bin/true
add user to group script = /data/data/com.termux/files/usr/bin/true
add machine script = /data/data/com.termux/files/usr/bin/true
delete user script = /data/data/com.termux/files/usr/bin/true
delete user from group script = /data/data/com.termux/files/usr/bin/true
delete group script = /data/data/com.termux/files/usr/bin/true
rename user script = /data/data/com.termux/files/usr/bin/true

name resolve order = bcast host
local master = no
preferred master = no
disable spoolss = yes
load printers = no
printing = bsd
printcap name = /dev/null

nt acl support = no
unix extensions = no
ea support = no
store dos attributes = no
map archive = no
map hidden = no
map readonly = no
map system = no

use sendfile = yes
socket options = TCP_NODELAY SO_KEEPALIVE
oplocks = yes
kernel oplocks = no

[internal]
comment = Internal storage
path = /data/data/com.termux/files/home/storage/shared
read only = no
browseable = yes
writable = yes
guest ok = yes
force user = YOUR_UID
force group = YOUR_GROUP
create mask = 0775
directory mask = 0775
vfs objects = aio_pthread
aio_pthread:aio open = yes

功能快捷键说明
保存文件 Ctrl + O 然后按 Enter 确认文件名
退出 nano Ctrl + X 如果修改过未保存,会提示是否保存

# 测配置有没有语法错误
testparm

4. 启动Samba

# 启动Samba
smbd -D

# 确认端口在听
pkg install netcat-openbsd
nc -zv 127.0.0.1 4445

# 手机开热点后查看网关IP
pkg install net-tools -y
ifconfig

如本人的是192.168.13.79

5. Windows访问Smaba

有组策略的电脑很有可能连不上

电脑连上手机热点

命令行提示符

# 查看热点的网关,看无线局域网适配器 WLAN的默认网关
ipconfig

电脑 PowerShell 测试 4445 端口通不通,看 TcpTestSucceeded 是不是 True

Test-NetConnection 网关IP -Port 4445

在资源管理器地址栏输入,这步大概率不行,因为 Windows 只支持 445 端口的 SMB

\\\\网关IP:4445\\internal

本人经过以下尝试均不可行:

  • RaiDrive:免费版不支持 SMB
  • 本机端口转发:需要补充设置策略,并且共享打印机无法使用

安装 smb-ssh-tunnel

解压后,以管理员身份运行 PowerShell

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

.\\smb.ps1 网关IP 4445

重启电脑

# 检查
netstat -an | find ":445 "

netsh interface portproxy show v4tov4

# 可以看到类似 10.255.255.1:445 在 LISTENING

在资源管理器地址栏输入

# 不再是上面那个网关IP了
\\\\10.255.255.1\\internal

用户名:guest

密码:留空

启用不安全的来宾登录

  • Win + R → gpedit.msc
  • 计算机配置 → 管理模板 → 网络 → Lanman 工作站
  • 启用不安全的来宾登录 → 已启用 → 确定
  • gpupdate /force 或重启
  • 再连一次就成功了
  • Rclone

    本人尝试失败,一直连不上,理论上是可行的

    解压后进到对应目录

    # 交互配置
    rclone config

  • n:New remote
  • name:起一个名字,如:phone
  • Storage:smb
  • host:网关 IP
  • user:guest
  • port:4445
  • password:回车默认空
  • domain:回车默认空
  • spn:回车默认空
  • use_keyberos:回车默认空
  • Edit advanced config:回车默认空
  • q:退出
  • # 测是否连上
    rclone ls phone:internal

    参考文献

  • 手机秒变无线移动硬盘,用Samba轻松实现高速文件共享、远程编辑
  • Using termux as SAMBA server?
  • Android手机使用Termux搭建Samba服务器,连接外接SSD,制作简易NAS
  • 用 Samba 打造手机移动硬盘,随时随地共享文件奶妈级教程
  • 赞(0)
    未经允许不得转载:网硕互联帮助中心 » 安卓手机搭建Samba服务器SMB
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!