一.用户组

  前面章节知道用户账户在控制单个用户安全性方面很好,但涉及到共享资源或把用户类型分组时,组概念就出来了。 组权限允许多个用户对系统中的对象(比如文件,目录,设备等)共享一组共用的权限。 在centos中创建一个用户会为该用户单独创建一个组,这样可以更安全一些。

  1.1   /etc/group 文件
    与用户一样,组信息也保存在系统的一个文件中。/etc/group文件包含系统上用到的每个组的信息。如下图所示:
      
    GID在500以内属于系统账户,而用户组的GID则从500开始分配(好像不同发布版有所不同)。上面有三个字段:组名,组密码,GID。组密码是允许非组内成员通过组密码临时成为该组成员,但这功能并不常用。创建组时不能直接通过/etc/group文件来添加用户到一个组,要用usermod命令,上篇有讲到该命令。

  1.2   创建新组 groupadd
    
下面使用groupadd 命令在系统上创建新组(gtest),如下图所示:
      
    在创建新组后,默认没有用户被分配到该组下,使用usermod或useradd都可以将用户分配到指定组:例如之前安装mysql时,使用useradd来创建mysql用户,并指定到mysql组中.如下图所示:
      
    下面使用useradd来创建用户gtest1和gtest2,指定到gtest组8001中,如下图所示:
      

  1.3   修改组
    
修改组使用groupmod命令可以修改已有组的GID(-g选项)或组名(-n选项)。当修改组名时,gid和组成员不变,只有组名改变,由于所有安全权限都是基于GID的,所以随变修改组名不会影响文件的安全性。下面使用groupmod –n来修改gtest组名为gtest1。
      

二.文件权限

在了解用户和组之后,下面来解读文件权限,通过ls 命令输出来介绍分析。下面随意定位在个目录下。
      
上面结果第一列,就是描述文件和目录权限的编码。第一列的第一个字符分别代表了对象的类型:
(1)     – 代表文件

(2)     d 代表目录

(3)     l  代表链接

(4)     c 代表字符型设备

(5)     b 代表块设备

(6)     n 代表网络设备

    第一列之后有3组三字符的编码,每一组定义了3种访问权限,没有权限是单破折线:
    (1)     r 代表对象是可读的

    (2)     w 代表对象是可写的

    (3)     x 代表对象是可执行的

    上面3组权限分别对应对象的3个安全级别:对象的属主,对象属组,系统其它用户

    例如:rwxr-xr-x 这样一组。前三个字符(rwx)是对象的属主权限(用户hsr),中间三个字符(r-x)是对象属组的权限(组hsr下的用户),后面三个字符(r-x)是系统其它用户权限。

    在上面这一组权限中,属组和其它用户对该文件没有写入权限,只有读和执行权限。

      

Linux编程 16 文件权限(组管理 groupadd, groupmod,文件权限介绍)的更多相关文章

  1. linux组管理(groupadd/groupmod/gpasswd/groupdel)

    配置文件:  /etc/group 注:用户组(group)配置文件: /etc/gshadow 注:用户组(group)的影子文件: 查看组: cat /etc/group  或者  id -g t ...

  2. 第五部分 linux系统管理员 开机流程 模组管理 与loader

    第五部分   linux系统管理员  开机流程  模组管理  与loader   开机流程分析 cmos保存电脑硬件的参数 bios 基本的输入输出系统  读取硬件的软件 MBR  master bo ...

  3. linux基础之用户和组管理及权限

    一.用户和组管理 相关配置文件 /etc/passwd: 用户名 : 密码占位符 : UID : GID : COMMENTS : 家目录 :默认shell /etc/group: 组名 : 组密码占 ...

  4. Linux基础3(用户/组管理,rpm,yum,源码安装软件)

    用户管理 与用户相关的配置文件 /etc/passwd /etc/shadow /etc/skel /etc/defalut/useradd /etc/login.defs useradd userm ...

  5. Linux系统用户与属组管理(3)

    好了,终于要到了管理 Linux 账号的时刻了,对于 Linux 有一定的熟悉度之后,再来就是要管理连上 Linux 的账号问题了,这个账号的问题可大可小,大到可以限制他使用 Linux 主机的各项资 ...

  6. Linux命令之用户与组管理

    介绍 Linux操作系统中,任何文件都归属某一特定的用户,而任何用户都隶属至少一个用户组.用户是否有权限对某文件进行访问.读写以及执行,受到系统严格约束的正式这种清晰.严谨的用户与用户组管理系统.在很 ...

  7. Linux服务器新建用户和组,并分配sudo权限 (Ubuntu系统)

    新拿到一台服务器后我们一般都是要新建用户组,用户,并为其分配权限. ==================================================== 赋予用户组sudo权限: ...

  8. linux基础_用户和组的三个文件

    1./etc/passwd文件 用户(user)的配置文件,记录用户的各种信息 每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell 2./etc/shadow文件 口令 ...

  9. linux命令详解2-文件管理,查看文件命令

    1. cat命令(tac) ----连接文件,并打印出来(顺序打印)与tac命令类似只不过,tac命令是逆序打印 [语法] cat [OPTION]... [FILE]... [选项] -A:显示所有 ...

随机推荐

  1. Chapter6_访问权限控制_类的访问权限

    在Java中,访问权限修饰词也可以用于确定库中的哪些类对于该库的使用者是可用的,类既不可以是private也不可以是protected的,对于类的访问权限,只有两种选择:包访问权限或者public.下 ...

  2. 基于STM32L4的开源NBIOT开发资料

    基于STM32L4的开源NBIOT开发资料 1. 参考路径:http://www.stmcu.org/module/forum/forum.php?mod=viewthread&tid=615 ...

  3. dubbo入门学习 五 provider端的编写

    1. 新建Maven Project, 里面只有接口(dubbo-service) 1.1 为什么这么做? RPC框架,不希望Consumer知道具体实现.如果实现类和接口在同一个项目中,Consum ...

  4. MyBatis中<if test=" ">标签条件不起作用

    问题产生? 今天在做Excel导出的时候,有个判断一个状态的字段,我的这个字段是int类型的,还有两个时间类型,我在判断的时候给的是Long类型的. 在测试的时候发现,不管怎么样都不执行if条件里面的 ...

  5. 运用SharedPreferences“偷取”输入的信息

    运用SharedPreferences"偷取"输入的信息 本次的任务是 利用SharedPreferences来完成信息的保存和读取 就是你输入什么 手机就可以把输入的内容&quo ...

  6. STM32CubeMX HAL库串口+DMA数据发送不定长度数据接收

    参考资料:1.ST HAL库官网资料 2.https://blog.csdn.net/u014470361/article/details/79206352#comments 一.STM32CubeM ...

  7. JMS Cluster modules

    是GeoServer实现集群还是在数据库实现集群? Hadoop.Spark.HBase与Redis的适用性见解:https://blog.csdn.net/cuiyaonan2000/article ...

  8. VS Code 之 smarty 扩展

    VS Code 中的 Smarty 扩展: https://github.com/imperez/vscode-smarty 目前(v0.2.0)不支持定制定界符.可以通过 trick 的方式篡改. ...

  9. jQuery-少见获取元素的方式

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  10. 微信 SQLite 数据库修复实践

    1.前言 众所周知,微信在后台服务器不保存聊天记录,微信在移动客户端所有的聊天记录都存储在一个 SQLite 数据库中,一旦这个数据库损坏,将会丢失用户多年的聊天记录.而我们监控到现网的损坏率是0.0 ...