2022年快速搭建Samba服务器

一、背景

在 Debian 上搭建 Samba 服务器

但是可能很多人都会失败,比如我查了好久。

samba > 4.11 之后,默认去掉了 v1 协议的支持,需要手动加上。

国内一般的老设备都是只支持 v1。 这就是为什么,他可以搭建起来,日志也不报错,但是永远无法访问。

二、安装步骤

1.安装 samba

sudo apt install samba

2.备份配置

cd /etc/samba

sudo cp smb.conf smb.conf.bak

3.修改配置

valid users = admin

这个用户必须是系统中存在的用户

查看版本 samba > 4.11 需要在 Global 加上

client min protocol = NT1
server min protocol = NT1

因为 4.11 之后去掉了对 samba v1 协议默认的支持。这里一般要手动加上。主要是来针对一些老设备的支持,比如家庭中安卓投影仪。

最后是这样

[global]
   ; ....省略其他
   client min protocol = NT1
   server min protocol = NT1

[public]
   comment = public storage
   path = </path/to/your/dictory>
   valid users = <你的账号>
   read only = no
   create mask = 0777
   directory mask = 0777
   guest ok = yes
   browseable = yes

PS: 小米电视、安卓投影仪只支持 smb v1 协议

4.给设定用户的samba密码

-a 可以顺便帮助传创建

sudo smbpasswd -a <你的本机账号>

5.重启samba服务

sudo systemctl restart smbd

想要开机启动

sudo systemctl enable smbd

6.打开防火墙

如果安装了防火墙,别忘了打开

sudo ufw allow samba

应该可以访问到了

7.补充

验证是否工作

7.1 别乌龙到,自己访问自己验证

发现samba自己打不开自己

7.2 日志

主配置文件在 /etc/samba/smb.conf

其中记录了日志的地址,可以查看

sudo tail -f <xxx.log>

7.3 固定设备IP地址

让低端设备可以找到,并且命名。在路由器中,DHCP 赋予设备静态IP地址,和备注名。在其他的设备中可以被展示。比如当贝。在当贝中会消失。

总结排查方法

1.搜索引擎搜索

只针对表象的搜索,有时候纯粹在浪费时间。这是一种方法,但是希望有针对性。

2.回归系统和程序本身

查到软件的配置,配置中查看日志的地址,然后查看日志

tail -f <xxx.log>

3.对比分析

通过对比来进行分析。

一切正常却没有响应。可能:

3.1 兼容性 breaking change

往这个方向去搜索

3.2 不同设备表现不同,比如我之前部署过一个。

他们最大不同在于路由器设定静态IP。

逻辑层面上,往上找差异性。

Mark24

Everything can Mix.