samba 文件共享
[root@localhost yum.repos.d]# yum install -y samba-*
创建samba用户
[root@localhost ~]# useradd smb1
[root@localhost ~]# smbpasswd -a smb1 这是5/6老方式,不过7/8用起来也没问题,都可以
New SMB password:
Retype new SMB password:
Added user smb1.
用同样的方法创了smb2
也可以用pdbedit创建samba用户 这是7/8版本新的方式
[root@localhost ~]# pdbedit -a -u cy
new password:
retype new password:
Unix username: cy
NT username:
Account Flags: [U ]
User SID: S-1-5-21-2832360335-1615676532-2677418151-1002
Primary Group SID: S-1-5-21-2832360335-1615676532-2677418151-513
Full Name:
Home Directory: \\192\cy
HomeDir Drive:
Logon Script:
Profile Path: \\192\cy\profile
Domain: 192
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: 三, 06 2月 2036 10:06:39 EST
Kickoff time: 三, 06 2月 2036 10:06:39 EST
Password last set: 日, 08 1月 2023 01:20:45 EST
Password can change: 日, 08 1月 2023 01:20:45 EST
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
创建共享目录
[root@localhost ~]# mkdir -p /data/samb
根据情况给权限
[root@localhost ~]# chmod -R 755 /data/samba
[root@localhost ~]# vim /etc/samba/smb.conf
[global] 这个是全局参数配置
workgroup = SAMBA
security = user
passdb backend = tdbsam
从这里往下的内容都可以删掉,删完后再写共享文件参数内容
[sky] 共享文件名
path = /data/samba 共享文件路径
public = no 关闭所有人可见
writable = yes 允许所有人写入
注意,并不是打了这条就可随便写入了,只有文件本身权限允许写入的情况下才能写入
比如文件权限755 即使打了这条,使用smb1用户登进去也不能写入,文件权限为777时则可以写入
也可以将文件的所属用户和组改为相对应用户,更方便控制权限
重启和开机自启smb服务
[root@localhost ~]# systemctl restart smb
[root@localhost ~]# systemctl enable smb
验证
查看已有的samba用户
[root@localhost ~]# pdbedit -L
smb1:1001:
smb2:1002:
cy:1003:
创建的samba用户
[root@localhost ~]# smbclient -L //localhost -U smb1
Enter SAMBA\smb1's password:
Sharename Type Comment
--------- ---- -------
sky Disk 能看到这个就是正常的,刚刚的共享文件名
IPC$ IPC IPC Service (Samba 4.13.3)
SMB1 disabled -- no workgroup available
共享设置参数
[]
设置共享目录的共享名称。
commento =
设置共享目录的注释说明。
path =
设置共享目录的完整路径名称。
browseable =
设置在浏览资源时显示共享目录,显示yes,不显示no。
printable =
设置是否允许打印,允许yes,不允许no。
public = no
关闭 所有人可见
设置是否允许匿名用户访问共享资源,允许yes,不允许no。只有当设置参数security = share时此项才起作用。
guest ok =
设置是否允许匿名用户访问共享资源,允许yes,不允许no。和public起到一样的功能。只有当设置参数security = share时此项才起作用。
guest only =
设置是否只允许匿名用户访问,允许yes,不允许no。guest account。
指定访问共享目录的用户账户。
read only =
设置是否允许以只读方式读取目录,允许yes,不允许no。
writable =
设置是否允许以可写的方式修改目录,允许yes,不允许no。
vaild users =
设置只有此名单内的用户和组群才能访问共享资源。
invalid users =
设置只有此名单内的用户和组群不能访问共享资源,该参数要优先于vaild users参数的设置。
read list =
设置只有此名单内的用户和组群才能以只读方式访问共享资源。
write list =
设置只有此名单内的用户和组群才能以可写方式访问共享资源。
create modea =
定义用户在此共享资源中创建的文件的权限。类似于create mask。
例:create mode = 0664
directory mode =
在共享文档中创建的文件夹的权限。类似于directory mask。
directory mode =0775
force group =
设置默认创建的文件的组群。
force user =
设置默认创建的文件的所有者。
hosts allow =
设置只有此网段/IP地址的用户才能访问共享资源。
hosts deny =
设置只有此网段/P地址的用户不能访问共享资源。