Linux中的磁盘格式化和分区是什么?

格式化和分区磁盘是 Linux 管理的一个关键方面。您可以使用格式化和分区来解决用例,例如准备存储介质以供使用、解决现有磁盘的空间问题或擦除文件系统。本文将带您了解如何对磁盘进行分区和格式化以完成常见的 Linux 管理任务。

Linux中的磁盘格式化和分区是什么?-南华中天

Linux 中的磁盘格式化是什么?

磁盘格式化是准备存储分区以供使用的过程。格式化会删除分区上的现有数据并设置文件系统。

一些最流行的 Linux 文件系统包括:

  • Ext4 - Ext4 是许多现代 Linux 发行版中常见的默认文件系统。它支持最大 16TB 的文件大小和最大 1EB 的卷。Windows 默认不支持它。
  • NTFS - NTFS是由 Microsoft 开发的一种流行的文件系统。它支持 8PB 的最大卷和文件大小。Linux 内核在 5.15 版本中添加了对 NTFS 的全面支持。
  • FAT32 - 是一个较旧的文件系统,但您仍然可以看到它在野外使用。它支持 4GB 的最大文件大小和 2TB 的最大卷大小。许多 *nix 和 Windows 操作系统都支持 FAT32。

Linux 中的分区是什么?

分区是在存储设备上创建逻辑边界的过程。存储设备的常见示例包括硬盘驱动器 (HDD)、固态驱动器 (SSD)、USB 闪存驱动器和 SD 卡。在驱动器上创建分区在逻辑上将其与其他分区分开。这种逻辑分离可用于多种情况,包括限​​制文件系统的增长和在单个驱动器上安装多个操作系统。

如何在 Linux 上对磁盘驱动器进行分区和格式化

现在让我们深入了解 Linux 系统上的磁盘分区和格式化。

Linux中的磁盘格式化和分区是什么?-南华中天

先决条件

在我们开始之前,您需要:

  • 访问 Linux 系统的终端。我们将使用 Ubuntu 22.04 LTS。
  • 须藤/根权限
  • 您要格式化和分区的可用磁盘。我们将使用来自 Cherry Servers的具有自定义分区布局的服务器。
  • 备份您不想丢失的任何数据(可选)

如何在 Linux 中查看磁盘

要在 Linux 中查看可用磁盘,请运行以下命令:

fdisk -l | grep "Disk /"

输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

上面的fsdisk输出包括循环设备,它们是逻辑伪设备,但不是真正的磁盘。如果您需要更精细的磁盘视图,请使用该lsblk -I 8 -d命令。“-I 8”指定块设备的内核设备号,-d 排除分区。

输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

如果您需要更多信息来正确识别您的驱动器,请使用lshw -class disk. 输出将包括其他标识信息,例如产品、大小、供应商、总线和逻辑名称(设备的路径),类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

如何在 Linux 中查看现有分区

在创建新分区之前,您可能希望查看现有分区。要在 Linux 中查看现有分区,请使用lsblk命令。输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

在我们的示例中,分区在输出中有一个TYPEofpart并且嵌套在它们的磁盘下。sda1

如果要查看文件系统类型、磁盘标签和 UUID 等信息,请使用命令lsblk -f。输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

如何在 Linux 中对磁盘进行分区

在 Linux 中有多种磁盘分区方法,包括parted和gparted,但我们将在这里重点介绍流行的fdisk实用程序。对于我们的案例,我们假设我们的磁盘安装在/dev/sda. 我们将创建一个主分区并使用默认的分区号、第一个扇区和最后一个fdisk选择的扇区。您可以根据您的要求修改这些选项。

注意:如果您正在对当前挂载的磁盘进行分区,请首先使用命令 `umount </path/to/disk> 卸载它。

首先,我们将fdisk使用以下命令打开我们的驱动器:

fdisk /dev/sda

这将启动交互式fdisk实用程序,您应该会看到类似于以下内容的输出:

Linux中的磁盘格式化和分区是什么?-南华中天

在Command (m for help):提示符下,键入n以创建一个新分区。输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

显示挂载在/dev/sda目录下的磁盘有一个主分区正在格式化并正在使用。

我们将按回车键选择默认分区并创建一个新的主分区。然后,系统会提示我们提供分区号。

Linux中的磁盘格式化和分区是什么?-南华中天

我们将使用默认值2,然后提示输入扇区号。

Linux中的磁盘格式化和分区是什么?-南华中天

我们将按 Enter 键接受默认的第一个扇区,然后系统会提示输入最后一个扇区。

Linux中的磁盘格式化和分区是什么?-南华中天

同样,我们将按回车键接受默认值并fdisk创建分区。请注意,如果我们想创建一个较小的分区,我们可以在第一个和最后一个块之间使用较小的间隙。这将使我们能够在驱动器上创建多个分区。

完整的输出如下所示:

Linux中的磁盘格式化和分区是什么?-南华中天

您可以输入p以查看分区表并确保您的更改是正确的:

Linux中的磁盘格式化和分区是什么?-南华中天

如您所见,我们现在在/dev/sda磁盘上有两个分区。在Command (m for help):提示符下,输入 aw将更改写入 Linux 系统。输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

fdisk然后将退出,您将回到 Linux shell。我们可以sda通过运行命令看到我们新创建的分区lsblk /dev/sda。输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

如何在 Linux 中格式化磁盘

现在我们的磁盘已完全分区,我们可以格式化新创建的sda2分区。在 Linux 中格式化磁盘分区的一般语法是:

mkfs.<filesystem> </path/to/disk/partition>

例如,要格式化我们新创建的/dev/sda2分区,我们可以使用这个命令:

mkfs.ext4 /dev/sda2

输出应类似于:

Linux中的磁盘格式化和分区是什么?-南华中天

要改用 NTFS 文件系统,命令是:

mkfs.ntfs /dev/sda2

要改用 FAT32 文件系统,命令是:

mkfs.fat -F 32 /dev/sda2

该-F参数指定FAT-TYPE,它确定文件分配表是 12 位、16 位还是 32 位。

如何在 Linux 中挂载磁盘

一旦磁盘被分区和格式化,我们就可以在 Linux 中挂载文件系统。

首先,如果您的挂载点尚不存在,请使用mkdir命令创建它。一般的命令语法是:

mkdir </path/for/your/mount/point>

例如,要创建我们的挂载点/var/cherry,请使用以下命令:

mkdir /var/cherry

接下来,我们使用mount命令挂载我们的分区。在 Linux 中挂载磁盘分区的一般命令结构是:

mount -t <filesystem_type> -o <options> </path/to/disk/partition> </path/for/your/mount/point>

注意:如果省略该-t选项,该mount命令将默认为auto并尝试猜测正确的文件系统类型。

例如,要以读/写模式挂载我们的/dev/sda2(它有一个 Ext4 文件系统) ,我们可以使用这个命令”/var/cherry

mount -t ext4 -o rw /dev/sda2 /var/cherry

如果没有错误,该命令将不会返回任何输出。

lsblk /dev/sda您可以使用该命令确认您的分区挂载点是否正确。/var/cherry输出应包括新格式化/dev/sda2设备的新挂载点:

Linux中的磁盘格式化和分区是什么?-南华中天

最后,为了确保磁盘在 Linux 系统启动时自动挂载,您需要将其添加到/etc/fstab.

⚠️警告:小心!错误/etc/fstab可能导致您的系统无法启动!

/etc/fstab分区条目的一般格式是

</path/to/disk/partition> </path/for/your/mount/point> <filesystem_type> <options_from_mount> <dump> <pass_number>

解释 Ubuntu 的Fstab文件配置,<dump>使用命令转储启用或禁用备份。它可以设置为 1(启用)或 0(禁用),通常禁用。<pass_number>确定fsck系统启动时检查分区错误的顺序。通常,系统的根设备为 1,其他分区为 2。0 禁用fsck开机检查。

要编辑/etc/fstab,请在文本编辑器(如nano或)中将其打开vim并进行更改。对于/dev/sda2安装在 的分区/var/cherry,我们将使用此配置:

/dev/sda2 /var/cherry ext4 rw 0 0

保存更改并在完成后关闭文本编辑器。

结论

而已!现在您了解了如何在 Linux 上分区和格式化磁盘的基础知识。要更深入地了解分区、格式化和安装驱动器的主题,我们建议阅读我们在此处使用的特定工具的手册页,mkfs.<type>例如实用程序(例如mkfs.ext4)、fdisk、mount和fstab。