Linux组管理和权限管理

Linux组管理和权限管理

组的基本介绍

​ 在Linux中的每个用户必须属于一个组,不能独立于组之外,在linux中每个文件有 所有者所在组其它组 的概念。

1)所有者

2)所在组

3)其它组

4)改变用户所在组

新增组

指令

​ groupadd 组名:增加一个新的用户组

-g:指定用户组标识号GID

-o:一般与-g一起使用,表示新用户组的GID可以与已有用户组GID相同

示例:

  • groupadd group1:增加一个用户组group1,GID是在当前已有GID最大值上加1
  • groupadd -g 101 group1:增加一个用户组group1,并指定其GID为101

删除组

​ groupdel 组名:组名不存在时会提示错误信息。

修改用户组

在添加用户时,可以指定将用户添加到哪个组,可以用root的权限改变用户所在的组。

​ usermod -g 用户组 用户名

​ usermod -d 目录名 用户名 改变该用户登录的初始目录

用户和组相关的文件

/etc/passwd:

  • 用户的配置文件,记录用户的各种信息
  • 每行含义,用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell
  • ​ wansw​:x:​ 1001: 1001: : /home/wansw: /bin/bash

/etc/shadow

  • 口令的配置文件
  • 每行含义,登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

/etc/group

  • 组的配置文件,记录Linux包含的组的信息
  • 每行含义,组名:组标识号:组内用户列表

查看文件的所有者

ls -ahl:-rw-r--r-- 1 root root 162 Jul 6 2018 1.log

第一个root:所属用户

第二个root:用户所属组

chgrp,采用群组名或群组识别码GID的方式改变文件或目录的所属群组,超级用户使用。被改变的组名必须在/etc/group文件内存在

-c:当发生改变时输出调试信息

-f:不显示错误信息

-R:处理指定目录及其下所有子目录、子文件

-v:运行时显示详细处理信息

例如:

chgrp -v bin log1.log:将log1.log的群组改为bin,并显示详细处理信息

chgrp --reference=log2.log log1.log:改变log1.log群组属性,使之参考log2.log

chgrp -R bin test:改变test下所有目录及其子目录的群组属性为bin

chgrp -R 100 test:根据群组识别码GID改变test群组属性

chgrp polic orange.txt:把文件的所属组改成 polic

chown,改变文件的拥有者与群组,拥有者可用用户名或用户ID、群组可用组名或组ID。chown命令的操作权限一般为系统管理员,系统管理员常将文件拷贝到另一用户目录名下,使之拥有使用该文件的权限

-c:显示更改的部分信息

-f:忽略错误信息

-R:处理指定目录及其下所有子目录、子文件

-v:显示详细处理信息

例如:

chown mail:mail log1.log:改变log1.log的拥有者与所属群组为mail

chown :mail log1.log:改变log1.log的文件群组为mail

chown -R -v root:mail test6:改变test6文件夹及其下所有文件/文件夹的所有者为root,群组为mail,修改时显示处理信息。

权限介绍

-rw-r--r-- 1 root root 162 Jul 6 2018 1.log

  • 0:确定文件类型。

    • d:目录
    • - :普通文件
    • l:软链接
    • c:字符设备【键盘、鼠标等】
    • b:块文件【硬盘】
  • 1-3:确定文件的所有者拥有的权限---User。

  • 4-6:确定所属组的用户拥有的权限--Group。

  • 7-9:确定其他用户拥有的权限--Other User。

  • 10:

    • 第一位是目录:表示 该目录下的子目录数量【包含有隐藏目录数量】。
    • 第一位是文件:表示硬链接数。
  • 第一个root:所属用户

  • 第二个root:文件所在组

  • 162:表示文件大小

    • 如果是目录,此处显示 4096。
  • Jul 6 2018:最后修改时间

rwx权限说明

  • 作用到文件上:
    • r:可读
    • w:可写,只有对该文件所在目录有写权限,才可以对文件进行删除。
    • x:可以执行
  • 作用到目录:
    • r:可读,ls 命令可以查看目录内容
    • w:可以修改,目录内新增+删除+重命名目录
    • x:可以进入该目录
  • 可以用数字表示权限:
    • r:4
    • w:2
    • x:1

chmod,用于改变Linux系统文件或目录的访问权限

-f:错误信息不输出

-c:当发生改变时,报告处理信息

-R:处理执行目录及其子目录下所有文件

-v:运行时显示详细处理信息

<权限范围>+<权限设置>:使权限范围内的目录或文件具有指定权限

<权限范围>-<权限设置>:删除权限范围内的目录或文件的指定权限

<权限范围>=<权限设置>:设置权限范围内的目录或文件的权限为指定的值

**权 限 范 围 ** 权 限 代 号
u:目录或文件的当前用户 r:读,代号为4
g:目录或文件的当前群组 w:写,代号为2
o:其他用户或群组 x:执行,代号为1
a:所有用户和群组 -:删除,代号为0
s:特权权限

例如:

chmod a+x log1.log:设定文件log1.log所有用户或群组都有执行权限

chmod ug+x,o-x log1.log:同时设定不同的用户权限

chmod u=x log1.log:撤销用户原有对log1.log的权限并设定为x

chmod -R u+x test4:递归地给test4下所有文件与子目录分配执行权限

chmod 751 file:给file、属主分配读、写、执行权限,给所在组分配读、执行权限,其他用户分配执行权限

chmod tom apple.txt:把 apple.txt 文件 的所有者转给 tom 用户

posted @ 2019-04-29 10:28  wansw  阅读(3073)  评论(0编辑  收藏  举报