在Ubuntu上搭建SMB服务器实现媒体共享 | AI生成和翻译

Home 2025.03

以下是在 Ubuntu 系统上搭建 SMB(服务器消息块)服务器用于共享媒体文件的分步指南。SMB 是一种允许在网络中共享文件的协议,非常适合向电脑、电视或移动设备等设备提供媒体内容。我们将使用 Samba(在 Linux 上提供 SMB 功能的软件)进行配置,并设置共享包含媒体文件的目录。


步骤 1:安装 Samba

首先,在 Ubuntu 系统上安装 Samba。打开终端并运行以下命令:

sudo apt update
sudo apt install samba

步骤 2:备份 Samba 配置文件

在进行更改之前,最好备份默认的 Samba 配置文件。运行:

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup

这将创建原始文件的副本(smb.conf.backup),以便在需要时恢复更改。


步骤 3:配置媒体共享

Samba 配置文件位于 /etc/samba/smb.conf。您需要编辑此文件以定义媒体文件的共享。在此示例中,假设您的媒体文件存储在 /home/user/media 目录中(请将 user 替换为您的实际用户名)。

  1. 在文本编辑器(如 nano)中打开配置文件:
    sudo nano /etc/samba/smb.conf
    
  2. 滚动到文件底部并添加以下部分:
    [media]
        path = /home/user/media
        browseable = yes
        read only = yes
        guest ok = yes
    
  3. 保存并退出:
    • nano 中,按 Ctrl+O,然后按 Enter 保存,再按 Ctrl+X 退出。

配置说明:


步骤 4:验证配置

为确保配置中没有语法错误,运行:

testparm

此命令检查 smb.conf 文件并显示加载的服务。如果没有错误,则可以继续。


步骤 5:重启 Samba 服务

Samba 运行两个服务:smbd(处理文件共享)和 nmbd(处理网络发现)。重启它们以应用更改:

sudo systemctl restart smbd
sudo systemctl restart nmbd

为确保这些服务在启动时自动运行(通常默认启用),可以运行:

sudo systemctl enable smbd
sudo systemctl enable nmbd

步骤 6:调整文件权限

要使访客访问正常工作,媒体目录及其文件必须对所有人可读。使用以下命令设置适当的权限:

sudo chmod -R 755 /home/user/media

步骤 7:配置防火墙

如果 Ubuntu 的防火墙(UFW)处于活动状态,您需要允许 SMB 流量。首先检查防火墙状态:

sudo ufw status

如果处于活动状态,打开必要的端口:

sudo ufw allow 139/tcp
sudo ufw allow 445/tcp
sudo ufw allow 137/udp
sudo ufw allow 138/udp

重新加载防火墙以应用更改:

sudo ufw reload

如果防火墙未启用,可以跳过此步骤。


步骤 8:测试 SMB 共享

您的 SMB 服务器现在应该正在运行。要进行测试:

  1. 查找 Ubuntu 机器的 IP 地址:
    ip addr show
    

    在网络接口(如 eth0wlan0)下查找 IP 地址(例如 192.168.1.100)。

  2. 从网络上的另一台设备(例如 Windows PC):
    • 打开文件资源管理器并输入:\\<ubuntu-ip-address>\media(例如 \\192.168.1.100\media)。
    • 您应该能看到媒体文件。由于启用了访客访问,无需登录。

故障排除提示

如果遇到问题:


命令摘要

以下是完整的命令序列:

sudo apt update
sudo apt install samba
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
sudo nano /etc/samba/smb.conf  # 添加 [media] 部分
testparm
sudo systemctl restart smbd
sudo systemctl restart nmbd
sudo chmod -R 755 /home/user/media
sudo ufw allow 139/tcp
sudo ufw allow 445/tcp
sudo ufw allow 137/udp
sudo ufw allow 138/udp
sudo ufw reload

您的 SMB 服务器现已设置完成,可以从 /home/user/media 共享媒体文件!使用 IP 地址和共享名称(\\<ip-address>\media)从网络上的任何设备访问它。


Back Donate