1.用户与用户组
Linux中任何一个文件都有User、Group、和Others三种身份。root用户具体所有的权限。
root的相关信息记录在/etc/passwd下
个人密码记录在/etc/shadow
Linux的所有组名都记录在/etc/group
2.文件属性
-rw------- 1 zhangsan zhangsan 540 Aug 15 05:09 .bash_history
-rw------- | [1] | 文件权限 |
1 | [2] | 连接数 |
zhangsan | [3] | 文件所属用户 |
zhangsan | [4] | 文件所属用户组 |
540 | [5] | 文件大小 |
Aug 15 05:09 | [6] | 文件最后被修改的日期 |
.bash_history | [7] | 文件名 |
第一个字符代表这个文件是目录、文件或链接文件等。
d | 目录 |
- | 文件 |
l | 链接文件 |
b | 表示设备文件里面的可供存储的接口设备 |
c | 表示设备文件里面的串行端口设备,例如键盘、鼠标 |
[rw-r--r--]三个为一组,第一组为文件所有者的权限,第二组为同用户组的权限,第三组为其他非本用户组的权限。
[r]代表可读[read]
[w]代表可写[write]
[x]代表可执行[execute]
[-]表示没有权限
文件名之前多一个点表示隐藏文件。
3.改变文件属性及权限
chgrp | 改变文件所属用户组[change group] |
chown | 改变文件所有者[change owner] |
chmod | 改变文件的权限 |
chgrp:要被改变的组名必须在etc/group文件内存在
chown:chown [-R] 账号名称 文件或目录
-R:进行递归[recursive]的持续更改
chown可以同时修改文件所有者和用户组,以点.或分号:分隔。建议用分号:分隔,因为有的账号名称可能带有点,造成混乱。
chmod:改变文件的权限。
可以用数字类型改变文件权限。
[r] | 4 |
[w] | 2 |
[x] | 1 |
例:chmod 644 文件名
644表示rw--r--r-
符号类型改变权限
[u] | user |
[g] | group |
[o] | others |
[a] | all |
[+] | 加入 |
[-] | 除去 |
[=] | 设置 |
chmod u=rwx,go=rx 文件名 | 设置user的权限为rwx,用户组和其它用户的权限为rx |
chmod a-x 文件名 | 设置所有用户的权限去除x可执行权限 |
4.目录及文件的权限意义
权限对文件的重要性
[r] | 可读取此文件的实际内容,如读取文本文件的文字内容等 |
[w] | 可以编辑、新增、修改该文件的内容,但是不能删除 |
[x] | 该文件具有可以被系统执行的权限 |
权限对目录的重要性
[r] | 具有读取目录结构列表的权限 |
[w] | 具有更改该目录结构列表的权限 新建新的文件与目录 删除已经存在的文件与目录(不论该文件的权限为何) 将已存在的文件或目录进行重命名 转移该目录内的文件、目录位置 |
[x] | 用户能否进入该目录成为工作目录 |