[ linux ] 文件系统和目录结构详解
Posted _PowerShell
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[ linux ] 文件系统和目录结构详解相关的知识,希望对你有一定的参考价值。
昨天,有个小学弟了我一个linux面试题目,和她解答完之后我就想在C站开一个专栏,用于linux和windows的学习
我是这么想的,从linux入手,再写windows,最后总结常见区别
本文主要写了linux的文件结构介绍、linux文件系统的介绍、linux文件系统的基本操作,快捷键,通配符等等
下篇文章会写都文件的具体操作命令
目录
一、linux文件结构介绍
1、Linux目录结构的特点
Linux采用的是树型结构。最上层是根目录,其他的所有目录都是从根目录出发而生成的。
微软的DOS和windows也是采用树型结构,但是在DOS和 windows中这样的树型结构的根是磁盘分区的盘符,有几个分区就有几个树型结构,他们之间的关系是并列的。
但是在linux中,无论操作系统管理几个磁盘分区,这样的目录树只有一个。从结构上讲,各个磁盘分区上的树型目录不一定是并列的。
Linux的虚拟文件系统允许众多不同类型的文件系统共存,并支持跨文件系统的操作。
Linux的文件是无结构字符流式文件,不考虑文件内部的逻辑结构,只把文件简单地看作是一系列字符的序列。
Linux的文件可由文件拥有者或超级用户设置相应的访问权限而收到保护。
Linux把所有的外部设备都看作文件,可以使用与文件系统相同的系统调用来读写外部设备。
2. Linux目录结构
常见:
/:是所有文件的根目录;
/bin:存放二进制可执行命令目录;
/home:用户主目录的基点目录,默认情况每个用户主目录都设在该目录下,如默认:用户user01的主目录是/home/user01,可用~user01表示
/lib:存放标准程序设计库目录,又叫动态链接共享库目录,目录中文件类似windows里的后缀名为dll的文件;
/etc:存放系统管理和配置文件目录;
/dev:存放设备特殊文件目录,如声卡文件,磁盘文件等;
/usr:最庞大的目录,存放应用程序和文件目录;
/proc:虚拟目录,是系统内存的映射,可直接访问这个目录来获取系统信息;
/root:系统管理员的主目录(特权阶级)
/var:存放系统产生的经常变化文件的目录,例如打印机、邮件等假脱机目录、日志文件、格式化后的手册页以及一些应用程序的数据文件等;
/tmp:存放公用临时文件目录。
补充:
/etc/rc.d 启动的配置文件和脚本
/sbin 系统管理命令,这里存放的是系统管理员使用的管理程序
/mnt 系统提供这个目录是让用户临时挂载其他的文件系统。
/lost+found 这个目录平时是空的,用于存放系统非正常关机而留下未保存的文件
/usr其中包含:
/usr/X11R6 存放X window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库
二、Linux文件系统介绍
文件系统指文件存在的物理空间,linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。
linux会将这些分属不同分区的、单独的文件系统按一定的方式形成一个系统的总的目录层次结构。
一个操作系统的运行离不开对文件的操作,因此必然要拥有并维护自己的文件系统。
1. 索引介绍:
Llinux文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。
索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。
一个文件系统维护了一个索引节点的数组,每个文件或目录都与索引节点数组中的唯一一个元素对应。
系统给每个索引节点分配了一个号码,也就是该节点在数组中的索引号,称为索引节点号。
linux文件系统将文件索引节点号和文件名同时保存在目录中。
所以,目录只是将文件的名称和它的索引节点号结合在一起的一张表,目录中每一对文件名称和索引节点号称为一个连接。
对于一个文件来说有唯一的索引节点号与之对应,对于一个索引节点号,却可以有多个文件名与之对应。
因此,在磁盘上的同一个文件可以通过不同的路径去访问它。
2. Linux链接介绍
可以用ln命令对一个已经存在的文件再建立一个新的连接,而不复制文件的内容。连接有软连接和硬连接之分,软连接又叫符号连接。
1. 硬链接:
原文件名和链接文件名都指向相同的物理地址。
目录不能有硬连接;硬连接不能跨越文件系统(不能跨越不同的分区)
文件在磁盘中只有一个拷贝,节省硬盘空间;
由于删除文件要在同一个索引节点属于唯一的连接时才能成功,因此可以防止不必要的误删除。
2. 软连接(符号链接):
符号连接:用ln -s命令建立文件的符号连接符号连接是linux特殊文件的一种,作为一个文件,它的数据是它所连接的文件的路径名。类似windows下的快捷方式。
可以删除原有的文件而保存连接文件,没有防止误删除功能。
三、linux文件系统操作
1. 文件的基本概念
在linux中,一切皆文件。文件是由创建者定义的,具有文件名的一组相关元素的集合,文件可以是文本文档、图片、程序等。
Linux系统下文件名长度根据不同类型文件系统有所不同。
文件取名必须遵守以下规则:
1. 除“/”外,所有字符都可使用;
2. 转义字符最好不用,如“ ? ”," * "(星号)," "(空格),“ $ ”,“ & ”等;
3. 避免使用“ + ”,“ - ”或“ . ”作为普通文件名的第一个字符(在Linux下以“ . ”开头的文件都是隐藏文件);
4. Linux系统的文件名大小写敏感。
2. Linux系统下的通配符(20个)
* :通配符,代表任意字符(0到多个)
?:通配符,代表一个字符
# :注释
\\ :转义符号,将特殊字符或通配符还原成一般符号
| :分割两个管线命令的界定
; :连续性命令的界定
~ :用户的根目录
$ :变量前需要加的变量值
! :逻辑运算中的“非”
/ :路径分割符号
> :输出导向,分别为“取代”和“累加”
>>:输出导向,分别为“取代”和“累加”
' :不具有变量置换功能
" :具有变量置换功能
` :quote符号,两个`中间为可以先执行的指令
() :中间为子shell的起始与结束
[] :中间为字符组合
:中间为命令区块组合
&&:当该符号前一个指令执行成功时,执行后一个指令
|| :当该符号前一个指令执行失败时,执行后一个指令
3. Linux系统下的常用快捷操作(七个)
Ctrl+C:终止当前命令
Ctrl+D:输入结束
Ctrl+M:相当于Enter
Ctrl+S:暂停屏幕的输出
Ctrl+Q:恢复屏幕的输出
Ctrl+U:在提示符下,将整行命令删除
Ctrl+Z:暂停当前命令
四、文章分享
网络篇
linux篇
应急响应篇
闲聊篇
以上是关于[ linux ] 文件系统和目录结构详解的主要内容,如果未能解决你的问题,请参考以下文章