linux文件权限及其操作意义
本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:
- 文件所有者、用户及其用户组和其他人的概念
- 查看文件属性
- 如何改变文件属性与权限
一、文件所有者、用户及其用户组和其他人的概念
1. 文件所有者
文件所有者就是拥有该文件的人,听能够查看与修改这个文件的内容。
2. 用户
用户就是系统里要求一个身份去运行,该身份就是用户。用户限制权限以保留自己的私人空间。
2. 用户组
用户组就是用户之间组织起来的,该用户组里面的用户们可以共享一些资源,也能够保留自己的权限。
3. 其他人
其他人就是除了用户组以外需要对文件进行操作的。
二、查看文件属性
以root的身份登陆linux,用命令ls -al查看
ls是“list”的意思
参数-al是列出所有文件的详细权限和属性
以上截图是我打开一个manage这个文件查看了里面所有文件的属性。
可以看到上面的七列。
用文件testing举例
drwxr–r– 2 jialu jialu 4096 5月 31 22:05 testing
第一列drwxr–r–
1、第一列代表的是文件的查看权限,总共有十个字符。第一个字符d代表的是目录,所以这一列的第一个字符代表的是文件的类型,可以是目录也可以是文件。
[d]代表的是目录
[-]代表的是文件
[l]代表的是链接文件
[b]代表的是设备文件里面的可以供存储的接口设备
[c]表示设备文件啊里面的串行端口设备,例如键盘鼠标(一次性读取设备)
2、剩下的九个字符
每三个字符为一组。
r:代表可以读
w:代表可以写
x:代表可以执行
-:代表该位置上没有权限
首先看第二第三第四个字符,rwx的含义是文件所有者的权限。根据以上的标注,可以看出这个目录中,文件所有者具有可读可写可执行的权限。
第二组字符(即第五第六第七个字符),r–的含义是同用户组的权限。可以看出这个目录中,同用户组的权限是可以读,但是不能写也不能执行。
第三组字符(即第八第九第十个字符),r–的含义是其他非本用户组的权限,该权限可以读但是不可以写也不可以执行。
第二列 2
第二列表示的是有多少文件名连接到此节点
每个文件都会把自己的权限记录到文件系统的i-node中,但是在使用的目录树却是使用文件名来记录的,因此每个文件都睡对应一个连接的i-node。该属性记录的是又多少不同的文件名连接到相同的一个i-node号码
第三列 2
表示这个文件(或目录)的“所有者账号”
第四列 jialu
表示这个文件的所属于的用户组
第五列 4096
表示这个文件的容量大小,默认单位是B.
第六列 5月 31 22:05
表示该文件最近修改的日期或者是创建的日期,这以列的内容分别是(月/日)及时间。有些文件时间太久会省去部分时间,如果要显示全部时间可以利用命令“ls -l –full-time”
第七列 testing
表示该文件的名称,如果文件名前面多了一个“.”表示该文件是一个隐藏文件。
三、如何改变文件的属性与权限
1、修改命令
- chgrp:改变文件所有属用户组
- chown:改变文件所有者
- chmod:改变文件的权限
2、改变所属用户组chgrp
chgrp [-R] dirname/filename
3、改变文件所有者
chown [-R] 账号名称 文件或目录
chown[-R]账号名称:组名 文件或者目录
-R:进行递归的持续更改,连同目录下的所有文件都更改
chown的不仅可以更改所有者,还可以改变用户组的名称,用:隔开所有者和用户组,用 . 也可以
4、改变文件的权限
(1)数字类型改变文件权限
r:4
w:2
x:1
chmod [-R] 各部分加起权限数字 文件或者目录
-R的意思与3一致
例如:
chmod 777 .testing
(2)符号类型改变权限
chmod | u | +(加入) | r | 文件或目录 |
---|---|---|---|---|
g | -(减去) | w | ||
o | =(设置) | x | ||
a |
user
group
other
chmod u=rwx,g=r,o=x .bashrc