samba共享服务-多用户挂载smb共享

1、服务端部署, 在 system1 上执行:

1.1 安装软件包并确保服务开机启动

root@system1 \~# yum install samba samba‐client ‐y

root@system1 \~# systemctl enable smb.service nmb.service

1.2 设定防火墙

root@system1 \~# firewall‐cmd ‐‐permanent ‐‐add‐service=samba

root@system1 \~# firewall‐cmd ‐‐reload

1.3编辑配置文件

root@system1**** ****\~# vim /etc/samba/smb.conf

(按大写字母G 键来到文件底部,然后按字母o 键在新的一行添加以下配置)

devops 客户端访问的共享名

path = /devops 指定共享目录的路径

hosts allow = 172.24.8. 定义可访问这个共享主机

browseable = yes 是否允许所有用户浏览此共享,默认为yes,no为隐藏

writable = no < ‐‐‐‐‐ writ e able 是等价的,设置是否开放共享目录可写的权限,默认不开启

write list = akira 指定用可写用户列表,多用户时,用短号分隔

# read only = no 和writable=no等价

# display charset = UTF-8 编码设置

# unix charset = UTF-8

# create mode = 0777

# force create mode = 0 777

create mode:这个配置定义新创建文件的属性。Samba在新建文件时,会把dos文件的权限映射成对应的unix权限,在映射后所得的权限,会与这个参数所定义的值进行与操作。然后再和下面的force create mode进行或操作,这样就得到最终linux下的文件权限。force create mode相当于此参数所设置的权限位一定会出现在文件属性中;将权限设置成0777时,不同用户创建的文件均可被其他用户读写操作。

# directory mode = 0777

# force directory mode = 0 777

directory mode :这个配置与create mode参数类似,只是它是应用在新创建的目录上。Samba在新建目录时,会把dos-->linux映射后的文件属性,与此参数所定义的值相与,再和force directory mode相或,然后按这个值去设置目录属性;将权限设置成0777时,不同用户创建的文件均可被其他用户读写操作。

# create mask = 0644 在网络上新建文件的初始权限,只有writeable=yes时预设值才有效。

# directory mask = 0755 在网络上新建目录的初始权限,只有writeable=yes时预设值才有效。

# valid users = fred 指定允许访问共享的用户列表,如果为空,表示谁都可访问,多用户时用用短号分隔

# comment = Printer Drivers 共享描述

# public = yes/no public用来指定该共享是否允许guest账户访问。

# guest ok = yes/no 意义同"public"。

1.4 建立用户

root@system1**** ****\~# useradd -s /sbin/nologin silene

root@system1**** ****\~# useradd -s /sbin/nologin akira

root@system1**** ****\~# smbpasswd ‐ a silene

New SMB password: redhat

Retype new SMB password: redhat

Added user silene.

root@system1**** ****\~# smbpasswd ‐ a akira

New SMB password: redhat

Retype new SMB password: redhat

Added user akira.

root@system1 \~# pdbedit --L *列出smb用戶

注:printf "passwd\npasswd\n" | smbpasswd -a -s akira 一次性配置密码

1.5设定目录并设定selinux

root@system1**** ****\~# mkdir /devops

root@system1**** ****\~# semanage fcontext ‐ a ‐ t 'samba_share_t' '/devops(/.*)?'

root@system1**** ****\~# restorecon ‐Rv /devops

root@system1**** ****\~# setfacl ‐ R m u:akira:rwx /devops/

注:-R 递归修改目录及目录所有权限

1.6 重启服务

root@system1**** ****\~# systemctl restart smb nmb

2、客户验证,在system2 上执行

2.1安装软件

root@system2**** ****\~# yum install cifs ‐ utils ‐y

2.2建立挂载点

root@system2**** ****\~# mkdir /mnt/dev

2.3查看共享

root@system2**** ****\~# smbclient ‐ L //172.24.8.11/ ‐ U silene

Enter silene's password:

...

Sharename Type Comment

‐‐‐‐‐‐‐‐‐ ‐‐‐‐ ‐‐‐‐‐‐‐

Common Disk

Devops Disk

2.4编辑fstab 增加持久挂载

root@system2**** ****\~# vim /etc/fstab

.....在文件最后一行增加以下配置....

//172.24.8.11/devops / mnt/dev cifs defaults,multiuser,username=silene,password=redhat,sec=ntlmssp 0 0

以读写模式临时挂:

mount -t cifs -o username=smbuser,password='hangshu',iocharset=utf8,dir_mode=0777,file_mode=0777 / /172.24.8.11/devops / / mnt/dev

2.5测试

root@system2**** ****\~# mount ‐ a

root@system2**** ****\~# df ‐h

......

//172.24.8.11/devops 9.8G 3.2G 6.7G 32% /mnt/dev

root@system2**** ****\~# su ‐ silene

‐ bash ‐ 4.2$ cd /mnt/dev

‐ bash ‐ 4.2$ cifscreds add 172.24.8.11

Password:

‐ bash ‐ 4.2$ touch testfile

touch: cannot touch 'testfile': Permission denied <‐‐‐‐ 可以读但不能写

‐ bash ‐ 4.2$ exit

root@system2**** ****\~# su ‐ akira

‐ bash ‐ 4.2$ cd /mnt/dev

‐ bash ‐ 4.2$ cifscreds add 172.24.8.11

Password:

‐ bash ‐ 4.2$ ls

‐ bash ‐ 4.2$ touch testfile < ‐‐‐ 可以创建文件

‐ bash ‐ 4.2$ ls

testfile

‐ bash ‐ 4.2$ exit

相关推荐
xixiaoyunya7 小时前
虚拟机备份怎么做:镜像级与文件级搭配的完整实操方案
linux·运维·网络
墨家句子7 小时前
服务器被反复尝试登录之后:fail2ban 加密钥登录的五道加固
linux·后端
阿明68 小时前
进程替换【Linux】
linux·运维·服务器
sunoo-2298 小时前
【嵌入式Linux驱动学习】Day1-Day2 全流程梳理:环境搭建→U-Boot→内核→根文件系统→驱动基础
linux·运维·驱动开发·笔记·学习·阿里云·恩智浦
YonyouHRSaaS8 小时前
从安全、信创、运维三方面看,人力资源管理系统哪种部署方式更适合企业HR?
运维·安全·hr系统·人力资源管理系统·hr saas·人事管理系统
啦啦啦啦啦zzzz9 小时前
一致性哈希
服务器·算法·哈希算法·c++20·分布式存储
倔强的石头1069 小时前
【Linux指南】动静态库系列(十二):库工程发布与错误排查:从能跑到可维护
linux·运维·服务器
wdfk_prog9 小时前
LWIP教程 03:从 `low_level_input()` 到 `pbuf_free()`——`pbuf` 的数据视图、Chain 与引用计数
运维·网络·笔记·学习
掉进电商坑三年没爬出来的东叔9 小时前
云服务器搭建个人网站实战:从零到公网访问,含域名HTTPS
运维·服务器·https
xiaoye-duck9 小时前
《Linux 网络编程》深入理解 epoll(上):从接口到底层内核工作机制剖析
linux·网络