Linux文件系统初识
发布日期:2021-05-08 12:50:07 浏览次数:22 分类:精选文章

本文共 1134 字,大约阅读时间需要 3 分钟。

为啥要认识文件系统

在学习一个新的知识点之前,了解它的作用和意义总是能让学习更有方向。文件系统也是如此。在Linux系统中,所有的操作都与文件系统密切相关,这一点可能会让刚接触Linux的新手感到困惑。比如说,使用wiringPi库来操作树莓派的IO口和外设,虽然方便,但如果不了解文件系统的基本概念,可能需要花费很多时间来手动配置驱动文件和修改文件权限才能实现同样的功能。

文件系统的定义

很多人对文件系统的理解仅限于电脑里的文件夹和目录,这种认知是错误的。文件系统是操作系统用于存储和组织文件的方法和数据结构。它决定了如何在存储设备(如磁盘或NAND Flash)上存放文件。简单来说,文件系统是操作系统中一个管理文件的程序,用于明确存储设备上的文件。

文件系统的种类

不同操作系统使用不同的文件系统,有时甚至一个系统中可以支持多种文件系统。例如,Windows主要使用NIFS文件系统,而Linux则支持多种文件系统,如FAT、VFAT、FAT32、NIFS、EXT1/2/3/4等。通过使用df -T命令可以查看当前系统支持的文件系统类型。

常见文件系统种类

  • tmpfs/devtmpfs:基于内存的文件系统,用于存放临时文件。
  • vfat:基于磁盘的文件系统,常用于存储boot相关文件。
  • ext4:常用于存储根目录文件,如/home/
  • 分区的概念

    分区是将物理存储空间划分为多个逻辑存储空间的过程。在Windows中,用户可能经常看到C盘、D盘等分区,这些分区通常是连续的存储空间。Linux默认系统有四个分区:

  • bootloader:存放启动代码。
  • para:存放启动参数。
  • kernel:存放内核。
  • 根分区:存放文件系统分区。
  • 每个分区都按照功能严格存放文件,确保文件管理更加有序。

    Linux文件系统目录结构

    Linux遵循LSB和FHS规范,目录结构遵循如下规范:

    目录名 说明
    /bin 存放系统指令
    /boot 存放内核文件
    /home 用户的主目录
    /lib 存放系统库文件
    /lost+found 存放找回文件的信息
    /media 附加存储设备的挂载目录
    /mnt 挂载目录
    /proc 存放内核相关文件
    /root 管理目录
    /var 存放系统日志和配置文件
    /dev 驱动文件和字符设备的存放位置

    根目录是文件系统的主目录,主要存放系统文件和应用程序。

    虚拟文件系统

    虚拟文件系统(vfs)是解决文件交互复杂性的关键。它像是一个中间层,连接用户和实际的文件系统,提供统一的操作接口。例如,通过open函数调用文件时,虚拟文件系统会与实际文件系统进行交互,确保操作的一致性。这使得开发者无需关心具体文件系统类型,简化了文件操作的复杂性。

    上一篇:Linux内核结构粗解及关于 shell 通俗理解
    下一篇:人生第一次编译Linux内核

    发表评论

    最新留言

    初次前来,多多关照!
    [***.217.46.12]2025年03月20日 20时27分01秒