iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >Linux文件系统的基本原理是什么及常见类型有哪些呢
  • 897
分享到

Linux文件系统的基本原理是什么及常见类型有哪些呢

2023-06-16 03:06:09 897人浏览 泡泡鱼
摘要

linux文件系统的基本原理是什么及常见类型有哪些呢,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在计算机出现之前其实就有文件系统的概念了,此时的文件系统是指用于管理(存储

linux文件系统的基本原理是什么及常见类型有哪些呢,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

在计算机出现之前其实就有文件系统的概念了,此时的文件系统是指用于管理(存储和检索等)纸质文件的系统。计算机及发明后,文件系统逐渐专指用于管理存储介质的系统。它通过简单的接口给用户,方便用户使用存储设备。

Linux文件系统的基本原理是什么及常见类型有哪些呢

Linux操作系统下的文件系统基本上也是如此。当我们进入Linux操作系统时,首先看到的是各种类型的目录(参考一篇文章学会Linux系统目录管理)和各种文件。Linux有个理念就是“一切皆文件”,在Linux操作系统中几乎所有资源都是以文件的形式呈现的。比如磁盘是文件,套接字是文件,系统配置项也是文件。所有这些内容在Linux都是通过文件系统来管理的。

在操作系统中,文件系统的概念得到了延伸。Linux的文件系统分为两类,一类是真实的文件系统,用于存储数据;另一类是伪文件系统,这些文件系统并不会持久化数据。今天我们将对Linux下的文件系统进行整体的介绍,让大家对文件系统有个概括的了解。

文件系统的使用

在Linux操作系统中文件系统的使用是非常简单的。如果使用的是ubuntu等有图形界面的操作系统,那么我们可以通过GUI浏览文件系统。这个跟使用windowsMac  OS操作系统很像。从用户角度来看,文件系统的文件被组织成树形结构。用户可以自由的创建目录和文件。

Linux文件系统的基本原理是什么及常见类型有哪些呢

但是如果是命令行的系统,那么就没有图形界面方便了。但是,从组织形式上来说,也是树形结构。只不过没有那么直观。如图我们通过tree命令可以看到文件系统的内容及结构。

Linux文件系统的基本原理是什么及常见类型有哪些呢

当然,上面说的都是文件系统已经挂载的场景。有些情况下我们有一个新的磁盘,但并没有挂载,这个时候怎么才能使用这块磁盘呢?方法也是非常简单的,只需要做如下几步:

  • 格式化磁盘,由于Linux支持很多种文件系统,我们在使用磁盘之前需要使用某种文件系统进行格式化。比如格式化为Ext4文件系统,mkfs.ext4  /dev/sdc。

  • 挂载文件系统,格式化后并不能马上使用,需要挂载到目录树上才可以使用。具体命令是mount /dev/sdc /mnt/ext4_test。

完成上述步骤后,/mnt/ext4_test目录就是新磁盘的根目录了,我们可以在其中创建子目录或者新文件了。从普通用户的角度来看,它只是一个子目录,并不会感知到其是一个新的磁盘,或者文件系统的具体类型。这一点与Windows有比较大的差异。

文件系统的基本原理

在操作系统层面,文件系统是其最关键的子系统之一,其核心功能是对存储资源的管理。也就是说文件系统是对磁盘(还包括光盘或者磁带等其它类型的存储介质)的空间进行管理的。文件系统对磁盘空间的管理其实还是比较简单的,就是将大的磁盘空间切割为很小的区域(例如4KB),然后通过对这些小区域的分配和释放来使用磁盘空间。

虽然文件系统是一个树形结构,但是磁盘本身的空间却是一个扁平的线性存储空间。以Ext4为例,文件系统将磁盘划分为若干个块组,每个块组又划分为若干磁盘块(可以在格式化时指定,默认是1KB)。

Linux文件系统的基本原理是什么及常见类型有哪些呢

为了管理这些磁盘块,总是需要一些区域来记录哪些磁盘块已经被使用了,哪些还没有被使用。记录这些数据的数据通常在磁盘的特殊区域,我们称这些数据为文件系统的元数据。通过这些元数据文件系统实现了对磁盘空间的管理,最终为用户提供了简单易用的接口(使用接口,非api)。

文件系统的分类

前文我们介绍了基于存储介质的本地文件系统,对其基本原理也做了介绍。其实文件系统发展到现在,其种类也丰富多样。比如基于磁盘的普通本地文件系统除了Ext4外,还包括XFS、ZFS和Btrfs等等。其中Btrfs和ZFS不仅仅可以管理一块磁盘,还可以实现多块磁盘的管理,同时实现数据的冗余管理,这样可以避免磁盘故障导致的数据丢失。

另一个方面,除了对磁盘数据管理的文件系统外,还有一些网络文件系统。也就是说,这些文件系统看似在本地,但其实数据是在远程的专门的设备上。客户端是通过一些网络协议实现数据的传输的。比如NFS和GlusterFS等等文件系统。

几十年的发展,文件系统的种类也非常多,我们没有办法一一进行介绍。今天我们就按照大类对主要的文件系统进行介绍,不足之处还请指教。

1. 本地文件系统

本地文件系统是对磁盘空间进行管理的文件系统。从呈现形态上来看,文件系统就是一个树形的目录结构。前面我们已经介绍了比较多的概念,其本质上就是实现对磁盘空间的管理,实现磁盘线性空间与目录结构的转换。

Linux文件系统的基本原理是什么及常见类型有哪些呢

从普通用户的角度来说,主要方便了对磁盘空的使用,降低了使用难度,提高了利用效率。常见的本地文件系统有Ext4、Btrfs、XFS和ZFS等等。

2. 伪文件系统

伪文件系统是对传统文件系统的延伸。伪文件系统并不会持久化数据,而是在内存中的文件系统。它以文件系统的形态实现用户与内核数据的交互。比如我们常见的伪文件系统包括proc、sysfs和configfs等等。

在Linux操作系统中伪文件系统主要实现内核与用户态的交互。比如获取IPv4协议的参数,我们只需要

3. 网络(分布式)文件系统

网络文件系统是一种将数据存储在远端的文件系统。网络文件系统通常分为客户端和服务端,其中客户端类似本地文件系统,而服务端则是对数据进行管理的系统。网络文件系统的使用与本地文件系统没有任何差别,只需要执行mount命令挂载即可。网络文件系统种类也很多,比如NFS、CephFS和Gluster等。

在用户层面,完成挂载后的网络文件系统与本地文件系统完全一样,看不出任何差异,对用户是透明的。网络文件系统就好像将远程的文件系统映射到了本地。

Linux文件系统的基本原理是什么及常见类型有哪些呢

如图是将文件系统服务中文件系统映射到客户端的示意图。从用户的角度只是某个子目录,但实际上读写请求需要通过网络转发到服务端进行处理。

4. 集群文件系统

集群文件系统也是一种本地文件系统。与普通本地文件系统的差异在于其后端磁盘通常是基于网络的SAN设备,且在多个节点共享(非绝对)。集群文件系统可以实现多个节点对磁盘介质的共同访问。

Linux文件系统的基本原理是什么及常见类型有哪些呢

同时,对于集群文件系统来说,其最大的特点是多个结点可以同时为应用层提供文件系统服务。这种常见特别适合用于应用业务多活的场景,通过集群文件系统提供高可用集群机制,避免宕机造成的服务失效情况。

关于Linux文件系统的基本原理是什么及常见类型有哪些呢问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网操作系统频道了解更多相关知识。

--结束END--

本文标题: Linux文件系统的基本原理是什么及常见类型有哪些呢

本文链接: https://www.lsjlt.com/news/282228.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux文件系统的基本原理是什么及常见类型有哪些呢
    Linux文件系统的基本原理是什么及常见类型有哪些呢,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。在计算机出现之前其实就有文件系统的概念了,此时的文件系统是指用于管理(存储...
    99+
    2023-06-16
  • Linux中有哪些常见的文件类型
    这篇文章将为大家详细讲解有关Linux中有哪些常见的文件类型,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。系统文件文件扩展名说明.conf一种配置文件。配置文件有时也使用 .cfg.lock...
    99+
    2023-06-16
  • linux的基本文件类型有哪些
    这篇文章主要介绍“linux的基本文件类型有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“linux的基本文件类型有哪些”文章能帮助大家解决问题。 ...
    99+
    2023-04-14
    linux
  • Linux系统上常见的文件管理类命令有哪些
    本篇内容介绍了“Linux系统上常见的文件管理类命令有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一...
    99+
    2024-04-02
  • Linux系统中常见的文件系统有哪些?
      Linux系统是现在非常受欢迎的操作系统,在Linux之中,一切都是文件,因为有很多操作都是依靠文件系统才可以完成的,而且文件系统可以满足用户正常的使用,那么Linux中常见的文件系统有哪些为大家介绍一下。  总体来说,在Linux之中...
    99+
    2023-06-05
  • Linux文件系统的原理是什么
    这篇文章将为大家详细讲解有关Linux文件系统的原理是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、硬盘简介在介绍文件系统前,我们先来了解一下 硬盘。众所周知,内存在断电后数据就会丢...
    99+
    2023-06-15
  • Linux文件系统的基本概念是什么
    本篇内容主要讲解“Linux文件系统的基本概念是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux文件系统的基本概念是什么”吧!Linux 文件系统基本概念Linux 在最初的设计是 ...
    99+
    2023-06-15
  • Linux系统常见的发行版本以及有什么区别
    Linux系统常见的发行版本以及有什么区别,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。  日常中操作系统十分常见,大家最熟悉的就是Windows系统,其实除了Windows系...
    99+
    2023-06-05
  • 美国VPS主机Linux系统常见的日志文件有哪些
    美国VPS主机Linux系统常见的日志文件有:“/var/log/messages”、“/var/log/cron”、“/var/log/dmesg”、“/var/log/maillog”、“/var/log/lastlog”、“/var/...
    99+
    2024-04-02
  • Win7系统MSDN版、OEM版、RTM版、VOL版各是什么意思以及各版本之间的区别有哪些
    我们常常听说操作系统的MSDN版、OEM版、R (一)MSDN (Microsoft Developer Network)版MSDN软件是微软公司面向软件开发者的一种版本。MSDN 涵盖了所有可以被开发扩充的平台和应用...
    99+
    2023-06-06
    Win7 MSDN OEM RTM VOL 意思
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作