712 字
4 分钟
Samba配置

Samba 文件共享配置
场景说明
- 服务器: Linux1 (10.3.5.101)
- 共享目录: /srv/sharesmb
- 用户组: manager(读写)、dev(只读)
第一部分:Samba 服务器配置
1. 创建用户和组
# 创建批量用户脚本cat > a.sh << 'EOF'#!/bin/bashfor i in {00..19}do useradd -M -s /sbin/nologin user$idoneEOF
bash a.sh
# 创建用户组groupadd managergroupadd dev
# 添加用户到组usermod -aG manager user00usermod -aG manager user01usermod -aG dev user02usermod -aG dev user032. 添加 Samba 用户
# 批量添加 Samba 用户(密码:Key-1122)for i in {00..03}; do echo -e "Key-1122\nKey-1122" | pdbedit -a -u user$idone
# 或者单独添加smbpasswd -a user00smbpasswd -a user01smbpasswd -a user02smbpasswd -a user033. 配置本地 YUM 源
cd /etc/yum.repos.drm -rf *
# 创建本地源配置cat > local.repo << 'EOF'[AppStream]name=AppStreambaseurl=file:///mnt/AppStreamenabled=1gpgcheck=0
[BaseOS]name=BaseOSbaseurl=file:///mnt/BaseOSenabled=1gpgcheck=0EOF
# 挂载光盘mount /dev/cdrom /mnt4. 安装 Samba
dnf install samba samba-client -y5. 配置 Samba
vim /etc/samba/smb.conf在文件末尾添加:
[sharesmb] comment = Shared Directory path = /srv/sharesmb browseable = yes writable = yes write list = @manager read list = @dev create mask = 1755 directory mask = 1644 valid users = @manager, @dev参数说明:
write list = @manager- manager 组成员可写read list = @dev- dev 组成员只读create mask = 1755- 新建文件权限directory mask = 1644- 新建目录权限
6. 创建共享目录并设置权限
# 创建目录mkdir -p /srv/sharesmb
# 设置目录权限chmod -R 1755 /srv/sharesmb
# 设置属主和属组chown root:manager /srv/sharesmb
# 设置 SELinuxsetsebool -P samba_enable_home_dirs onsetsebool -P samba_export_all_rw on7. 启动服务
# 关闭防火墙(或放行 Samba)firewall-cmd --add-service=samba --permanentfirewall-cmd --reload
# 临时关闭 SELinux(测试用)setenforce 0
# 启动 Samba 服务systemctl restart smb nmbsystemctl enable smb nmb8. 测试配置
# 检查配置文件语法testparm
# 查看 Samba 用户pdbedit -L第二部分:Samba 客户端配置
1. 配置 YUM 源并安装客户端
cd /etc/yum.repos.drm -rf *
cat > local.repo << 'EOF'[AppStream]name=AppStreambaseurl=file:///mnt/AppStreamenabled=1gpgcheck=0
[BaseOS]name=BaseOSbaseurl=file:///mnt/BaseOSenabled=1gpgcheck=0EOF
mount /dev/cdrom /mnt
# 安装 CIFS 工具dnf install cifs-utils -y2. 创建挂载点
mkdir -p /sharesmb3. 配置自动挂载
vim /etc/fstab添加:
//10.3.5.101/sharesmb /sharesmb cifs username=user00,password=Key-1122,_netdev 0 0参数说明:
_netdev- 表示网络文件系统,网络就绪后才挂载username- Samba 用户名password- Samba 密码
4. 挂载共享
# 重新加载 systemdsystemctl daemon-reload
# 挂载所有配置mount -a
# 查看挂载情况df -h
# 测试访问ls /sharesmb常用命令
服务器端
# 查看 Samba 状态systemctl status smb
# 查看当前连接smbstatus
# 查看 Samba 用户列表pdbedit -L
# 删除 Samba 用户smbpasswd -x username客户端
# 查看服务器共享列表smbclient -L //10.3.5.101 -U user00
# 临时挂载mount -t cifs //10.3.5.101/sharesmb /mnt -o username=user00,password=Key-1122
# 卸载umount /sharesmb故障排查
| 问题 | 解决方法 |
|---|---|
| 无法连接 | 检查防火墙:firewall-cmd --list-all |
| 权限拒绝 | 检查 SELinux:getenforce 和 setenforce 0 |
| 认证失败 | 确认用户已添加:pdbedit -L |
| 无法写入 | 检查组权限:ls -la /srv/sharesmb |
| 挂载失败 | 检查网络连通性:ping 10.3.5.101 |
分享文章
生成精美分享图或复制链接,与更多人分享本文。
继续阅读
换条路线
从其他文章中稳定抽取
最后更新于 ,距今已过 194 天
部分内容可能已过时