iStoreOS 配置 Samba 共享服务指南 🛠️
Samba 是实现 Linux/Unix 与 Windows 系统间文件和打印机共享的核心服务。
📌 导航目录
✨ 一、功能与特点
🎯 二、服务端配置
🖥️ 三、客户端配置
🚀 四、进阶提示与故障排除
🔧 五、常用命令参考
💡 六、最佳实践
✨ 一、功能与特点
- 🖥️ 跨平台访问:允许 Windows、macOS、Linux 及移动设备访问共享文件
- 🔐 用户权限控制:可设置不同用户/密码,保障共享内容的安全
- 📁 目录灵活共享:支持多个不同路径的目录分别设置独立共享
- ⚡ 高性能传输:针对内网环境优化,传输速度快
- 🍎 兼容 macOS:支持 Apple Time Machine 备份及 DS_Store 等文件过滤
- 🔧 配置简单:可通过 Web 界面或 SSH 命令行快速配置
🎯 二、iStoreOS 作 Samba 服务端
1️⃣ 创建用户并设置 Samba 密码
1
2
|
# 创建admin用户并设置Samba密码
useradd admin && smbpasswd -a admin
|
2️⃣ 创建共享目录并分配权限
1
2
|
# 创建共享目录并设置权限
mkdir -pm 755 /mnt/mydisk && chown -R admin:admin /mnt/mydisk
|
💡 提示:
mkdir -p
:确保路径中所有目录都被创建
chown -R
:递归修改目录所有者
共享示例说明:
-
名称:ARS2
(网络中显示的名称)
-
路径:/mnt/mydisk
-
允许用户:root
-
名称:Media
-
路径:/mnt/mydisk/media
-
允许用户:admin
3️⃣ 配置 Samba 服务
🔧 方法一:覆盖配置文件(推荐)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
# 备份原配置文件
cp -i /etc/samba/smb.conf /etc/samba/smb.conf.bak
# 生成新配置
cat > /etc/samba/smb.conf <<'EOF'
[global]
netbios name = ARS2
interfaces = br-lan
server string = Samba on OpenWRT
unix charset = UTF-8
workgroup = WORKGROUP
bind interfaces only = yes
deadtime = 15
enable core files = no
security = user
map to guest = Bad User
null passwords = yes
passdb backend = smbpasswd
socket options = IPTOS_LOWDELAY TCP_NODELAY
load printers = No
printcap name = /dev/null
disable spoolss = yes
printing = bsd
mdns name = mdns
veto files = /Thumbs.db/.DS_Store/._.DS_Store/.apdisk/
delete veto files = yes
socket options = IPTOS_LOWDELAY TCP_NODELAY SO_KEEPALIVE
max xmit = 131072
min receivefile size = 131072
fake oplocks = Yes
use sendfile = Yes
aio read size = 0
aio write size = 0
server min protocol = NT1
lanman auth = yes
ntlm auth = ntlmv1-permitted
[ARS2]
path = /mnt/mydisk
force user = root
force group = root
valid users = root
create mask = 0777
directory mask = 0777
read only = no
guest ok = no
fruit:encoding = native
fruit:metadata = stream
fruit:veto_appledouble = no
vfs objects = catia fruit streams_xattr
[media]
path = /mnt/mydisk/media
force user = root
force group = root
valid users = admin
create mask = 0777
directory mask = 0777
read only = no
guest ok = no
fruit:encoding = native
fruit:metadata = stream
fruit:veto_appledouble = no
vfs objects = catia fruit streams_xattr
[TV]
path = /mnt/mydisk/TV
force user = root
force group = root
valid users = admin
create mask = 0777
directory mask = 0777
read only = no
guest ok = no
fruit:encoding = native
fruit:metadata = stream
fruit:veto_appledouble = no
fruit:time machine = yes
vfs objects = catia fruit streams_xattr
EOF
# 重启 Samba 服务
/etc/init.d/samba4 restart
|
🔩 方法二:追加配置(保留原有配置)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 追加配置到现有文件
tee -a /etc/samba/smb.conf <<'EOF'
[ARS2]
path = /mnt/mydisk
force user = root
force group = root
valid users = root
create mask = 0777
directory mask = 0777
read only = no
guest ok = no
fruit:encoding = native
fruit:metadata = stream
fruit:veto_appledouble = no
vfs objects = catia fruit streams_xattr
EOF
# 重启服务
/etc/init.d/samba4 restart
|
🖥️ 三、iStoreOS 作 Samba 客户端
配置 iStoreOS 挂载远程 Samba 共享目录:
参数说明:
- 服务器 IP:
10.10.10.245
(Samba 服务端地址)
- 共享文件夹:
Debian
(服务端共享名称)
- 挂载路径:
/mnt/mydebian
(本地挂载点)
- SMB 版本:
SMB V3
(推荐版本,兼容性好)
- 挂载参数:
可读/写
- 字符集:
UTF8
(避免中文乱码)
- 用户名:
admin
(服务端授权用户)
- 密码:
yifan0719
(对应用户的密码)
✅ 配置完成后,即可在 /mnt/mydebian
访问远程共享文件
🚀 四、进阶提示与故障排除
🔍 服务状态检查
1
2
3
4
5
|
# 查看Samba服务状态
service samba4 status
# 查看详细运行信息
smbstatus
|
🌐 防火墙设置
确保开放以下端口:
- TCP 139:NetBIOS会话服务
- TCP 445:SMB over TCP
- UDP 137:NetBIOS名称服务
- UDP 138:NetBIOS数据报服务
📝 日志查看
1
2
3
4
5
|
# 查看Samba日志
tail -f /var/log/samba/log.smbd
# 查看连接日志
tail -f /var/log/samba/log.<client-ip>
|
🔒 权限问题解决
1
2
3
4
5
6
|
# 检查目录权限
ls -la /mnt/
# 重新设置权限
chmod -R 755 /mnt/mydisk
chown -R admin:admin /mnt/mydisk
|
🔄 重新加载配置
1
2
|
# 不重启服务,重新加载配置
smbcontrol all reload-config
|
🔧 五、常用命令参考
用户管理命令
1
2
3
4
5
6
7
8
9
|
# 添加Samba用户
smbpasswd -a username
# 删除Samba用户
smbpasswd -x username
# 启用/禁用用户
smbpasswd -e username
smbpasswd -d username
|
连接测试命令
1
2
3
4
5
|
# 查看可用共享
smbclient -L //server-ip -U username
# 测试连接共享
smbclient //server-ip/sharename -U username
|
挂载命令
1
2
3
4
5
|
# 手动挂载Samba共享
mount -t cifs //server-ip/sharename /mnt/mountpoint -o username=user,password=pass
# 卸载共享
umount /mnt/mountpoint
|
💡 六、最佳实践
🛡️ 安全建议
- 使用强密码:为Samba用户设置复杂密码
- 限制访问:仅允许必要用户访问共享
- 定期更新:保持系统和Samba软件最新
- 网络隔离:将Samba服务放在隔离的网络段
📊 性能优化
- 启用大文件传输优化:
1
2
|
min receivefile size = 16384
getwd cache = yes
|
- 调整缓存设置:
1
|
socket options = TCP_NODELAY IPTOS_LOWDELAY
|
🔄 备份策略
- 定期备份配置文件:
1
|
cp /etc/samba/smb.conf /etc/samba/smb.conf.backup.$(date +%Y%m%d)
|
- 测试配置有效性:
🌍 多语言支持
确保正确设置字符集避免乱码:
1
2
3
|
unix charset = UTF-8
dos charset = UTF-8
display charset = UTF-8
|
希望本指南能帮助你快速配置 iStoreOS 的 Samba 服务!如有其他问题,欢迎探讨。🤝
📚 扩展阅读: