服务器配置
- 查看是否有samba安装包
[root@wcluser ~]# rpm -qa | grep samba
samba-libs-4.10.4-1.el8.x86_64
samba-4.10.4-1.el8.x86_64 #服务器文件
samba-common-tools-4.10.4-1.el8.x86_64 #服务器和客户端都需要的文件
samba-client-libs-4.10.4-1.el8.x86_64
samba-client-4.10.4-1.el8.x86_64 #客户端文件
samba-common-4.10.4-1.el8.noarch
samba-common-libs-4.10.4-1.el8.x86_64
由于已经安装了samba-4.10.4-1.el8.x86_64所以可以直接启动服务
如果没有找到samba服务器文件则:yum install samba -y
- 开启samba服务
systemctl start smb #开启samba服务
systemctl enable smb #设置开机自启
- 编辑samba主配置文件
vim /etc/samba/smb.conf
[global]
workgroup = WORKGROUP #将SAMBA改为WORKGROUP
添加这个部分
[smbshare]
comment= Public samba share #解释说明
path= /usr/local/smbshare #共享目录绝对路径
public= yes #是否公开共享目录
writeable= yes #是否允许修改;在与z只读发生冲突时无视只读
browseable= yes #是否在浏览时显示共享目录,no为必须指定共享目录存取
guest ok= yes #是否公开;no必须进行访问认证(security=share此项才有作用)
useradd smbuser #创建samba用户
smbpasswd -a smbuser #设置samba用户的密码
New SMB password:
Retype new SMB password:
chmod 777 /usr/local/smbshare #给共享目录授权
保存退出,重启服务
客户端配置
- 创建samba用户
[root@wcluser ~]# useradd smbuser
[root@wcluser ~]# smbpasswd -L smbuser #设置samba用户密码
New SMB password:
- 如果已安装可以跳过此步骤
[root@wcluser ~]# yum install cifs-utils -y #安装smbclient拓展工具
- 挂载samba服务器
mount -t cifs -o //192.168.72.2/smbshare /root/smbclient/ #挂载smaba服务器
Password for smbuser@//192.168.72.2/smbshare: ****** #输入samba用户密码
/smbshare:samba服务器的共享目录
/root/smbclient:服务器的挂载目录
在挂载时可能会遇到这样的报错
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
解决办法
用户名和密码需要用双引号括起来
mount -t cifs -o username="域名/用户名",password="密码" //192.168.72.2/smbshare /root/smbclient
[root@wcluser ~]vim /etc/samba/smbuser.txt
username=用户名
password=密码
进入/etc/fstab中写入以下字段
[root@wcluser ~] vim /etc/fstab
//192.168.72.2/smbshare /root/smbclient cifs defaults,credentials=/etc/samba/smbuser.txt 0 0
[root@wcluser ~] mount -a
[root@wcluser ~]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 887M 0 887M 0% /dev
tmpfs tmpfs 904M 0 904M 0% /dev/shm
tmpfs tmpfs 904M 8.8M 895M 1% /run
tmpfs tmpfs 904M 0 904M 0% /sys/fs/cgroup
/dev/mapper/rhel-root xfs 17G 2.1G 15G 13% /
/dev/sr0 iso9660 7.4G 7.4G 0 100% /mnt
/dev/nvme0n1p1 xfs 1014M 176M 839M 18% /boot
tmpfs tmpfs 181M 0 181M 0% /run/user/0
//192.168.72.2/smbshare cifs 17G 2.1G 15G 13% /root/smbclient
客户端登陆时可能会遇到这样的报错
[root@wcluser ~]# smbclient -L //192.168.72.2 -U smbuser
protocol negotiation failed: NT_STATUS_IO_TIMEOUT
解决办法
vim /etc/hosts
输入主机名IP+hostname保存退出;再次尝试即可
- 测试samba服务器
向smbshare中添加一个文件
[root@wcluser smbclient]# cd /usr/local/smbshare/
[root@wcluser smbshare]# vim 1.txt
[root@wcluser smbshare]# echo '123456' > 1.txt
在挂载目录查看是否有添加的测试文件
[root@wcluser smbshare]# cd /root/smbclient/
[root@wcluser smbclient]# ls
1.txt