转自

用Centos7搭建小微企业Samba文件共享服务器 - 今日头条(www.toutiao.com)
http://www.toutiao.com/i6436937837660078593/

最近研究了一下Linux用户权限和Samba文件共享,为了便于学习,通过一个实例来实现文件共享功能。

假设一个场景,某小微企业共有6人,其中4人为普通员工(user1-user4),2人为管理员(manager1,manager2)。为了便于工作,建立一个基于Centos7 的文件共享服务器,服务器上进行文件存储、交换和发布。具体要求为:

1、 每个用户(user、manager)都有自己独立的文件夹,只能自己访问,其他人不能访问;

2、 建立一个交互文件夹,用于文件交互,每个人都可以上传、下载、删除;

3、 建立一个文件发布文件夹,用户文档发布,所有人都能访问、下载,但只有manager用户只能上传。

Smba需求设计

具体实现方法为:

1、 安装samba

# yum -y install samba

2、 在服务器上创建相应的目录

#mkdir smb 将所有文件放在/home/smb/下

#cd smb/

#mkdir sharedocs publish user1 user2 user3 user4 manager1 manager2

3、 添加用户组

我们将普通员工放在Group_user组里,管理员放在Group_manager组里

# groupadd Group_manager

# groupadd Group_user

4、 添加用户

adduser -g Group_user -d /home/smb/user1 -s /sbin/nologin user1

注:-g 添加用户的所属组

–G 指定一个或多个扩展用户组

-d 指定家目录位置

-s 所用的SHELL,/sbin/nologin是特殊的SHELL,表示该用户不能用于登陆系统

以上实现添加用户user1到组Group_user里,并且禁止登陆系统,以此类推添加其他用户

5、 添加samba用户,并设置密码

# smbpasswd -a user1

New SMB password:在这里添加user1的密码

Retype new SMB password:重复秘密

以此类推添加其他用户密码

6、 配置相关目录的权限和归属

#chmod -R 777 /home/smb/sharedocs

#chmod -R 777 /home/smb/publish

查看权限

#ls -ald !$ 注意!$表示上一条命令中最后一个参数

ls -ald /home/smb/sharedocs

drwxrwxrwx. 2 root root 6 6月 27 12:39 /home/smb/sharedocs

7、 配置smb.conf

vim /etc/samba/smb.conf 在smb.conf中添加以下内容

[sharedocs]

comment=Sharedocs

path=/home/smb/sharedocs

readonly=yes

write list = @Group_user,@Group_manager

create mask = 0775

directory mask = 0775

[publish]

comment=Publish

path=/home/smb/publish

readonly=yes

write list =@Group_manager

create mask = 0775

directory mask = 0775

8、 关闭selinux和防火墙

# setenforce 0 临时关闭selinux

#systemctl stop firewalld.service 停止防火墙

#systemctl disable firewalld.service禁用防火墙

9、 Windows下登陆

登陆

如图,登陆samba服务器地址,然后输入用户名和密码,即可登陆。

登陆成功

另,测试中一旦用Windows登陆Samba,下次在登陆时仍保持上一次的用户名,可使用

net use * /del /y 清除Samba登陆信息

用Centos7搭建小微企业Samba文件共享服务器【转】的更多相关文章

  1. Linux 下安装Samba 文件共享服务器

    samba文件共享服务可以让linux和linux系统.linux和windows系统之间共享文件 服务查询 默认情况下,Linux系统在默认安装中已经安装了Samba服务包的一部分,为了对整个过程有 ...

  2. Samba - 文件共享服务器的搭建和配置

    下载与安装: deb包安装 官方deb包下载:http://packages.ubuntu.com/ 命令安装dpkg –i xxxx.deb (安装不成功留意日志安装依赖包) apt安装 apt-g ...

  3. centos7搭建基于SAMBA的网络存储

    学习目标: 通过本实验理解Linux系统下SAMBA服务器和客户端的配置,实现客户机可自动挂载服务端的共享存储. 操作步骤: 1.  SAMBA服务器搭建 2.  SAMBA客户端配置 参考命令:   ...

  4. Centos7搭建内网DNS服务器

      一.配置阿里云yum源 执行脚本配置阿里云的yum源,已配置yum源的可以忽略 #!/bin/bash # ******************************************** ...

  5. Ubuntu配置Samba文件共享服务器

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通 ...

  6. Centos7搭建redis,同一服务器启动两个端口的redis

    1.安装redis [1]下载安装包 #准备安装文件夹 mkdir /usr/local/soft/redis #进入文件夹 cd /usr/local/soft/redis #下载安装包 wget ...

  7. samba + OPENldap 搭建文件共享服务器

    samba + OPENldap 搭建文件共享服务器 这里我使用的是 samba(文件共享服务) v4.9.1 + OPENldap(后端数据库软件) v2.4.44 + smbldap-tools( ...

  8. Centos7搭建FTP服务器

    从网上搜索了好多搭建Centos7搭建服务器的教程都没有成功唯独这个,利用Windows资源管理器连接测试成功. 一.通过yum安装vsftpd yum install -y vsftpd 二.修改v ...

  9. CentOS7 搭建 SVN 服务器

    CentOS7 搭建 SVN 服务器 介绍SVN: SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上 ...

随机推荐

  1. P2762 太空飞行计划问题(网络流24题之一)

    题目描述 W 教授正在为国家航天中心计划一系列的太空飞行.每次太空飞行可进行一系列商业性实验而获取利润.现已确定了一个可供选择的实验集合E={E1,E2,…,Em},和进行这些实验需要使用的全部仪器的 ...

  2. TortoiseSVN 和 VisualSVN Server 使用教程

    TortoiseSVN 和 VisualSVN Server 使用教程 来源 https://blog.csdn.net/xgf415/article/details/75196360 目录: SVN ...

  3. Eve-NG-Toolkit

    Eve-NG-Toolkit 来源 http://www.emulatedlab.com/archives/694 参考 http://eve-ng.cn/doku.php   http://foru ...

  4. 【BZOJ3105】新Nim游戏(线性基)

    [BZOJ3105]新Nim游戏(线性基) 题面 BZOJ Description 传统的Nim游戏是这样的:有一些火柴堆,每堆都有若干根火柴(不同堆的火柴数量可以不同).两个游戏者轮流操作,每次可以 ...

  5. Codeforces 601D. Acyclic Organic Compounds(四个愿望一次满足)

    trie合并的裸题...因为最多只有n个点,所以最多合并n次,复杂度$O(N*26)$. #include<iostream> #include<cstring> #inclu ...

  6. mysql四-2:多表查询

    一 介绍 本节主题 多表连接查询 复合条件连接查询 子查询 准备表 #建表 create table department( id int, name varchar(20) ); create ta ...

  7. C++调用函数模仿数字钟表

    调用系统函数,可以得到系统时间 #include<iostream> #include<windows.h> #include<time.h> using name ...

  8. 深入分析Java中的 == 和equals

    关于Java中的 == 和equals的解释请看这位博主的文章 :http://www.cnblogs.com/dolphin0520/p/3592500.html 以下是我对这篇文章的一些扩展. 对 ...

  9. libcurl移植到android

    一.总体概览 C库:libcurl 3.7 目标平台:android 编译平台:ubuntu 12 编译工具:ndk r7 or later 二.已知方法 1. 官网上给了两种方法,第一种方法是使用a ...

  10. 封装-python

    六 封装 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,还有alex一起装进麻袋,然后把麻袋封上口子.但其实这种理解相当片面 首先我们要了解 回到顶部 6.1 要封装什么 你 ...