文章目录
第6章
1. 用户与用户组
文件可存取访问身份分为三个类别
- owner
- group
- others
账号记录在/etc/passwd文件
密码记录在/etc/shadow文件
用户组名记录在/etc/group文件
2. Linux文件权限概念
2.1 Linux文件属性
ls命令,显示文件的文件名及相关属性。
以.开头的文件时隐藏文件。
权限的第一列字母代表文件的类型。
文件容量大小,默认单位为B
命令行的终端机无法显示中文,如果想设置系统默认语言,请设置文件/etc/sysconfig/i18n。
注意:这只适用于 CentOS 5,6。在CentOS 8 中已经没有这个文件了,与之相对的,可以通过修改/etc/locale.config这个文件来设置系统默认语言
对于目录来说,同时拥有r和x权限的人,才能进入;有w权限才能写入。
2.1 改变文件属性与权限
命令 | 作用 |
---|---|
chgrp | 改变用户组 |
chown | 改变所有者 |
chmod | 改变权限 |
注意: 我们在使用cp命令将文件复制给别人时,会将文件的属性与权限一同复制。所以如果想让别人使用我们复制的文件,还需要改变文件的属性与权限
注意: 当我们对文件夹使用这三个命令时,并不会对文件夹中的文件起效果。如果想同时改变文件夹内文件的属性与权限,请加上-R
选项,以对文件夹进行递归执行。
当使用chmod命令是,可以使用两张方法:数字改变和字母改变。
- 数字法
字母 | 数字表示 |
---|---|
r | 4 |
w | 2 |
x | 1 |
实验过程:
2.字母法
实验过程:
2.2 目录与文件的权限意义
2.2.1 r权限
先在root用户设置权限至下图:
再切换一个普通用户进行测试:
使用ls可以看到文件名,而是用ll却无法得知文件的属性。
奇怪的是,无法使用cat命令得到文件的回显。
使用vi命令可以打开文件,无法看到文件内容,无法编辑:
cd命令也无法使用:
2.2.2 w权限
先在root用户设置权限至下图:
再切换一个普通用户进行测试:
ls,ll,cat都无法使用:
使用echo重定向也无法改变文件:
同样的,使用vi命令可以打开文件,无法看到文件内容,无法编辑:
cd命令也无法使用:
2.2.2 x权限
先在root用户设置权限至下图:
不管怎么说,root总是可以执行可执行文件的的:
再切换一个普通用户进行测试:
ls,ll,cat命令都无法使用。
cd命令可以使用。
可执行文件无法使用!
2.2.2 文件夹rx权限,文件x权限
先在root用户设置权限至下图:
不是,谁能告诉我,为什么testdir文件夹的上下的权限设置不一样?
再切换一个普通用户进行测试:
可执行文件不能执行。
2.2.2 文件夹rx权限,文件rx权限
先在root用户设置权限至下图:
再切换一个普通用户进行测试:
可以执行了。
可以看出,要想执行执行文件,文件夹和文件都要rx权限。
2.2.2 文件夹rwx权限,文件无权限
但是如果一个用户有文件夹的rwx权限,而在这个文件夹下有他毫无权限的文件,虽然这个用户无法查看,修改,执行这个文件,但这个用户却可以删除它。
这就像我家里有一块石头,我虽然对这块石头无可奈何,但把它扔出去,我还是能做到的。
3. 目录配置
这一章还介绍了FHS目录配置标准,但是有些目录发生了变化,我把我发现的变化,列在这里。
3.1 /bin,/lib,/lib64,/sbin目录
CentOS 6 截图:
CentOS 8 截图:
由图可见,根目录下的这几个文件夹已经变成符号链接了。
3.2 /etc/init.d目录
CentOS 6 :
CentOS 8 :
由于CentOS 7 时的改版,这个文件夹已经被挪空了。
这是上图中的README信息:
3.3 /selinux目录
CentOS 6 :
CentOS 8:
CentOS 8 根本就没有这个目录,也不知道这个目录跑哪去了?
3.4 CentOS的查看
查看distribution使用的是哪个Linux标准。
CentOS 6 :
CentOS 8 根本没有这个命令。。。