示例---普通用户之间的文件共享:
假设公司有2个项目组,共享同一台服务器。

1.为两个项目组各创建一个用户:

useradd leo01
useradd leo02

2.为两个新用户设置密码:

passwd leo01
passwd leo02

3.在这种情况下,各个用户只能自己访问自己的家目录,无法互相访问。只有root用户可以随意访问普通用户的home目录。

4.创建一个共享目录叫share:

cd /
mkdir share

此时share目录的状态为:

drwxr-xr-x     root root     Oct  : share

我们可以看到,由root用户创建的share目录所属root用户,组也是root组。

5.创建一个组,将leo01和leo02用户都加到这个组里:

groupadd leoshare
usermod -a -G leoshare leo01
usermod -a -G leoshare leo02

查看一下用户状态:

id leo01

状态为:

uid=(leo01) gid=(leo01) groups=(leo01),(leoshare)

6.将共享目录share的所属组修改为leoshare组:

chown root:leoshare share
drwxr-xr-x     root leoshare     Oct  : share

7.还需要修改该文件夹的组权限以及其他用户权限:

chmod g+w share
chmod o-rx share

对组加上写权限,对其他用户减去读和进入目录的权限(对于目录来说,x权限即是打开进入目录的权限)。

drwxrwx---     root leoshare     Oct  : share

此时,用户leo01和leo02都可以对该文件夹进行访问读写,将需要互通的文件和数据放入该目录,就实现了共享。

8.重新连接leo01和leo02用户(很重要,因为如果leo01和leo02是在修改share目录权限只前登陆的,权限设置没有刷新,会导致无法访问,重新登陆该用户后就可以了)

9.我们使用leo01用户在share中创建一个文件a.txt

cd /share
vi a.txt

当我们使用leo02用户来修改a.txt时,会提示无法保存,文件为只读状态。

查看一下文件的元数据:

-rw-rw-r--  leo01 leo01  Oct  : a.txt

我们发现该文件所属组为leo01,而不是leoshare,对其他用户的权限为只读,所以leo02没有权限修改。

10.要让leo02能够修改,则需要将文件的组权限修改为leoshare所有:

chown leo01:leoshare a.txt

修改之后,leo02就可以对a.txt进行修改了。

11.除了10中所述的修改组权限,也可以修改其他用户权限为rw模式,因为父目录share已经阻止了除leo01和leo02的其他用户进入。

chmod  a.txt
-rw-rw-rw-  leo01 leo01  Oct  : a.txt

[Linux系统] (2)用户权限管理的更多相关文章

  1. linux学习17 运维核心技能-Linux系统下用户权限管理

    一.权限管理 1.ls -l rwxrwxrwx 左三位:定义user(owner)的权限 中三位:定义group的权限 右三位:定义other的权限 1.进程安全上下文 a.进程对文件的访问权限应用 ...

  2. 【Linux】sudo用户权限管理

    权力下放 一.权力分配- sudo Sudo是Unix/Linux平台上的一个非常有用的工具,它允许系统管理员分配给普通用户一些合理的"权力",让 他们执行一些只有超级用户或其他特 ...

  3. Linux命令之用户权限管理

    1.创建组.删除组.修改组名.查看组 groupadd 组名 #添加用户组 groupdel 组名 #删除用户组 groupmod -n 新组名 原组名 #修改用户组名称 groups 用户名 #查看 ...

  4. Linux系统下用户与组的管理

    Linux系统下用户与组的管理 一.用户及组基本概述 Linux 系统上,用户管理是基于用户名和密码的方式进行资源的分配. 1.uid(用户身份标识) (1)root用户 uid为0 (2)普通用户: ...

  5. Linux 服务器用户权限管理改造方案与实施项目

    Linux 服务器用户权限管理改造方案与实施项目 在了解公司业务流程后,提出权限整改方案改进公司超级权限root泛滥的现状. 我首先撰写方案后,给boss看,取得boss的支持后,召集大家开会讨论. ...

  6. Linux下安装SVN,仓库创建,用户权限管理

    Exported from Notepad++           Linux下安装SVN,仓库创建,用户权限管理 1.SVN安装 Ubuntu系统下安装:sudoapt-getinstallsubv ...

  7. Linux常用命令之用户权限管理chmod、chown、chgrp、umask命令讲解

    这节课我们重点来学习权限管理命令,说到权限大家可能第一时间能想到的就是读.写.执行 rwx 三种权限,在正式讲解权限命令之前,先简单的介绍一下rwx权限对于文件和目录的不同含义. 权限字符 权限 对文 ...

  8. linux 用户管理,用户权限管理,用户组管理

    linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...

  9. linux系统下的权限知识梳理

    下面对linux系统下的有关权限操作命令进行了梳理总结,并配合简单实例进行说明.linux中除了常见的读(r).写(w).执行(x)权限以外,还有其他的一些特殊或隐藏权限,熟练掌握这些权限知识的使用, ...

随机推荐

  1. [转帖]Unix版权史

    Unix版权史   http://www.ruanyifeng.com/blog/2010/03/unix_copyright_history.html 阮一峰的blog 里面写到了 system V ...

  2. 关于8086中的jmp near ptr原理

    在8086汇编语言中.jmp 0x7c41 自己跳转到自己的位置,是一个死循环代码.对应的机器指令是e9fdffe9是跳转  fdff其实应该是fffd 也就是-3的补码. 执行到e9fdff相当于把 ...

  3. 设计模式:模板方法(Template method)

    首先我们先来看两个例子:冲咖啡和泡茶.冲咖啡和泡茶的基本流程如下: 所以用代码来创建如下: 咖啡:Caffee.java public class Coffee { void prepareRecip ...

  4. 用Python快速找到出现次数最多的数据

    给你一个文件,每行一个iip?

  5. Codeforces 1194C. From S To T

    传送门 首先贪心, $S$ 能和 $T$ 匹配就要尽量匹配,剩下的才让 $P$ 来补 在 $S$ 全部匹配上的情况下,看看 $P$ 是否有足够的字符即可 #include<iostream> ...

  6. Mysql主从分离介绍及实现

    参考: http://www.cnblogs.com/panxuejun/p/5887118.html https://www.cnblogs.com/alvin_xp/p/4162249.html ...

  7. node-images Windows 64-bit with Unsupported runtime 错误解决办法 及 node 历史版本下载

    在做项目的时候下载的最新的10.16[2019.6.12]版本,出现了模块不兼容的问题[node-images]. 在git上发现了相同问题 https://github.com/zhangyuanw ...

  8. 如何去除List集合中的重复元素? a,b,c,a,c,b,d,,,,,,

    package com.fs.test; import java.util.ArrayList; import java.util.List; public class Listdemo { publ ...

  9. 重学JavaScript之匿名函数

    1. 什么是匿名函数? 匿名函数就是没有名字的函数,有时候也称为< 拉姆达函数>.匿名函数是一种强大的令人难以置信的工具.如下: function a(a1, a2, a3) { // 函 ...

  10. sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, "Incorrect string value: '\\xE6\\xB1\\x89\\xE8\\xAF\\xAD...' for column 'className' at row 1") [SQL: INSERT INTO classmessage (`classId

    sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1366, "Incorrect string value: '\\xE ...