Linux学习笔记组管理和权限管理

Posted !0 !

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux学习笔记组管理和权限管理相关的知识,希望对你有一定的参考价值。

一、Linux组基本介绍

1、概念

在linux中,每个用户必须属于一个组,不能独立于组外

2、文件与组

  • 所有者:哪个用户创建的文件,所有者就是该用户(可以修改所有者)
  • 所在组:所有者所在的组
  • 其他组:不是所有者所在的组

二、文件/目录所有者

一般为文件的创建者,谁创建了该文件,谁就是该文件的所有者。

1、查看文件的所有者

语法:ls -ahl
举例:
在这里插入图片描述

2、修改文件所有者

语法:chown 用户名 文件名
举例:
①用root创建一个文件apple.txt,然后将其所有者修改成tom
chown tom apple.txt

三、组的创建

1、基本指令

语法:groupadd 组名
举例:
①创建一个组monster
groupadd monster
创建一个用户fox,并放入monster组中
useradd -g monster fox

四、文件/目录所在组

当某个用户创建了一个文件后,这个文件默认的所在组就是该用户所在的组。

1、查看文件/目录所在组

语法:ls -ahl
举例:
①使用fox来创建一个文件,查看该文件属于哪个组
在这里插入图片描述

2、修改文件/目录所在的组

语法:chgrp 组名 文件名
举例:
①使用root用户创建文件orange.txt,查看当前文件属于哪个组,然后将这个文件所在组,修改到fruit组
groupadd fruit
touch orange.txt
ls -ahl
chgrp fruit orange.txt

五、其他组

除文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组

六、改变用户所在组

在添加用户时,可以指定该用户添加到指定组中,同样的用root的管理权限可以改变某个用户所在的组

1、改变用户所在组

语法:usermod -g 新组名 用户名
功能:改变用户所在组
语法:usermod -d 目录名 用户名
功能:改变用户登录的初始目录(用户必须有进入该目录的权限)
举例:
①将zwj这个用户从原来的所在组修改到wudang组
usermod -g wudang zwj

七、权限的基本介绍

在这里插入图片描述

1、第0-9位说明

  • 第0位确定文件类型(d-lcb
    d是目录,相当于Windows的文件夹
    -是普通文件,比如txt文件
    l是链接,相当于Windows的快捷方式
    c是字符设备文件,比如鼠标,键盘
    b是块设备,比如键盘
  • 第1-3位确定所有者拥有该文件的权限
  • 第4-6位确定所属组拥有该文件的权限
  • 第7-9位确定其他用户拥有该文件的权限

八、rwx权限详解

1、rwx作用到文件

1)【r】代表可读(read):可以读取,查看文件

2)【w】代表可写(write):可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件

3)【x】代表可执行(execute):该文件可以被执行

2、rwx作用到目录

1)【r】代表可读(read):可以读取,ls查看目录内容

2)【w】代表可写(write):可以修改,对目录内创建+删除+重命名目录

3)【x】代表可执行(execute):可进入该目录

九、文件及目录权限举例

1、ls -l 说明

-rwxrw-r-- 1 root root 1213 Feb 2 23:21 abc
  • 前10个字符说明

    • 第一个字符代表文件类型:-ldcb
    • 其余字符每3个一组,只有第一个字符是代表文件类型,后面9个字符的-是用来填充的
    • 第一组rwx:文件拥有者的权限是读、写和执行
    • 第二组rw-:与文件拥有者同一组的用户的权限是读、写但是不能执行
    • 第三组r–:不与文件拥有者同组的其他用户组的权限是读但是不能写和执行
    • 也可以用数字表示:r=4,w=2,x=1,因此rwx=4+2+1=7
  • 其他说明

    • 1;如果是文件代表硬连接数;如果是目录则代表子目录数
    • root;所有者
    • root;所有组
    • 1213;文件大小(字节);如果是文件夹,则显示4096字节
    • Feb 2 23:21;最后修改日期
    • abc;文件名

十、修改权限

1、说明

我们可以通过chmod指令修改文件或者目录的权限

2、方式一:+、-、=变更权限

u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
1)chmod u=rwx,g=rx,o=x 文件/目录名
2)chmod o+w 文件/目录名
3)chmod a-x 文件/目录名
举例:
①给abc文件的所有者读写执行的权限,给所在组度执行权限,给其他组度执行权限
chmod u=wrx,g=rx,o=rx abc
②给abc文件的所有者除去执行的权限,增加写的权限
chmod u-x,g+w abc
③给abc文件的所有用户添加读的权限
chmod a+r abc

3、方式二:通过数字变更权限

r=4,w=2,x=1;比如rwx=4+2+1=7
chmod u-rwx,g=rx,o=x 文件/目录名
相当于
chmod 751 文件/目录名
举例:
①将/home/abc.txt文件的权限修改成rwxr-xr-x,使用方式二
chmod 755 /home/abc.txt

十一、修改文件所有者

语法:chown newowner 文件/目录
功能:改变所有者
语法:chown newowner:newgroup 文件/目录
功能:改变所有者和所在组
常用选项:
-R:如果是目录则使其下所有子文件或目录递归生效
举例:
①请将/home/abc.txt文件的所有者修该成tom
chown tom /home/abc.txt
②将/home/test目录下所有文件和目录的所有者都修改成tom
chown -R tom /home/test

十二、修改文件/目录所在组

语法:chgrp newgroup 文件/目录
功能:改变所在组
举例:
①将/home/abc.txt文件的所在组修改成shaolin
groupadd shaolin
chgrap shaolin /home/abc.txt
②将/home/test目录下所有的文件和目录的所在组都修改成shaolin
chgrp -R shaolin /home/test

以上是关于Linux学习笔记组管理和权限管理的主要内容,如果未能解决你的问题,请参考以下文章

Linux用户和组管理内容---学习笔记

Linux学习笔记

Linux账号与用户管理--笔记

用户和组权限管理笔记

Linux笔记03: Linux常用命令_3.5权限管理命令

Linux学习笔记——Linux用户管理和权限管理