openEuler部署文件共享服务Samba

在openEuler上部署Samba文件共享服务

Samba是一个开源的SMB/CIFS协议实现,允许Linux系统与Windows系统之间进行文件和打印机共享。以下是在openEuler系统上部署Samba服务的详细步骤:

1. 安装Samba软件包

sudo dnf install samba samba-client samba-common

2. 配置Samba服务

备份原始配置文件

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

编辑Samba主配置文件

sudo vim /etc/samba/smb.conf

基本配置示例

[global]
    workgroup = WORKGROUP
    server string = Samba Server on openEuler
    netbios name = OPENEULER
    security = user
    map to guest = Bad User
    dns proxy = no

[shared]
    comment = Shared Directory
    path = /srv/samba/shared
    browseable = yes
    writable = yes
    guest ok = no
    read only = no
    create mask = 0775
    directory mask = 0775
    valid users = @smbgroup

3. 创建共享目录和设置权限

sudo mkdir -p /srv/samba/shared
sudo groupadd smbgroup
sudo chgrp smbgroup /srv/samba/shared
sudo chmod 2775 /srv/samba/shared

4. 创建Samba用户

# 首先创建系统用户
sudo useradd -G smbgroup smbuser

# 然后添加为Samba用户
sudo smbpasswd -a smbuser

5. 配置防火墙

sudo firewall-cmd --permanent --add-service=samba
sudo firewall-cmd --reload

6. 启动并启用Samba服务

sudo systemctl start smb nmb
sudo systemctl enable smb nmb

7. 验证Samba服务状态

sudo systemctl status smb nmb
sudo smbclient -L localhost -U smbuser

8. 客户端连接

Windows客户端:

在文件资源管理器地址栏输入: \\openEuler-IP\shared

Linux客户端:

sudo dnf install cifs-utils
mkdir ~/samba-share
sudo mount -t cifs -o username=smbuser //openEuler-IP/shared ~/samba-share

高级配置选项

匿名共享配置

[public]
    comment = Public Share
    path = /srv/samba/public
    browseable = yes
    writable = yes
    guest ok = yes
    read only = no

多用户访问控制

[department]
    comment = Department Share
    path = /srv/samba/department
    valid users = @dept1, @dept2
    write list = @dept1
    read list = @dept2

故障排除

  1. 检查Samba日志:
sudo tail -f /var/log/samba/log.smbd
  1. 测试配置文件语法:
sudo testparm
  1. 检查端口是否监听:
sudo ss -tulnp | grep smb

通过以上步骤,您应该可以在openEuler系统上成功部署Samba文件共享服务,实现与Windows和其他Linux系统的文件共享。