Rocky8下的文件共享
一 、samba简介
-
samba主要是用来实现 Linux与windows之间的文件共享
-
samba是基于 NetBios协议 ,每台samba主机必须有一个唯一的NetBios Name,samba主机之间通过这个NetBios Name进行通信。
-
samba服务启动的时候至少启动两个服务,nmbd和smbd,nmbd主要用来做NetBios Name的解析,然后剩下的操作都是由smbd服务来管理的
-
samba采用的是TDB的数据格式,samba服务还有一个作用就是不同的samba用户去访问可以获得不同的数据。
二、samba安装
准备环境:
一台安装好的Rocky8 Linux保证能访问互联网
安装步骤:
1、关闭selinux、关闭防火墙
[root@localhost ~]# sed -i 's/enforcing/disabled/g' /etc/selinux/config
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl disable firewalld --now
2、安装smb
[root@localhost ~]# dnf -y install samba
3、创建samba系统用户并为系统用户设置密码
[root@localhost ~]# useradd zxp
[root@localhost ~]# id zxp
uid=1000(lichao) gid=1000(lichao) groups=1000(lichao)
[root@localhost ~]# smbpasswd -a zxp
New SMB password:
Retype new SMB password:
Added user zxp.
[root@localhost ~]#
4、创建共享文件夹并修改属主
[root@localhost ~]# mkdir -p /opt/shared/zxp
[root@localhost ~]# chown lichao /opt/shared/zxp
5、在/etc/samba/smb.conf配置文件下加入指定共享的用户和目录
[XXX] path=XXX (共享目录) Valid users = XXX (允许哪个用户能够访问)
read only =no 允许写
[root@localhost ~]# tee >> /etc/samba/smb.conf <<-'EOF'
[lichao]
path = /opt/shared/zxp
valid users = zxp
read only = No
EOF
6、启动samba服务并配置开机自启
[root@localhost ~]# systemctl enable smb nmb --now
配置文件其它项参考:
[Global]:这是一个配置区域,用于定义全局的Samba选项。
workgroup = MYGROUP:定义了Samba服务器所属的工作组名称。
netbios name = MYSERVER:定义了此Samba服务器在网络上的名称。
server string = %h server (Samba %v) %S:描述服务器的字符串,其中%h是主机名,%v是Samba版本,%S是当前section的名称。
security = user:定义了安全模式。user模式要求每个用户在Samba服务器上都有一个账户。
map to guest = bad user:当一个用户没有在Samba服务器上的账户时,他们将被映射到“guest”用户。
usershare allow guests = yes:允许用户共享允许访客访问。
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192:设置套接字的选项。TCP_NODELAY禁用Nagle算法,从而提高数据传输的实时性。SO_RCVBUF和SO_SNDBUF设置接收和发送缓冲区的大小。
[homes]:定义用户的个人主目录共享。
comment = Home Directories:描述此部分的注释。
browseable = yes:目录对其他用户可见。
writable = yes:允许其他用户写入。
[printers] 和 [print$]:定义打印机共享。
[ftpdir]:定义一个FTP服务器共享。这通常不与Samba相关,但可能是为了集成其他FTP服务。
include = /etc/samba/smb.conf.d/:包含在指定目录中的所有.conf文件。这是一个常见的做法,用于组织大量的配置或分离配置到多个文件中。
[homes] 和 [printers] 的重复定义:这些可能是复制的,或者是为了演示目的而包括的。在实际配置中,应该避免重复定义相同的部分。
注释:对配置文件的总结或备注。
# The following are examples of different ways to use the include option: 这是一条注释,说明如何使用include选项来包含其他配置文件。
include = /etc/samba/smb.conf.d/customercerts.ldif: 包含一个特定的LDIF文件,通常用于定义LDAP目录中的用户和组。这可能是为了与LDAP集成或提供额外的认证方法。
include = /etc/samba/smb.conf.d/servercert.ldif: 类似地,这可能包含服务器的证书信息,用于SSL/TLS加密连接。
三、测试
win+r打开

输入密码:
