Linux基础篇之文件系统(一)

关于Linux的硬盘结构,前面在文件系统中记录过一部分,下面详细记录一下关于Linux的硬盘与分区结构。可以结合:https://www.cnblogs.com/641055499-mozai/p/11779936.html  与  https://www.cnblogs.com/641055499-mozai/p/11817125.html

一、Linux分区。

  分区介绍:

  在现在技术中,硬盘的分区主要有两种:MBR(主引导记录分区表)与GPT(GUID分区表)。

  MBR:支持最大单个硬盘2.1TB,(若大于2.1TB,则多余部分无法使用);最多支持4个主分区,或者3个主分区1个扩展分区(扩展分区内可以划分逻辑分区)。

  GPT:支持最大单个硬盘18EB,(1EB=1024PB=1024*1024TB);最多支持128个分区,1个系统保留分区,127个用户自定义分区。

  在Linux中,是分区挂载到目录的。比如boot分区,是挂载到 /boot 这一目录中的,进入 /boot目录就相当于进入到 boot分区中。

  每个分区内都包含一个文件系统。

二、文件系统介绍。

  1、分类:在Windows中,文件系统包括FAT16(Linux中的fat文件系统)、FAT32(Linux中的vfat文件系统)、NTFS(Linux中需要安装ntfs-3g插件)。Linux中包含EXT、EXT2、EXT3、EXT4、XFS、iso9660。

  2、补充:

    (a):XFS文件系统是一个日志型文件系统,它能够在断电或系统崩溃的情况下保证文件系统数据的一致性。

    (b):iso9660是光盘的标准文件系统。

    (c):NFS是网络文件服务,可以实现不同主机之间共享文件的网络服务,本地主机可以通过挂载的方式共享资源。

    (d):swap是Linux中交换分区的文件系统,类似于Windows中的虚拟内存,当内存不够时,暂时代替内存。它是Linux中的必需分区。

  3、结构:在Linux中,文件系统的结构可以分为以下几部分。

    (a)自举块:为磁盘分区的第一个块,记录文件系统分区的一些信息,引导加载当前分区的程序和数据被保存在这个块中。也被称为引导块或MBR(主引导记录)

    (b)超级块(super block):用于记录block与inode的总量、使用 量、剩余量,数据真正存放的block编号,文件系统的挂载时间,最近一次写入数据的时间等。可以说,没有超级块,就没有这个文件系统。为防止super block出现问题,会有多个副本,用的使用只用一个,这样避免了当超级块出现问题时,影响整个文件系统安全性。

    (c)i节点(inode):inode是用来记录文件属性的,比如说:文件的权限、所有者与组、文件的大小、修改时间等。一个文件占用一个inode,系统读取文件的时候,需要先找到inode,并分析inode所记录的权限与用户是否符合,若符合才能够开始实际读取block的内容。

    (d)数据块(dateblock或block):用于实际存储数据。block的大小分为1KB、2KB、4KB(若改变大小,则需要重新格式化),一个block只能存储一个文件的数据,文件的数据大时,会占用多个block。

三、相关命令

  1、df 命令 (查看空间使用占用率)

  用法:df  选项

  选项:-T 显示文件系统类型

     -h 将存储单位转化为常用单位,一般是GB/MB等。

  2、ll(ls -l)命令

  用法:ll  选项  文件名

  选项:-h  将存储单位转化为常用单位,一般是GB/MB/KB等。

  3、du 命令

  用法:du  选项  目录

  选项:-a  统计目录下每个文件的大小。默认情况下只统计目录的大小。

     -h  将存储单位转化为常用单位,一般是GB/MB/KB等。

     -s  直接显示出目录大小,不一一列出子目录和子文件的大小。

  注意:命令1和命令3都有统计磁盘使用情况的作用。但是,命令1统计磁盘的信息中包含临时文件和未释放的文件等等,系统重启就会被释放,所以命令1统计的只有剩余空间是准确的;命令3统计磁盘已使用信息或者目录大小是准确的。

  4、fsck(修复文件系统)

  用法:fsck  选项  设备名

  这个命令在开机时会自动执行。

  5、stat (查看文件详细信息)

  用法:stat 文件名

  

猜你喜欢

转载自www.cnblogs.com/641055499-mozai/p/12873065.html