鸟哥Linux-学习笔记-第二部分-文件权限与目录配置
上一章讲的主要是Linux的历史与硬件相关的点,看起来就像看小说,看得有点快。
快过年了,目前就先咕一段时间吧,咕咕咕~ ~ ·
1.0 Linux用户与用户组
1.1 用户与用户组
- 文件拥有者(owner)
- 用户组的概念
- 对各个用户分成各个组别
- 每个账号都可以由多个用户组的支持
- 其他人的概念(Others)
- 在群组之外的
- 万能的天神–root
1.2 Linux文件属性
- 在Linux里,任何一个文件都具有用户(User)、所属群组(Group)、以及其他人(Others)三种身份的个别权限
- 默认情况下
- 所有账号包括root的相关信息都记录在
/etc/passwd
这个文件内 - 密码信息记录在
/etc/shadow
这个文件中 - Linux所有组别都记录在
/etc/group
中
- 所有账号包括root的相关信息都记录在
2.0 Linux 文件属性
以Linux中一个重要的命令为例 ls -al
,输入后会出现以下内容
1 | ls -al |
- 第一栏代表文件的类型及权限
- 第一个字符代表这个文件是目录、文件或链接文件等
- 当为[d]则是目录
- 当为[-]则是文件
- 若是[b]则表示为设备文件里面的可供存储的周边设备
- 若是[c]则表示为设备文件里面的串行端口设备
- 接下来的字符中,以三个为一组,且均为[rwx]的三个参数的组合
- 其中[r]代表可读(read)、[w]表示科协(write)、[x]表示可执行(execute)
- 这三个权限的位置不会变、如果没用权限,就会出现[-]
- 第一组为文件拥有者可具备的权限
- 第二组为加入此用户组的账号的权限
- 第三组为非本人且没用加入本用户组的其他账号的权限;
- 第一个字符代表这个文件是目录、文件或链接文件等
- 第二栏表示这个文件又多少文件名链接到此节点
- 第三栏表示这个文件的所属用户组
- 第五栏表示文件的容量大小,默认单位Bytes
- 第六栏为这个文件的创建日期或最近修改日期
- 第七栏位文件名
2.1 修改文件属性与权限
常用于用户组、拥有者、各种身份的权限修改的命令
chgrp
: 修改文件所属用户组;chown
:修改文件拥有者;chmod
:修改文件的权限,SUID、SGID、SBIT等特性
修改所属用户组,chgrp
- chgrp-> change group 缩写
chgrp [-R] dirname/filename ...
- -R:进行递归修改,即连同子目录下的所有文件,目录都更新成为这个用户组之意
- 修改的用户组需要在/etc/group 内。
修改文件拥有者,chown
- chown-> change owner
- 用户必须是存在系统中的账号,也就是/etc/passwd 这个文件中有记录的用户名才能修改
chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:用户组名称 文件或目录
- -R 进行递归修改
- 实例
chown bin test.c
- 实例
chown root:root test.c
修改文件权限 chmod
修改权限的方法有两种,分别可以使用数字或是符号来进行权限修改- 数字类型修改文件权限
Linux文件的基本权限就有9个,分别是拥有者(owner)、所属群组(group)、其他人(others)三种身份对应的读(read)、写(write)、执行(execute)权限- 各权限的数字对照表如下:
r:4
w:2
x:1 - 每种身份(owner、group、others)鸽子的三个权限(r、w、x)数字是需要累加的,例如当权限为:[-rwxrwx—] 数字则是:
owner = rwx = 4+2+1 = 7
Group = rwx = 4+2+1 = 7
others = - - - = 0+0+0 = 0 - 所以我们设置该文件的权限数字就是770,修改命令chmod的语法:
chmod [-R] xyz 文件或目录
- xyz:就是数字类型的权限属性,为rwx属性数字相加
- -R:递归修改
- 实例
chmod 777 test.c
- 各权限的数字对照表如下:
- 数字类型修改文件权限