Linux之用户权限
文章目录概述查看目录和文件权限:ls改变权限的命令:chmod改变所有者的命令:chown改变用户组的命令:chgrp概述Linux/Unix 是多用户多任务操作系统,所有的文件皆有其拥有者(Owner),文件或目录的访问权限分为只读,可写和可执行三种。以文件为例:可读:可以查看文件里面的内容,而禁止对其做任何的更改操作。可写:对文件的内容做编辑可执行:该操作只对脚本和目录生效,表示允许将该文件作
概述
Linux/Unix 是多用户多任务操作系统,所有的文件皆有其拥有者(Owner),文件或目录的访问权限分为只读
,可写
和可执行
三种。
以文件为例:
-
可读:可以查看文件里面的内容,而禁止对其做任何的更改操作。
-
可写:对文件的内容做编辑
-
可执行:该操作只对
脚本
和目录生效
,表示允许将该文件作为一个程序执行。 -
文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。
如果是对文件夹的可读、可写、可操作是什么含义?
可读:查看文件夹内部的信息
可写:代表可以删除文件夹内的文件或者修改文件夹里面的文件的名称
用户也可根据需要把访问权限设置为需要的任何组合,有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。
- 所有者一般是文件的创建者,所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户,在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。
查看目录和文件权限:ls
我们可以使用ls命令
来查看一个文件或者目录的权限:
使用该命令的
-l参数
目录:
drwxr-xr-x. 2 aismall01 aismall01 6 11月 29 2020 公共
文件:
-rw-rw-r--. 1 aismall01 aismall01 982 11月 29 2020 红黑树.txt
点.
之前的参数,10个字符确定不同用户能对文件或者目录可以执行什么动作:我们以公共这个公共
这个目录来说
- 第一个字符:(
-
)代表文件、(d
)目录,(l
)链接
其余字符每3个一组:读(r)、写(w)、执行(x)
-
第一组
rwx
:目录所有者
的权限是读、写和执行 -
第二组
r-x
:与目录所有者同一组
的用户的权限是读、不能写,但可以执行 -
第三组
r-x
:不与目录所有者同组
的其他用户的权限是读、不能写,但可以执行
注意:也可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7
下面是点.
后面的参数介绍
-
1
:表示连接的文件数 -
aismall01
: 表示用户 -
aismall01
:表示用户所在的组 -
6
:表示文件大小(字节) -
11月 29 2020
:表示最后修改日期 -
公共
:表示文件名
改变权限的命令:chmod
提前须知:万能的root用户无视一切权限设置
修改文件或者目录权限一般会使用chmod
命令,利用 chmod
可以控制文件如何被他人所调用。
注意:
- 当确定了一个文件的访问权限后,用户可以利用Linux系统提供的
chmod 命令
来重新设定
不同的访问权限。
chmod:change the permissions mode of a file
Linux/Unix 的文件调用权限分为三级 :
- 文件所有者(Owner)
- 用户组(Group)
- 其它用户(Other Users)
chmod命令:是控制用户修改文件或目录的权限
- 语法
chmod [参数] [文件]
一般写法,方括号中为
可选参数
:chmod [-cfvR] [--help] [--version] mode file...
简化写法,我们
只关注mode
参数:chmod mode files
- 其中
mode
可以通过字符串形式
或数字形式
设定
字符串形式配置:
mode写法:
[ugoa][+-=][rwx]
[ugoa]
表示:- u(owner):表示文件所有者,即创建文件的人
- g(group):表示和文件所有者相同组的用户
- o(other):表示和文件所有者不相同group的用户
- a(all):表示所有用户
[+-=]
表示:- +:表示给指定的用户授权指定的权限
- -: 表示撤销指定用户的某个权限
- =: 将指定用户的指定权限
重新设置
[rwx]
表示:- r:可读权限
- w:可写权限
- x:可执行权限
- 通过
[ugoa][+-=][rwx]
拼接,配置文件和目录的访问权限。
举例:
- 环境准备
我们先创建两个用户(test01,test20),分别再两个用户组(test01,test02),使用下面的命令即可实现:
useradd test01 -d /test01 -p 123456
useradd test02 -d /test02 -p 123456
在test01的用户目录test01下面创建一个文件file01.txt
在test02的用户目录test02下面创建一个文件file02.txt
- 例子1:给file01.txt文件所有者设置
不可读
,不可写
,不可执行
的权限
chmod u= /test01/file01.txt
分析:u表示文件所有者,=表示重新给用户授权,后面为空表示没有任何权限
- 例子2:把file01.txt文件设置为所有用户可读可写可执行。
注意:因为file01.txt在test01目录下面,所以如果test01目录的权限不打开,只打开file01.txt的权限是不行的,我们来展示一下:
数字形式配置:
相信这是我们最常见的赋权方式:chmod -R 777 /home/AISMALL/AISMALL.txt
- chmod可以使用八进制数来指定权限,无需再使用指定的权限和用户的字母来进行标识,通过读写执行等3个权限的数字来进行设置
- r(读)的权限的数字为4。
- w(写)的权限的数字为2。
- x(执行)的权限数字为1。
- 所以7表示的赋权的用户有读写执行权限,最大的权限,下面是对照表。
八进制值 | 权限 | 二进制值 | rwx |
---|---|---|---|
7 | 读+写+执行 | 111 | rwx |
6 | 读+写 | 110 | rw- |
5 | 读+执行 | 101 | r-x |
4 | 只读 | 100 | r– |
3 | 写+执行 | 011 | -wx |
2 | 只写 | 010 | -w- |
1 | 只执行 | 001 | –x |
0 | 无权限 | 000 | — |
改变所有者的命令:chown
Linux/Unix 是多用户多任务操作系统,所有的文件皆有其拥有者(Owner),利用 chown命令
可以将文件的拥有者加以改变,一般来说,这个命令只能由系统管理者(root)使用
,一般用户没有权限来改变别人的文件的拥有者,也没有权限可以将自己的文件的拥有者改设为别人,只有系统管理者(root)才有这样的权限。
chown 命令:
- 功能:更改某个文件或目录的属主和属组
- 语法:
chown [选项] 用户或组 文件
- 部分参数解释:
-R
:递归式地改变指定目录及其下的所有子目录和文件的拥有者。-v
:显示chown命令所做的工作。
举例:
- 例1:把文件file01.txt的所有者改为test02
chown test02 file01.txt
- 例2:把目录file01.txt 所属组改为test02
chown :test02 file01.txt
注意:还可以这样:chown .test02 file01.txt
- 例3:同时把file01.txt文件的所属组和所有者同时改回来,为test01
chown test01:test01 file01.txt
- 例4:如果为目录,而且目录里面有文件,我们可以使用
-R参数
来进行递归式地改变,指定目录及其下的所有子目录和文件的属组
chown - R test02:test02 /test01
注意:使用用户ID(UID),组ID(GID)也是可以的。
改变用户组的命令:chgrp
chgrp命令
- 功能:改变文件或目录所属的组。
- 语法:chgrp [选项] group filename
- 部分参数解释:
- R
:递归式地改变指定目录及其下的所有子目录和文件的属组。
举例:
- 例1:改变/test01及其子目录下的所有文件的属组为test02
chgrp - R test02 /test01
更多推荐
所有评论(0)