翼度科技»论坛 云主机 服务器技术 查看内容

在Linux中对存储设备进行分区和格式化的操作步骤

8

主题

8

帖子

24

积分

新手上路

Rank: 1

积分
24
简介

在 Linux 系统上准备新磁盘以供使用是一个简单的过程。虽然有许多工具、文件系统格式和分区方案可能会因为特殊需求而改变这个过程,但基本原理仍然是一样的。
本指南将涵盖以下过程:

  • 在系统上识别新磁盘。
  • 创建一个跨越整个驱动器的单个分区(大多数操作系统都期望有一个分区布局,即使只有一个文件系统存在)
  • 使用 Ext4 文件系统格式化分区(在大多数现代 Linux 发行版中是默认的)
  • 挂载并设置文件系统在启动时自动挂载

步骤 1 — 安装 Parted

要对驱动器进行分区,您将使用
  1. parted
复制代码
实用程序。大多数与低级文件系统交互所需的命令在 Linux 上默认可用。创建分区的
  1. parted
复制代码
是偶尔的例外之一。
如果您在 Ubuntu 或 Debian 服务器上,并且尚未安装
  1. parted
复制代码
,可以通过输入以下命令进行安装:
  1. sudo apt update
  2. sudo apt install parted
复制代码
如果您在 RHEL、Rocky Linux 或 Fedora 服务器上,可以通过输入以下命令进行安装:
  1. sudo dnf install parted
复制代码
本教程中使用的其他命令应该是预安装的,因此您可以继续下一步。

步骤 2 — 在系统上识别新磁盘

在设置驱动器之前,您需要能够在服务器上正确识别它。
如果这是一个全新的驱动器,一种在服务器上识别它的方法是查找缺少分区方案。如果您要求
  1. parted
复制代码
列出磁盘的分区布局,对于没有有效分区方案的任何磁盘,它将产生错误。这可以用来帮助识别新磁盘:
  1. sudo parted -l | grep Error
复制代码
您应该会看到新的、未分区的磁盘出现
  1. unrecognized disk label
复制代码
错误:
  1. Error: /dev/sda: unrecognized disk label
复制代码
您还可以使用
  1. lsblk
复制代码
命令,并查找一个正确大小且没有关联分区的磁盘:
  1. lsblk
复制代码
  1. NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
  2. sda      8:0    0   100G  0 disk
  3. vda    253:0    0    20G  0 disk
  4. └─vda1 253:1    0    20G  0 part /
复制代码
当您知道内核为您的磁盘分配的名称后,您可以对驱动器进行分区。

步骤 3 — 对新驱动器进行分区

如简介中所述,您将在本指南中创建一个跨越整个磁盘的单个分区。

选择分区标准

首先,您需要指定要使用的分区标准。有两个选项:GPT 和 MBR。GPT 是一个更现代的标准,而 MBR 在旧操作系统中更受支持。对于典型的云服务器,GPT 是一个更好的选择。
要选择 GPT 标准,请使用
  1. parted
复制代码
并使用
  1. mklabel gpt
复制代码
传递您识别的磁盘:
  1. sudo parted /dev/sda mklabel gpt
复制代码
要使用 MBR 格式,请使用
  1. mklabel msdos
复制代码
  1. sudo parted /dev/sda mklabel msdos
复制代码
创建新分区

选择格式后,您可以使用
  1. parted -a
复制代码
创建跨越整个驱动器的分区:
  1. sudo parted -a opt /dev/sda mkpart primary ext4 0% 100%
复制代码
您可以将此命令分解如下:

    1. parted -a opt
    复制代码
    运行 parted,设置默认的 optimal 对齐类型。
    1. /dev/sda
    复制代码
    是您要分区的磁盘。
    1. mkpart primary ext4
    复制代码
    创建一个独立的(即可引导的,不是从另一个扩展的)分区,使用 ext4 文件系统。
    1. 0% 100%
    复制代码
    表示此分区应跨越磁盘的起始到结束。
有关更多信息,请参阅 Parted 的手册页。
如果您检查
  1. lsblk
复制代码
,您应该会看到新的分区可用:
  1. lsblk
复制代码
  1. NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
  2. sda      8:0    0   100G  0 disk
  3. └─sda1   8:1    0   100G  0 part
  4. vda    253:0    0    20G  0 disk
  5. └─vda1 253:1    0    20G  0 part /
复制代码
您现在已经创建了一个新分区,但尚未将其初始化为文件系统。这两个步骤之间的区别在某种程度上是任意的,并且是独特于 Linux 文件系统工作方式的,但在实践中它们仍然是两个步骤。

步骤 4 —— 在新分区上创建文件系统

现在你已经有了一个可用的分区,你可以将其初始化为 Ext4 文件系统。Ext4 不是唯一的文件系统选项,但它是单个独立 Linux 卷的最直接的选项。Windows 使用诸如 NTFS 和 exFAT 的文件系统,但它们在其他平台上的支持有限(这意味着在某些情况下它们将是只读的,并且不能用作其他操作系统的引导驱动器),macOS 使用 HFS+ 和 APFS,也有相同的注意事项。还有比 Ext4 更新的 Linux 文件系统,比如 ZFS 和 BTRFS,但这些文件系统有不同的要求,通常更适用于多磁盘阵列。
要初始化 Ext4 文件系统,使用 mkfs.ext4 实用程序。你可以使用 -L 标志添加分区标签。选择一个能帮助你识别这个特定驱动器的名称:
  1. sudo mkfs.ext4 -L datapartition /dev/sda1
复制代码
如果以后想要更改分区标签,可以使用
  1. e2label
复制代码
命令:
  1. sudo e2label /dev/sda1 newlabel
复制代码
你可以使用
  1. lsblk
复制代码
查看所有不同的识别分区的方法。你应该找到分区的名称、标签和 UUID。
某些版本的
  1. lsblk
复制代码
将使用
  1. --fs
复制代码
参数打印所有这些信息:
  1. sudo lsblk --fs
复制代码
你也可以手动指定它们,使用
  1. lsblk -o
复制代码
后跟相关选项:
  1. sudo lsblk -o NAME,FSTYPE,LABEL,UUID,MOUNTPOINT
复制代码
你应该会收到这样的输出。高亮显示的输出表示你可以用来引用新文件系统的不同方法:
  1. NAME   FSTYPE LABEL         UUID                                 MOUNTPOINT
  2. sda                                                              
  3. └─sda1 ext4   datapartition 4b313333-a7b5-48c1-a957-d77d637e4fda
  4. vda                                                              
  5. └─vda1 ext4   DOROOT        050e1e34-39e6-4072-a03e-ae0bf90ba13a /
复制代码
记下这个输出,因为你将在下一步挂载文件系统时用到它。

步骤 5 —— 挂载新文件系统

现在,你可以挂载文件系统以供使用。
文件系统层次结构标准建议使用 /mnt 目录或其子目录来临时挂载文件系统(如可移动驱动器)。它对于挂载更持久的存储没有建议,所以你可以选择任何你喜欢的方案。在本教程中,你将把驱动器挂载到 /mnt/data 下。
使用 mkdir 创建该目录:
  1. sudo mkdir -p /mnt/data
复制代码
临时挂载文件系统

你可以输入以下命令临时挂载文件系统:
  1. sudo mount -o defaults /dev/sda1 /mnt/data
复制代码
在启动时自动挂载文件系统

为了在每次服务器启动时自动挂载文件系统,你需要向
  1. /etc/fstab
复制代码
文件添加一个条目。该文件包含有关系统所有永久或经常挂载的磁盘的信息。使用
  1. nano
复制代码
或你喜欢的文本编辑器打开该文件:
  1. sudo nano /etc/fstab
复制代码
在上一步中,你使用了
  1. sudo lsblk --fs
复制代码
命令显示文件系统的标识符。你可以在这个文件中使用其中任何一个。这个示例使用了分区 标签,但你可以看到使用其他两个标识符的行是什么样的,它们被注释掉了:
  1. . . .
  2. ## 使用你找到的标识符之一来引用正确的分区
  3. # /dev/sda1 /mnt/data ext4 defaults 0 2
  4. # UUID=4b313333-a7b5-48c1-a957-d77d637e4fda /mnt/data ext4 defaults 0 2
  5. LABEL=datapartition /mnt/data ext4 defaults 0 2
复制代码
除了
  1. LABEL=datapartition
复制代码
元素外,这些选项的作用如下:

    1. /mnt/data
    复制代码
    是磁盘被挂载的路径。
    1. ext4
    复制代码
    表示这是一个 Ext4 分区。
    1. defaults
    复制代码
    表示该卷应该使用默认选项挂载,比如读写支持。
    1. 0 2
    复制代码
    表示在本地机器出现错误时应该由本地机器验证文件系统,但作为第二优先级,而不是你的根卷。
完成后保存并关闭文件。如果你使用的是
  1. nano
复制代码
,按
  1. Ctrl+X
复制代码
,然后在提示时按
  1. Y
复制代码
,然后按
  1. Enter
复制代码

如果之前没有挂载文件系统,现在可以使用
  1. mount -a
复制代码
命令挂载它:
  1. sudo mount -a
复制代码
测试挂载

在挂载了卷之后,我们应该检查确保文件系统是可访问的。
您可以通过
  1. df
复制代码
命令的输出来检查磁盘是否可用。有时
  1. df
复制代码
会在输出中包含关于临时文件系统(称为
  1. tmpfs
复制代码
)的不必要信息,您可以通过附加
  1. -x tmpfs
复制代码
来排除这些信息:
  1. df -h -x tmpfs
复制代码
  1. 文件系统        容量  已用  可用 已用% 挂载点
  2. /dev/vda1        20G  1.3G   18G   7% /
  3. /dev/sda1        99G   60M   94G   1% /mnt/data
复制代码
您还可以通过写入一个测试文件来检查磁盘是否具有读写功能:
  1. echo "success" | sudo tee /mnt/data/test_file
复制代码
再次读取文件,以确保写入执行正确:
  1. cat /mnt/data/test_file
复制代码
  1. success
复制代码
在验证新文件系统正常运行后,您可以删除该文件:
  1. sudo rm /mnt/data/test_file
复制代码
结论

您的新驱动器现在应该已经被分区、格式化、挂载,并且可以使用了。这是您可以使用的一般过程,将原始磁盘转换为 Linux 可用于存储的文件系统。在某些情况下,可能会有更复杂的分区、格式化和挂载方法更为合适,但上述方法是一般用途的良好起点。
以上就是在Linux中对存储设备进行分区和格式化的操作步骤的详细内容,更多关于Linux对存储设备分区和格式化的资料请关注脚本之家其它相关文章!

来源:https://www.jb51.net/server/328937vyk.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具