Samba服务

Samba服务 用于 Windows 与 Linux 跨平台的共享。

Server服务器:

壹-安装软件、添加账户:

[root@server ~]# yum -y install samba

专门用于 Samba 服务验证的用户称为 Samba 共享账户。
专门用于 Samba 服务验证的用户密码: Samba 独立的密码与系统密码不同。

[root@server ~]# useradd harry
[root@server ~]# pdbedit -a harry
new password:
retype new password:

上面新增一个用户,并将该用户添加为了 samba 的账号。

贰-修改配置文件:
共享名:客户端通过网络看到的命令,可以与文件名相同,也可以不同。

[root@server ~]# mkdir /samba_service
[root@server ~]# echo abc > /samba_service/1.txt
[root@server ~]# vim /etc/samba/smb.conf
--snip--
# 新增内容到全文末尾
[the_samba_service]
path = /samba_service

# 表示实际的共享路径是 /samba_service共享名是 the_samba_service

重启 smb 服务

[root@server ~]# systemctl restart smb

Windows客户端:

这里使用的服务器的ip地址是 192.168.10.10 使用Windows来进行访问的时候在前面加上两个放斜杠 \\\\192.168.10.10

当访问正确会得到如下的界面,访问失败的情况是有可能发生的这时候需要重启windows客户端。

这里的账户就是之前samba服务的专有账户,由于Windows系统的缓存原因即使是第二次输入同样的效果也会报错,这依旧需要重启Windows客户端。

访问的效果如下:


Linux系统的客户端:

samba同时也支持与NFS一样的Linux与Linux之间的文件共享。

壹-安装 cifs-utils 软件:用于支持 cifs 文件系统

[root@localhosr ~]# yum -y install cifs-utils

贰-挂载访问:
Samba 共享格式

mount -o username=用户名,password=密码  //地址/共享名  挂载点
[root@localhost ~]# mount -o username=harry,password=123 //192.168.10.10/dc /mnt

SELinux 布尔值(功能开关)
当访问没有权限这与 selinux 有关:

[root@server ~]# getsebool -a | grep samba
[root@server ~]# setsebool samba_export_all_ro=on
[root@server ~]# getsebool -a | grep samba

客户端的自动挂载:

[root@localhost ~]# vim /etc/fstab
--snip--
//192.168.10.10/dc /mnt defaults,_netdev,user=harry,pass=123 0 0

这样Linux客户端就可以samba服务了。

对于自动挂载方面可以写一个专门的认证文件,用于方便管理。

[root@localhost ~]# vim auth.smb
username=harry
password=123

这里写了一个 auth.smb 的认证文件,现在 fstab 文件中使用该认证文件

[root@localhost ~]# vim /etc/fstab
--snip--
//192.168.10.10/the_samba_service /mnt cifs credentials=/root/auth.smb 0 0

最后对于认证文件来说可以将文件改为 600 权限,只让root用户有读r4和写w2的权限

[root@localhost ~]# chmod 600 auth.smb
posted @ 2024-08-06 13:26  takenika  阅读(37)  评论(0)    收藏  举报