一、使用者与群组
默认情况下,所有系统上的账号与一般身份使用者、root 相关信息都记录在 /etc/passwd ,密码记录在 /etc/shadow 。群组名称记录在 /etc/group 。
二、Linux 文件权限概念
ls -al
:表示列出所有文件详细的权限与属性(包含隐藏文件),其中列出的文件内容如下:
-rw-r--r--. 1 root root 18 Dec 29 2013 .bash_logout
文件类型权限 连接数 拥有者 所属群组 容量 修改时间 文件名
-
文件类型权限
-
r
w
x
r
w
x
-
-
-
文件类型 可读 可写 可执行 可读 可写 可执行 无权限 无权限 无权限 文件类型 拥有者权限 拥有者权限 拥有者权限 群组权限 群组权限 群组权限 其他人权限 其他人权限 其他人权限 d:目录 查 增删改 能否进入目录 -:文件 读 增删改 执行 l:链接文件 b:可随机存取设备 c:一次性读取设备 -
连接数:每个文件都会将它的权限与属性记录到文件系统的 i-node 中,,由于使用的目录树采用文件名来记录,因此每个文件名就会链接到一个 i-node ,连接数这个属性记录有多少不同的文件名链接到同一个 i-node 。
-
拥有者:表示该文件拥有者的账号。
-
所属群组:表示文件的所属群组。
-
文件容量:文件大小,默认单位为 Bytes 。
-
修改时间:文件创建时间或修改时间(日期/时间)。
-
文件名:包括后缀。
1. 属性、权限、修改、意义
-
chgrp
:改变文件所属群组,要求群组名称必须存在; -
chown
:改变文件拥有者,要求账户名称必须存在; -
chmod
:改变文件的权限,SUID、SGID、SBIT 等等特性;
操作动作 | /dir1 | /dir1/file1 | /dir2 | 重点 |
---|---|---|---|---|
读取 file1 内容 | x | r | - | 先进入再读取 |
修改 file1 内容 | x | rw | - | 先进入再修改 |
执行 file1 内容 | x | rx | - | 先进入再运行 |
删除 file1 文件 | wx | - | - | 能进入并修改目录即可 |
将 file1 复制到 /dir2 | x | r | wx | 能读 file1 且能修改 /dir2 |
上述操作可以不使用 r 权限,但是这样 tab 将无法补齐,需要自行编写。
2. 文件种类与扩展
文件种类:
- 正规文件(regular file):最常用的文件类型,属性为 -
- 纯文本文件(ASCII):字符型文件
- 二进制文件:可可执行文件
- 数据格式文件:部分特定格式文件
- 目录:属性为 d
- 链接文件(link):类似快捷文件,属性为 l
- 设备与设备文件(device):与系统周边及存储相关的文件,通常在 /dev 目录下
- 区块(block)设备文件:存储一些数据,以提供系统随机存取的周边设备(硬盘、软盘等),属性为 d
- 字符(character)设备文件:一些序列埠的周边设备(键盘、鼠标等),特点是一次性读取,不能截断输出,属性为 c
- 数据接口文件(sockets):通常在网络中承接,套接字文件,属性为 s ,通常在 /run 或 /tmp 目录
- 数据输送档(FIFO, pipe):解决多个程序同时存取一个文件所造成错误问题的文件,属性为 p
扩展名:
- .sh :脚本或批处理文件(scripts),通常用 shell 写成
- Z, .tar, .tar.gz, .zip, *.tgz :经过打包的压缩文件
- .html, .php :网页相关文件
文件长度限制:单一文件或目录的最大容许文件名为 255 Bytes ,即 255 个字符长度,128 个中文字
文件名限制:应避免使用 ? > < ; & ! [ ] | \ ( ) { } - +
,以 .
开头的文件表示隐藏文件
近期评论