Linux 中确定文件系统类型的方法
在计算中,文件系统是用于在存储设备中存储文件的布局或格式。文件系统用于对存储设备进行逻辑划分,以使不同的文件在存储设备中良好地组织起来,以便于从存储设备中轻松地搜索、访问、修改、删除等。
目前有许多可用的文件系统。不同的文件系统具有不同的结构、逻辑、功能、灵活性、安全性等。最常见的文件系统有 Ext4、Btrfs、XFS、ZFS、NTFS、FAT32 等。
有时,Linux 系统管理员需要确定文件系统类型,以便简单地挂载文件系统或诊断文件系统问题。不同的文件系统有不同的工具来诊断问题、检查错误和修复问题等。因此,您必须了解存储设备正在使用的文件系统,以确定要使用的维护工具。
在本文中,我将向您展示确定 Linux 中文件系统类型的不同方法。那么,让我们开始吧。
方式一:使用 df 命令行工具
df 命令行程序预装在几乎所有您能找到的 Linux 发行版上。您可以使用df命令行程序查找所有已挂载的存储设备和分区的Filesystem类型。
要查找计算机上所有已安装存储设备和分区的文件系统类型,请运行df命令,如下所示:
df 命令将显示以下信息:文件系统:当前挂载的存储设备名称或分区名称。
挂载于:挂载存储设备/分区(文件系统)的目录。
类型:已安装存储设备/分区的文件系统类型。
大小:已安装的存储设备/分区的大小。
已用:已安装的存储设备/分区所使用的磁盘空间。
使用百分比:已安装的存储设备/分区使用的磁盘空间的百分比。
可用:已安装的存储设备/分区的可用磁盘空间量。
在 Ubuntu 上,df 命令将显示许多循环设备,如下面的屏幕截图所示。
您可以使用df命令的-x选项隐藏loop设备,如下所示:
您还可以从 df 命令的输出中隐藏 tmpfs 设备。
要从 df 命令的输出中隐藏 tmpfs 设备,请使用 -x 运行 df 命令> 选项如下:
现在,输出看起来干净多了。如果需要,您可以从 df 命令的输出中删除 udev 设备。
要从 df 命令的输出中删除 udev 设备,请运行 df 命令,如下所示:
df 命令的输出中仅显示物理存储设备和分区。输出看起来也比以前好得多。
方式二:使用lsblk命令
lsblk 命令行程序几乎预装在您能找到的每个 Linux 发行版上。您可以使用lsblk命令行程序查找计算机上所有(已安装和未安装)存储设备和分区的文件系统类型。
要查找计算机上所有(已安装和未安装)存储设备和分区的文件系统类型,请运行lsblk命令,如下所示:
lsblk 命令将显示以下信息:NAME: 存储设备名称或存储设备的分区名称。
MOUNTPOINT:安装存储设备/分区(文件系统)的目录(如果已安装)。
FSTYPE:存储设备/分区的文件系统类型。
LABEL:存储设备/分区的文件系统标签。
UUID:存储设备/分区的文件系统的UUID(通用唯一标识符)。
FSUSE%:存储设备/分区使用的磁盘空间百分比。
FSAVAIL:存储设备/分区的可用磁盘空间量
和以前一样,您可以从 lsblk 命令的输出中隐藏循环设备。
要在 lsblk 命令的输出中隐藏循环设备,请运行带 -e7 选项的 lsblk 命令,如下所示:
正如您所看到的,所有循环设备都从 lsblk 命令的输出中删除。输出看起来比以前干净很多。
方式三:使用blkid命令
blkid 命令行程序预装在几乎所有您能找到的 Linux 发行版上。您可以使用blkid命令行程序查找计算机上所有(已安装和未安装)存储设备和分区的文件系统类型。
要查找计算机上所有(已安装和未安装)存储设备和分区的文件系统类型,请运行 blkid 命令,如下所示:
lsblk 命令将显示以下信息:NAME: 存储设备的名称或存储设备的分区名称。即/dev/sda1、/dev/sda5。
UUID:存储设备/分区的文件系统的UUID(通用唯一标识符)。
类型:存储设备/分区的文件系统类型。
PARTUUID:分区的UUID(通用唯一标识符)。
您还可以像以前一样从 blkid 命令的输出中隐藏循环设备。
要在 blkid 命令的输出中隐藏循环设备,请运行 blkid 命令,如下所示:
如您所见,循环设备不会显示在 blkid 命令的输出中。输出看起来比以前好得多。
方式四:使用file命令
file 命令行程序预装在几乎所有您能找到的 Linux 发行版上。您可以使用 find 命令行程序来识别 Linux 上文件的文件类型。由于 Linux 中每个设备都被视为一个文件,因此您可以使用 find 命令行程序来确定 Linux 中存储设备或分区的文件系统类型。
例如,要确定分区 sdb1 的文件系统类型,可以运行 file 命令,如下所示:
如果您阅读 file 命令的输出,您可以看到 sdb1 分区正在使用 FAT32 文件系统。
同理,可以使用file命令查找sda5分区的文件系统类型,如下:
如您所见,分区 sda5 使用 EXT4文件系统。
方式五:使用mount命令和/etc/mtab文件
/etc/mtab 文件包含计算机上所有已安装存储设备和分区的条目。您可以读取此文件来查找存储设备和分区的文件系统类型。 mount 命令行程序还会打印/etc/mtab 文件的内容。因此,您也可以使用 mount 命令行程序来查找相同的数据。
您可以使用以下命令读取/etc/mtab文件的内容:
可以看到,/etc/mtab文件中有大量的挂载信息。
您可以使用 mount 命令找到相同的信息,如下面的屏幕截图所示。
由于 /etc/mtab 文件或 mount 命令的输出有很多挂载条目,因此很难解释它。您可以使用 grep 命令来过滤输出并非常轻松地找到您需要的内容。
例如,要使用 mount 命令或 /etc/mtab 文件查找 sda1 分区的文件系统类型,请运行以下命令之一命令:
或者,
可以看到,sda1分区的文件系统类型为FAT32/vfat
以同样的方式,要使用 mount 命令或 /etc/mtab 文件查找 sda5 分区的文件系统类型,请运行以下命令之一以下命令:
或者,
可以看到,sda5分区的文件系统类型是EXT4。
方式六:使用/etc/fstab文件
/etc/fstab 文件为每个在启动时自动安装的存储设备或分区保留一个条目。因此,您可以读取此文件来查找所需存储设备或分区的文件系统类型。
假设您的计算机未配置为在启动时自动安装存储设备或分区。在这种情况下,/etc/fstab 文件中很可能不会有该存储设备或分区的任何条目。在这种情况下,您将无法在 /etc/fstab 文件中找到有关该存储设备或分区的任何信息。您将必须使用本文中描述的其他方法来查找存储设备的文件系统类型或分区。
您可以使用以下命令读取 /etc/fstab 文件的内容:
/etc/fstab 文件的内容。
您可以看到 UUID 为 3f962401-ba93-46cb-ad87-64ed6cf55a5f 的存储设备或分区使用 EXT4 文件系统。
具有 UUID dd55-ae26 的存储设备或分区正在使用 vfat/FAT32 文件系统。
/etc/fstab 文件中以 # 开头的行是注释。这些线没有真正的目的。它们仅用于文档目的。
如果需要,您可以使用 grep 命令隐藏它们,如下所示:
正如你所看到的,注释消失了,输出看起来比以前干净了很多。
/etc/fstab 文件默认使用 UUID,而不是存储设备名称或分区名称。您可以使用blkid命令将UUID转换为存储设备名称或分区名称。
例如,要将 UUID 3f962401-ba93-46cb-ad87-64ed6cf55a5f 转换为存储设备或分区的名称,请运行 blkid 命令,如下所示:
如您所见,分区sda5的UUID为3f962401-ba93-46cb-ad87-64ed6cf55a5f。
同理,可以找到UUID为DD55-AE26的存储设备或分区名称,如下:
如您所见,分区 sda1 的 UUID 为 DD55-AE26。
结论:
本文向您展示了确定 Linux 中存储设备/分区的文件系统类型的不同方法。我向您展示了如何使用df、lsblk、blkid、file和mount命令来确定Linux存储设备和分区的文件系统类型。我还向您展示了如何通过读取 /etc/mtab 和 /etc/fstab 文件来确定 Linux 系统的存储设备和分区的文件系统类型。