SMB (Server Message Block) 是一种网络文件共享协议;Samba 是在 Linux 上实现 SMB/CIFS 的自由软件服务。
如果要在 Windows 上使用 SMB 共享文件夹,请参阅 Tailscale 不完全使用指南 # Windows 文件共享。
简单传输文件
如果只是单次传输文件,可以考虑使用 scp
或 rsync
。
scp -P 22 /path/to/file user@host:/path/to/destination
rsync -avzP /path/to/file user@host:/path/to/destination
作为服务器
安装和启动 Samba 服务
sudo pacman -S samba
sudo systemctl enable --now smb.service
添加 Samba 用户
- 设置本用户的 SMB 密码:
sh sudo smbpasswd -a my_username
- 如果你需要使用其他账户访问 SMB,请添加对应用户名:
sh # 添加用户并阻止此用户登录 shell sudo useradd a_smb_guest_name -s /bin/nologin sudo smbpasswd -a a_smb_guest_name
配置 Samba
提醒
请参阅 SMB 默认配置文件 smb.conf
的官方示例。
编辑 Samba 配置文件:
sudo vim /etc/samba/smb.conf
在配置文件中添加以下内容:
[global]
# 主机名配置
netbios name = Arch # 设置主机名
# 用户访问配置
map to guest = bad user # 将无效用户映射为 guest
guest ok = yes # 允许 guest 访问
# 以下是可选项,使用默认值即可:
; workgroup = WORKGROUP # 默认工作组名称
; server string = Samba Server # 服务器描述字符串,默认是 "Samba %v"
; guest only = no # 是否只允许 guest 访问,默认是 no
[share_folder_display_name] # 文件夹共享设置
path = /path/to/share # 指定共享路径
valid users = username1 username2 # 允许访问的用户列表
# 以下是可选项,使用默认值即可:
; comment = Guest Share # 文件夹的描述,默认是空字符串
; public = yes # 允许公开访问,通常与 guest ok 配合使用,默认是 no
; browseable = yes # 共享是否在网络中可见,默认是 yes
; read only = no # 共享是否只读,默认是 no
; writable = yes # 共享是否可写,默认与 read only 相反
; guest ok = no # 是否允许 guest 访问,默认是 no
作为客户端
Linux 下访问 Samba 共享的几种姿势
coda.world
评论区
评论加载中...