文件系统
用户在硬件存储设备中执行的文件建立、写入、读取、修改、转存与控制等操作都是依靠文件系统来完成的。在Linux系统中,目录、字符设备、块设备、套接字、打印机等都被抽象成了文件:Linux系统中一切都是文件。
Linux系统中的文件和目录名称是严格区分大小写的。例如,root、rOOt、Root、rooT均代表不同的目录,并且文件名称中不得包含斜杠(/)。
目录名称 | 应放置文件的内容 |
| Linux文件的最上层根目录 |
| 开机所需文件—内核、开机菜单以及所需配置文件等 |
| 以文件形式存放任何设备与接口 |
| 配置文件 |
| 用户家目录 |
| Binary的缩写,存放用户的可运行程序,如ls、cp等,也包含其他shell,如bash和cs等 |
| 开机时用到的函数库,以及/bin与/sbin下面的命令要调用的函数 |
| 开机过程中需要的命令 |
| 用于挂载设备文件的目录 |
| 放置第三方的软件 |
| 系统管理员的家目录 |
| 任何人均可使用的“共享”临时目录 |
| 用户自行安装的软件 |
| Linux系统开机时不会使用到的软件/命令/脚本 |
| 帮助与说明文件,也可放置共享文件 |
| 主要存放经常变化的文件,如日志 |
| 当文件系统发生错误时,将一些丢失的文件片段存放在这里 |
绝对路径和相对路径
- 绝对路径:由根目录(/)开始写起的文件名或目录名称,如
/home/dmtsai/basher
。 - 相对路径:相对于目前路径的文件名写法,如
../../home/dmtsai/
等。 - 相对路径是以当前所在路径的相对位置来表示的。注意两个特殊的目录。
.
:代表当前的目录,也可以使用./
来表示。..
:代表上—层目录,也可以用../
来代表。
文件和文件权限
文件是操作系统用来存储信息的基本结构,是一组信息的集合。文件通过文件名来唯一地标识。与其他操作系统相比,Linux没有“扩展名”的概念,也就是说文件的名称和该文件的种类并没有直接的关联。它的另一个特性是Linux文件名区分大小写。
当创建一个文件时,系统会自动赋予文件所有者读和写的权限,这样可以允许所有者显示文件内容和修改文件。文件所有者可以将这些权限改变为任何他想指定的权限。
根据赋予权限的不同,3种不同的用户(所有者、用户组或其他用户)能够访问不同的目录或者文件。所有者是创建文件的用户,文件的所有者能够授予所在用户组的其他成员以及系统中除所属组之外的其他用户的文件访问权限。
每一行的第一个字符一般用来区分文件的类型,一般取值为 d、-、l、b、c、s、p
。具体含义如下。
这9个字符根据权限种类的不同,也分为3种类型。
d
:表示是一个目录,在ext文件系统中目录也是一种特殊的文件。-
:表示该文件是一个普通的文件。l
: 表示该文件是一个符号链接文件,实际上它指向另一个文件。b、c
:分别表示该文件为区块设备或其他的外围设备,是特殊类型的文件。s、p
:这些文件关系到系统的数据结构和管道,通常很少见到。-
每一行的第2~10个字符表示文件的访问权限。这9个字符每3个为一组,左边3个字符表示所有者权限,中间3个字符表示与所有者同一组的用户的权限,右边3个字符是其他用户的权限。代表的意义如下。
- 字符2、3、4表示该文件所有者的权限,有时也简称为u(User)的权限。
- 字符5、6、7表示该文件所有者所属组的组成员的权限。
- 字符8、9、10表示该文件所有者所属组群以外的权限,简称为o(Other)的权限。
r
(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。w
(Write,写入):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。x
(execute,执行):对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限。-
:表示不具有该项权限。-
如果文件名之前多一个“.”,则代表这个文件为隐藏文件。使用ls及ls -a这两个指令去体验一下什么是隐藏文件。
修改权限
通常在权限修改时可以用两种方式来表示权限类型:数字表示法和文字表示法。
chmod
命令的格式是:chmod 选项 文件
数字表示法
所谓数字表示法是指将读取(r)、写入(w)和执行(x)分别以数字4、2、1来表示,没有授予的部分就表示为0,然后再把所授予的权限相加而成。
文字表示法
使用权限的文字表示法时,系统用4种字母来表示不同的用户。
u:
user、
表示所有者。g
:group、
表示属组。o
:others、
表示其他用户。a
:all、
表示以上3种用户。
使用下面3种字符的组合表示法设置操作权限。
r
:read、
可读。w:
write、
写入。x
:execute、
执行。
操作符号包括以下几种。
+:
添加某种权限。- :
减去某种权限。=
:赋予给定权限并取消原来的权限。