Linux安装Samba并与Mac共享存储

在日常工作和家庭中,我们常常需要不同操作系统之间共享文件。

例如,如果你有一台运行Linux的服务器,并且希望与一台Mac共享文件,使用Samba协议无疑是一个不错的选择。

Samba是一个开放源代码的软件套件,可以使Linux和Windows系统与其他操作系统之间实现文件共享和打印服务。本文将指导你如何在Linux上安装和配置Samba服务器,以便为Mac共享存储使用。

📦 1. 安装Samba软件包

如果是在CentOS上,Samba可以通过yum包管理器直接进行安装。

运行以下命令来安装Samba及其客户端和常用组件:

1
$ sudo yum install samba samba-client samba-common -y

如果是Debian/Ubuntu,可以使用apt包管理器安装。

1
$ sudo apt update && apt install samba samba-client samba-common -y

安装完成后,可以使用以下命令来验证Samba是否成功安装:

1
2
3
$ smbd --version

Version 4.14.5

如果返回了Samba的版本信息,表示安装成功。

🗂️ 2. 创建并配置共享用户

不建议使用guest匿名用户,非常不安全还是创建一个专用的共享用户吧。

2.1 创建系统用户

首先,确保在系统中创建了一个有效的用户,用于访问Samba共享。

例如,创建一个用户lu-share

1
$ sudo useradd lu-share

然后为该用户设置密码:

1
$ sudo passwd lu-share

2.2 设置Samba密码

接下来,还要使用smabpasswd命令为该用户设置Samba密码,Samba密码可以与系统密码不同:

1
sudo smbpasswd -a lu-share

根据提示输入并确认密码。然后启用该用户的Samba账户:

1
sudo smbpasswd -e lu-share

⚙️ 3**. 配置Samba共享目录**

我们将共享目录设置为/share(也可以选择你分区较大下面的目录)。

按照以下步骤操作:

3.1 创建共享目录

1
$ sudo mkdir -p /lu-share

3.2 设置适当的权限,确保其他设备可以访问该目录

1
2
$ sudo chmod -R 0775 /lu-share
$ sudo chown -R lu-share:lu-share /lu-share

这样,lu-share用户将能够访问/share目录。

3.3 编辑Samba配置文件,定义共享目录:

打开文件/etc/samba/smb.conf进行编辑:

1
sudo vim /etc/samba/smb.conf

在文件末尾添加以下配置:

1
2
3
4
5
6
[lu-share]
path = /lu-share
valid users = lu-share
read only = no
browsable = yes
guest ok = no

参数说明:

  • **[lu-share]**:共享的名称,Mac上将看到这个名称。
  • path:共享目录的路径,这里是/lu-share
  • valid users:设置允许访问该共享的用户,这里允许 lu-share 用户访问。
  • read only:设置为no,允许写入操作。
  • browsable:设置为yes,共享目录在网络中可见。
  • guest no:设置为no,不允许无密码的访客访问。

🚀 4. 启动Samba服务并设置开机自启

完成配置后,保存并关闭配置文件。然后启动Samba服务并设置开启自启:

1
2
3
4
5
$ sudo systemctl start smb
$ sudo systemctl enable smb

$ sudo systemctl start nmb
$ sudo systemctl enable nmb

检查Samba服务的状态:

1
2
$ sudo systemctl status smb
$ sudo systemctl status nmb

🔥 5. 配置防火墙(可选)

如果你启用了防火墙,需要允许Samba的相关端口(通常我一般直接关闭防火墙)。

运行以下命令:

1
2
$ sudo firewall-cmd --zone=public --add-service=samba --permanent
$ sudo firewall-cmd --reload

🖱️ 6. 在Mac上访问共享目录

现在,Samba服务器已经配置完毕,接下来可以在Mac上访问这个共享目录:

  1. 打开 Finder
  2. 在菜单栏选择 前往 > 连接服务器
  3. 在弹出的窗口中输入以下内容:

samba-connect.png

  1. 点击 连接,接着会提示输入用户名和密码:

samba-passwd.png

再次点击连接,验证通过后,你将看到共享的文件夹,并且可以在Mac上进行文件操作。

✔️ 7. 测试文件共享

你可以在Mac上进行文件操作,例如向共享目录中拖拽文件或创建新文件夹,检查文件是否能够成功传输。

image.png

最后为了方面使用,还可以将新建的文件夹直接拖到 Finder 个人收藏栏(鼠标左键按住文件夹不动直接拖):

image.png


⚠️ 常见问题与解决方案

  1. 无法连接到共享:
    • 确保防火墙设置正确,允许Samba服务的端口。
    • 检查Samba服务是否正在运行,使用 sudo systemctl status smb 命令检查。
  2. 文件夹无法访问:
    • 确认配置的目录权限正确,特别是对共享目录的读写权限。
  3. Mac无法识别共享文件夹:
    • 确保Samba配置文件中的 browsable = yes 设置已经生效。

🎯 总结

通过上述步骤,你已经成功地在CentOS 8上安装并配置了Samba共享服务,使得Mac能够访问存储在CentOS服务器上的/lu-share目录。Samba不仅支持Linux和Mac之间的文件共享,还能够与Windows系统兼容,是跨平台文件共享的强大工具。