Samba 是一个开源程序,用于文件共享和网络打印,使用 SMB 协议。现在基本上用于提供在 Windows 上可访问的 Linux 文件共享系统。
本文介绍如何在 Ubuntu 上安装和配置 Samba 服务器,以便跨文件夹共享网络上不同的计算机。
Update Your System
在开始之前,请确保您的系统是最新的。
sudo apt update
sudo apt upgrade
Install Samba
Samba 包在默认存储库下是可用的,直接使用 APT 安装
sudo apt install samba
这个命令会安装 Samba 服务器和客户端包
Check Samba Status
安装之后,检查 Samba 服务状态
sudo systemctl status smbd
如果 Samba 没有运行,使用如下命令启动运行
sudo systemctl start smbd
使用如下命令,在系统引导时自动启动 Samba 服务
sudo systemctl enable smbd
Backup Configuration File
编辑配置前,请先备份配置文件
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
Edit Configuration File
使用 nano 文本编辑器中打开文件
sudo nano /etc/samba/smb.conf
Set Workgroup and Server String
在 “[ global ]” 部分,配置以下基本设置
[global]
workgroup = WORKGROUP # Set this to match your network's workgroup (default is WORKGROUP).
server string = Samba Server # Description of your server
Networking Settings
确保 Samba 在正确的网络接口上侦听。默认情况下,它监听所有接口。但是,您可以指定特定的接口。
interfaces = lo eth0 # Replace 'eth0' with your network interface
bind interfaces only = yes
Set Permissions and Access Control
确定安全模式。对于简单的设置,通常使用 user 模式,它只允许经过身份验证的用户。
security = user
Enable Samba Logging (Optional)
开启日志,日志记录有助于在出现问题时进行故障排除。
log file = /var/log/samba/%m.log
max log size = 50
Create Shared Folder
假设您想共享一个名为 shared 的文件夹,首先创建该文件夹。
sudo mkdir /srv/samba/shared
更改文件夹的权限,以便其他人可以访问它
sudo chmod 777 /srv/samba/shared
Add Shared Folder to Configuration
再次编辑配置文件,在文件底部添加以下文本块来定义共享文件夹。
[shared]
path = /srv/samba/shared
browsable = yes
writable = yes
guest ok = yes
read only = no
以下是这些设置的含义:
- path : 您正在共享的文件夹
- browsable : 这使该文件夹对网络上的其他人可见
- writable : 允许其他用户将文件写入此文件夹
- guest ok : 允许不使用用户名或密码的访问
- read only : 设置为 “no”,这样用户就可以向文件夹写入文件
Create Samba User
为了保护您的共享文件夹,您可能需要创建一个 samba 用户,确保只有特定的人才能访问共享文件夹。
首先,创建一个 samba 用户
sudo adduser sambauser
现在,为这个用户创建一个 samba 密码
sudo smbpasswd -a sambauser
Restart Samba
在重新启动之前,检查 samba 配置文件
testparm
重新启动 samba 服务
sudo systemctl restart smbd
Allow Samba Through the Firewall
如果启用了防火墙,则需要允许 samba 流量通过防火墙。
sudo ufw allow samba
Access Samba Share from Remote Computer
From a Windows Computer
- 打开 “File Explorer”
- 在地址栏中,输入
\\<your-ubuntu-ip-address>\shared
,按回车访问 - 如果您设置了一个用户,系统将提示您输入用户名和密码
From Another Linux Computer
- 打开 “File Manager”
- 前往 “Network”
- 在列表中查找您的 Ubuntu 计算机
- 打开 shared 共享文件夹,如果有提示,输入用户名和密码
Secure Samba Share
如果不希望每个人都访问该文件夹,可以在配置文件中设置 “guestok = no” 来禁用访客访问。
如果只允许某些用户访问该文件夹,可以在配置文件中设置 “valid users = sambauser“ 来限制用户。