如果想深入的理解linux操作系统,势必要清楚的了解在linux下的文件系统及其对文件的分类,这样才能方便以后的深入学习和熟练的去操作它。这里我将对linux操作系统下的文件系统及文件类型进行一个小的总结,这样既是对自己知识的系统提升,又可以供大家相互探讨。
首先我们一起看一看文件系统。
文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。
操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:与文件管理有关软件、被管理文件以及实施文件管理所需数据结构。从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。
了解了文件的系统的概念及作用和组成后,我们先简单看看windows下文件系统与linux下文件系统的区别:
在windows下的文件系统是以驱动的盘符为基础,如在windows下一般分为多个盘符:
且一个目录与相应的分区对应:
这里的D:\Ubuntu是指目录Ubuntu在D盘这个分区下;
最后用一句话来总结:windows下目录结构属于分区。
在linux操作系统中文件系统就是一个"文件树",并且它的所有文件和外部设备(硬盘、光驱等)都以文件的形式挂接在这个文件树上:
聊到这里大家不免会产生一些疑惑,咋没看见linux系统中的外部设备文件呢?呵呵。。。千万不要急,看了下图相信你的疑惑会消解的^-^:
上图所显示的linux操作系统下一些外部设备装置及对应在linux内的文件名。
小结:在linux中把每一个分区和一个目录相对应,分区属于目录结构。
linux操作系统这样设计的最大的好处之一就是实现了硬件管理手段和软件目录管理手段相统一,方便了程序及相关的硬件开发人员利用linux操作系统进行各种复杂的开发设计。我想这就是在程序及硬件相关的开发界linux操作系统有如此多的狂热者的重要原因之一吧!^-^
简单的了解下文件系统,下面咋们就来看看在linux操作系统中的文件的分类:
在linux系统中,一共分为七种文件类型,他们分别如下:
1)、目录文件(directory file):包含了其他文件的名字及指向与这些文件有关信息的指针;
2)、普通文件(regular file):包含某种形式的数据(字符型、二进制数据),分为ASCII文件(及文本文件)、二进制文件;这些数据的形式对于内核并无区别;
3)、字符设备文件(character device file):该文件用于系统某些类型的设备;
4)、块设备文件(block device file):该文件典型的用于磁盘设备。系统中所有字符特殊文件,或者是块特殊文件;
5)、FIFO(称命名管道或有名管道):该文件用于进程间的通信;
6)、套接口(socket):该文件主要用于不同主机进程间的网络通信;
7)、符号链接(symbolic link):这种文件指向另一个文件,又称其为软连接,类似于Windows中的快捷方式;
注意:1、文件的硬链接不是一种文件类型,而是文件的一个别名。
总结到这里大家一定又会产生另一种疑问,那我以后遇到了这些文件我将如何区分,怎么知道它们属于哪种文件呢?
呵呵...有种疑问很正常。这个很简单,一般每类文件都是用特定的字符指出来的,只需要查看文件的属性即可看到这些字符:
-:普通文件
d:目录文件
l:链接文件
b:块设备文件
c:字符设备文件
p:管道文件
如图:
看完整个博文,相信你对文件系统和linux下文件类型已经有了一定的认识吧!
转载于:https://blog.51cto.com/7905648/1296484