Linux文件系统

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 尽管在过去的几十年里,计算机硬件技术行得到了飞速的发展,但磁盘这一古老的存储介质仍然是几乎所有电脑的必备。本章介绍 Lin nux 下的磁盘管理,包括 Linux 文件系统的概念及使用、硬盘分区及格式化、使用外部设备备、文件归档及备份等。本章对于普通用户和系统管理员都有一定的借鉴作用。

⭐本文介绍⭐


尽管在过去的几十年里,计算机硬件技术行得到了飞速的发展,但磁盘这一古老的存储介质仍然是几乎所有电脑的必备。本章介绍 Lin nux 下的磁盘管理,包括 Linux 文件系统的概念及使用、硬盘分区及格式化、使用外部设备备、文件归档及备份等。本章对于普通用户和系统管理员都有一定的借鉴作用。


关于硬盘


硬盘是当前使用最为广泛的数据存储设备。从存储原理上讲,硬盘和磁带是一样的。硬盘内部是几个叠在一起的磁性盘片,读取数据的时候,盘片以恒定的速度旋转,边上有一个小磁头进行读取和写入。磁头通过改变盘片上磁性物质的排列来写入数据。值得注意的是,磁头在读写数据的时候并不接触盘面,而是悬浮在距离盘片表面非常近的地方。如果因为某些原因,磁头接触到了盘片,那么就会产生破坏性的后果,这也是为什么不能在运行时搬动主机的一个原因。

现如今有多种不同的硬盘接口。从市场占有率和获支持程度来说,SCSI和 IDE 曾经占据了统治地位。然而这些年,随着 SATA 接口硬盘价格的不断下降,越来越多的人选择了SATA 硬盘。现在新配的电脑全部是 SATA 硬盘,也就是所说的串口硬盘。


Linux文件系统


操作系统必须用一种特定的方式对磁盘运进行操作。例如,怎样存储一个文件?怎样表示一个目录?怎样知道某个特定的文件存储在在硬盘的哪个位置?这些问题都可以通过文件系统来解决。简单来说,文件系统是一种对物勿理空间的组织方式,通常在格式化硬盘时创建。在 Windows 下,有 NTFS 和 FAT 两种文件系统。同样地,Linux 也有自己的文件系统并一直在快速演变,下面简要介绍其中最常用 的几种。


ext3fs和ext4fs文件系统


在过去很长一段时间内,ext3fs(Seco ind Extended File System)是 Linux 上主流的文件系统。随着 ext4fs(Third Extended File Sy rstem)的出现,ext3fs 逐渐被替代。正如名字中所体现出来的那样,ext4fs 是对 ext3fs 的扩 展和改善。通过增加日志功能,ext4fs 大大增加了文件系统的可靠性。

日志功能是基于灾难恢复的需求而诞生生的。ext4fs 文件系统预留了一块专门的区域来保存日志文件,当对文件进行写操作时,所行作的修改将首先写入日志文件,随后再写入一条记录标记日志项的结束。完成以上这些操操作后,才会对文件系统作实际的修改。这样,当系统崩溃后,就可以利用日志恢复文件系系统,在最大程度上避免了数据的丢失。

值得一提的是,所有这些检查都是自动完成的。日志机制检查每个文件系统所需的时间约为1秒,这意味着灾难恢复几乎不耽误任何时间。


2487caa34e7140a8aa411cd0a5eaf8a.png


ReiserFS文件系统


ReiserFS 是另一种在 Linux上广泛使用的文件系统。相比较 ext2fs/ext3fs 来说,这是一个非常年轻的文件系统,其作者 Hans Reiser 于 1997 年 7 月23 日将 ReiserFS 在互联网上 公布。Linux 内核从 2.4.1 版本开始支持 Reiser FS.ReiserFS 曾经一度是 SUSE Linux的默认文件系统。

和 ext3fs 一样,ReiserFS 也是一种日志文化件系统,从而免去了对系统崩溃、意外断电等特殊事件的担忧。除此之外,ReiserFS 第4片饭还加入了模块化的文件系统接口,这个功

能对于开发人员和系统管理员而言会比较有用, 它可以在特殊环境里增强文件的安全性。

在算法空间效率上,Reiser4 无疑比以前做的更好。Reiser4 的新算法可以同时兼顾速度和磁盘利用率,而其他文件系统往往需要系统管理员在这两个方面进行选择。


有关swap


应该说,把这一节放在这里多少显得有一点无奈。swap 是什么文件系统?几乎所有的 Linux 初学者都会问这样的问题。事实上,swap 并不是一种文件系统。出现这样的误解多以来源于在安装时,Linux 把 swap 和 ext3fs 这些文件系统放在一起的缘故。那么,swap究竟是什么?

swap 被称为交换分区。这是一块特殊的硬盘空间,当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间。这种“拆东墙,补西墙”的方式被应用于几乎所有的操作系统。其显著的优点在于,通过操作系统的调度,应用程序实际可以使用的内存空间将远远超过系统的物理内存。由于硬盘空间的价格比 RAM 低得多,因此这种方式是非常经济和实惠的。当然,频繁地读写硬盘会显著降低系统的运行速度,这是使用交换分区最大的限制。

相比较而言,Windows 不会为 swap 单独划分一个分区,而是使用分页文件实现相同的功能。在概念上,Windows 称其为“虚拟内存”(从某种意义上讲,这个叫法似乎更容易理解)。因此,如果读者对 Windows 熟悉的话,把交换分区理解为虚拟内存也是完全吗行的。

具体使用多大的 swap 分区取决于物理内存大小和硬盘的容量。一般来说,swap 分区容量应该要大于物理内存大小,但目前不能超过2GB。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
4天前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
38 8
|
9天前
|
存储 Linux 文件存储
Linux文件系统
Linux文件系统 一切皆文件 在Linux中,“一切皆文件”的概念意味着系统中的所有资源,包括硬件设备、目录及进程等,均被视为文件。这种设计简化了操作和管理,具体包括: 普通文件:存储数据的常规文件。 目录文件:包含其他文件和子目录的文件。 进程文件:在/proc目录下代表系统中运行的进程。 设备文件:位于/dev目录,代表硬件设备。 网络字节流套接字文件:用于网络通信的数据流。 链接文件:指向另一个文件的符号链接或硬链接。 管道文件:用于进程间通信的文件。
40 7
|
2月前
|
存储 Linux 索引
Linux 下最主流的文件系统格式——ext
【9月更文挑战第8天】硬盘被划分为若干相同大小的块(Block),默认大小为4K,便于灵活管理文件数据。文件数据分散存放于这些块中,提高了数据添加、删除和插入的便利性。
|
3月前
|
编解码 Linux 程序员
深度探索Linux操作系统 —— 构建根文件系统2
深度探索Linux操作系统 —— 构建根文件系统
45 12
|
3月前
|
Linux Shell 网络安全
深度探索Linux操作系统 —— 构建根文件系统1
深度探索Linux操作系统 —— 构建根文件系统
54 6
|
3月前
|
存储 人工智能 数据管理
深入理解Linux操作系统之文件系统管理探索人工智能:从理论到实践的旅程
【8月更文挑战第30天】在探索Linux的无限可能时,我们不可避免地会遇到文件系统管理这一核心话题。本文将深入浅出地介绍Linux文件系统的基础知识、操作命令及高级技巧,帮助你更有效地管理和维护你的系统。从基础概念到实践应用,我们将一步步揭开Linux文件系统的神秘面纱。
|
3月前
|
存储 Linux 数据安全/隐私保护
在Linux中,如何创建文件系统的备份?
在Linux中,如何创建文件系统的备份?
|
3月前
|
存储 监控 Linux
|
3月前
|
存储 监控 Linux
|
3月前
|
存储 缓存 Linux
在Linux中,文件系统概念是什么?
在Linux中,文件系统概念是什么?