Linux文件系统

Linux以文件的形式对计算机中的数据和硬件资源进行管理,也就是彻底的一切皆文件,反映在Linux的文件类型上就是:普通文件、目录文件(也就是文件夹)、设备文件、链接文件、管道文件、套接字文件(数据通信的接口)等等。而这些种类繁多的文件被Linux使用目录树进行管理, 所谓的目录树就是以根目录(/)为主,向下呈现分支状的一种文件结构。不同于纯粹的ext2之类的文件系统,我把它称为文件体系,一切皆文件和文件目录树的资源管理方式一起构成了Linux的文件体系,让Linux操作系统可以方便使用系统资源。
所以文件系统比文件体系涵盖的内容少很多,Linux文件体系主要在于把操作系统相关的东西用文件这个载体实现:文件系统挂载在操作系统上,操作系统整个系统又放在文件系统里。但本文中文件体系的相关内容不是很多,大部分地方都可以用文件系统代替文件体系。

1.Linux文件目录
在标准Linux目录下,其目录结构如下图:
在这里插入图片描述
针对上述各个文件目录的对应存放的文件说明如下表:

目录描述
bin常用的命令
boot放置一些启动用的临时文件
dev设备文件
etc系统所有配置文件都放在它下面
home用户目录,对应权限用户只能查看到自己的目录
lib用于存取程序的动态库和模块文件
lost+found用于存放系统异常时丢失的文件
media用于挂在本地磁盘或者其他储存设备
mnt用于挂在其他临时系统文件
proc系统运行的相关信息,不是内存映射,不是真实目录
rootroot用户的目录
sbin里面很多是root用户才能执行的命令,系统的更新备份还原和开关机用的
srvservice的缩写,是一些网路服务启动后,这些服务所需取用资料目录
sys系统信息
tmp存放各种临时文件
usrUnix操作系统软件资源所放置的目录
var量文件–在运行中内容不断变化的文件。如日志文件

2.文件类型
那就先简单说说Linux中的文件类型,主要关注普通文件、目录文件和符号连接文件。

普通文件(-)
从Linux的角度来说,类似mp4、pdf、html这样应用层面上的文件类型都属于普通文件,Linux用户可以根据访问权限对普通文件进行查看、更改和删除。

目录文件(d,directory file)
目录文件对于用惯Windows的用户来说不太容易理解,目录也是文件的一种,目录文件包含了各自目录下的文件名和指向这些文件的指针,打开目录事实上就是打开目录文件,只要有访问权限,你就可以随意访问这些目录下的文件(普通文件的执行权限就是目录文件的访问权限),但是只有内核的进程能够修改它们。

符号链接(l,symbolic link)
这种类型的文件类似Windows中的快捷方式,是指向另一个文件的间接指针,也就是我们常说的软链接

块设备文件(b,block)和字符设备文件(c,char)
这些文件一般隐藏在/dev目录下,在进行设备读取和外设交互时会被使用到,比如磁盘光驱就是块设备文件,串口设备则属于字符设备文件,系统中的所有设备要么是块设备文件,要么是字符设备文件,无一例外。

FIFO(p,pipe)
管道文件主要用于进程间通讯。比如使用mkfifo命令可以创建一个FIFO文件,启用一个进程A从FIFO文件里读数据,启动进程B往FIFO里写数据,先进先出,随写随读。

套接字(s,socket)
用于进程间的网络通信,也可以用于本机之间的非网络通信,这些文件一般隐藏在/var/run目录下,证明着相关进程的存在。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值