linux实现文件共享samba,Linux环境下实现SAMBA服务文件共享[通俗易懂]

linux实现文件共享samba,Linux环境下实现SAMBA服务文件共享[通俗易懂]一、实现SMB共享1、在服务器安装软件包yum-yinstallsamba2、创建samba用户和组groudadd-radminsuseralfa-Gadmins-s/sbin/nologinsmbpasswd-aalfauseaddbmw-s/sbin/nologinsmbpasswd-abmw3、创建samba共享目录,并设置SElinux新建一个目录或者用…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、实现SMB共享

1、在服务器安装软件包

yum -y install samba

2、创建samba用户和组

groudadd -r admins

user alfa -G admins -s /sbin/nologin

smbpasswd -a alfa

useadd bmw -s /sbin/nologin

smbpasswd -a bmw

9174be27e20bb1babe16ee6426cadd60.png

3、创建samba共享目录,并设置SElinux

新建一个目录或者用设置已存在的目录

chgrp admins /app/scripts

chmod 2775 /app/scripts  —–>在此目录新建的文件全部修改组属性为admins

c5d2d59156e6a098a39ff8d58d5794d8.png

semanage fcontext -a -t samba_share_t’/app/scripts(/.*)?’ 增加目录的默认安全上下文类型设置

restorecon -vvFR /app/scripts 恢复SELinux文件属性即恢复文件的安全上下文

4、samba服务器配置

vim /etc/samba/smb.conf

14bfd3b757bdbf5452c8373acca7c346.png

修改完成后systemctl start nmb smb,systemctl enable smb nmb

防火墙设置

firewall-cmd –permanent –add-service=samba

firewall-cmd –reload

044beb4170dd71a3c844759fd343f46c.png

此步完成后,由于虚拟机是仅主机模式,此时windows已可访问

9ea30fc525c164b471b3fbaa257729a0.png

5、samba客户端访问

(1)安装包

yum -y install cifs-utils

(2)用alfa用户挂载smb共享并访问

不挂载情况访问:smbclient -U alfa //192.168.239.70/share

(3)用bmw用户挂载smb共享并访问

c50497e5b248c6236131ae1a039c9c28.png

a1c2bb361bd3bc65161afec2a1cc9022.png

二、多用户挂载和共享目录文件权限

samba共享默认支持同时用一个用户挂载SMB共享

CentOS7中可启用多用户挂载功能

客户端挂载samba共享目录后,在客户端登录的不同用户访问同一个samba的挂载点,可获得不同权限

1、创建用户、创建组

a0c975d7bb95a49bb6582ff6e4bd9818.png

同时将用户设置为samba用户

smbpasswd -a smbadmin ——->需要建立进入samba服务器的一个账号

smbpasswd -a apple

smbpasswd -a banana

2、创建共享目录,并修改/etc/samba/smb.conf配置文件

39e016d14eab76127b574cdc40f38bd3.png

每个[ ]内都是一项共享名称,共享名称下部的功能选项

504605f5ae1dc98d8269a5592e0cdda6.png

3、创建目录,并设置权限

mkdir -p /share/sharegrp1

setfacl -m u:apple:rwx /share/sharegrp1

setfacl -m g:admins:rwx /share/sharegrp1

0d4740e1a899792a03f570a134ecbe0f.png

如果selinux打开情况下需要设置

semanage fcontext -a -t samba_share_t ‘/share/sharegrp1 (/.*)?’

restorecon /share/sharegrp1

设置完成后重启samba服务,systemctl restart smb

4、设置客户机目录

yum -y install cifs-utils

mkdir /mnt/share

将samba服务器设置的账号(就是第1步中建立的smbadmin账户,只填写它的账户和密码就可以)密码写入一个文件中,并设置600权限

efe3ac620be112942241fa03e61bdf2d.png

5、挂载

2596165ed67b032bd0db6bd9e9e40c4d.png

挂载完成后mount -a

6、客户端实现多用户访问

useradd apple

useradd banana

196afa46d885542a462d55d80f5ffc59.png

注意:成功以后,发现别人可以删除自己的文件,这不符合工作中的要求,为了实现合理的自己只能删除自己的文件,这里将继续下一步的操作

7、新建共享组sharegrp2,服务器修改配置文件

f2d9c49004330d6e198d037d08eaa47a.png

8、新建目录,设置权限

对建立好的目录设置权限

bb6572bdbd306caf3454e8d0340e94c1.png

对目录改权限,让用户apple和banana对目录有7权限(如果用户多,可以将用户放到组里,更改组权限),最后chmod o+t /share/sharegrp2,对目录添加粘滞键,用户新建修改删除只能作用于自己的目录,他人的目录只能读

9、测试

测试前依然需要切换到相应的用户并输入指令

cifscreds add -u apple 192.168.239.70

cifscreds add -u banana 192.168.239.70

f1e138d75f550df4c1ae967b311f09b0.png

banana用户的文件apple用户不能删除不能修改,只能查看

由此可见,实现文件权限的方式是samba选项中的writable、read only等选项与文件系统权限的交集

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/190055.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 使用Fastjson生成Json字符串少字段属性(数据丢失)「建议收藏」

    在开发中经常要使用到fastJson来转换对象为json 串,但是最近发现在一个对象转换的时候,总是丢失了一个字段的值,(数据丢失).就很纳闷。到网上找了很多方法总是不行,最后总算是在一篇博文中看到问题的关键!现在整理如下,希望可以帮助到更多的人。package per.eblink.pojo; public class Node { private String id

  • ActiveX控件开发流程[通俗易懂]

    ActiveX控件开发流程[通俗易懂]ActiveX控件是注册到电脑上的一个注册库文件,以ocx和dll结尾,可供第三方程序下载和在本地调用接口。下面和大家分享一下怎么通过visualstudio2010创建一个Activex工程以及怎么在ActiveX中添加自己的方法。工具/原料 电脑 visualstudio2010 1、创建OCX工程步骤 1 运行visualstudio2010 …

  • vs2005注册_vs注册界面设计

    vs2005注册_vs注册界面设计注册码:KYTYH-TQKW6-VWPBQ-DKC8F-HWC4J找到SETUP文件夹下的setup.sdb,用记事本打开它,找到[ProductKey],将下面的一行序列号删除,改为正式Key,保存后再安装就是正式版了,记住,中间没有横线!!如果先前已经安装好180天的版本,请在添加删除VisualStudio2005时,可以输入序列号,进行升级。找到SETUP文件夹下的setup.

  • spring-boot-start 找pom配置链接地址

    spring-boot-start 找pom配置链接地址spring-boot-start 找pom配置链接地址

  • cubieboard boot过程

    cubieboard boot过程A10的启动过程大概可分为5步:BootRom,SPL,Uboot,Kernel,RootFileSystem。本文只关注镜像的加载过程,分析RootRom->SPL->Uboot的启动流程。系统上电后,ARM处理器在复位时从地址0x000000开始执行指令,把板上ROM或Flash映射到这一地址。A10将启动设备选择程序固化在CPU内部的一个32KBROM中,默认的启动时序为SD

  • mysql econnreset_node使用knex连接mysql,每个小时大概率出现:read ECONNRESET?

    mysql econnreset_node使用knex连接mysql,每个小时大概率出现:read ECONNRESET?我有一个node程序每小时查询一次本地数据库马上再查询一次内网数据库,仅在查询内网数据库时出现readECONNRESET。使用npm库knex+mysql2连接数据库,knex配置如下(有使用连接池)require(‘knex’)({client:’mysql2′,connection:{host:’127.0.0.1′,user:’your_database_user’,pass…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号