服务器新硬盘初始化与挂载

目录

第一阶段:环境准备与设备确认

[1. 确认新盘设备名](#1. 确认新盘设备名)

第二阶段:磁盘分区与格式化

[2. 对新盘进行分区](#2. 对新盘进行分区)

[3. 格式化磁盘](#3. 格式化磁盘)

第三阶段:关键属性配置

[4. 设置卷标 (LABEL) ------ 核心步骤](#4. 设置卷标 (LABEL) —— 核心步骤)

[5. 开启 Project Quota 支持](#5. 开启 Project Quota 支持)

第四阶段:挂载与持久化配置

[6. 检查并修改 /etc/fstab](#6. 检查并修改 /etc/fstab)

[7. 创建挂载点并执行挂载](#7. 创建挂载点并执行挂载)

第五阶段:权限修正与收尾

[8. 修正目录权限](#8. 修正目录权限)


在服务器运维工作中,物理更换或新增硬盘是常见操作。然而,硬盘插入服务器后,操作系统并不会立即将其作为可用存储空间使用。必须经过识别、分区、格式化、设置卷标、配置自动挂载及权限修正等一系列标准化步骤,硬盘才能正式投入使用。

特别是在运行分布式存储系统的环境中,磁盘的卷标(Label)、文件系统类型及挂载路径有着严格的规范。任何一步的疏漏都可能导致存储系统无法识别磁盘,进而影响数据恢复或服务运行。

第一阶段:环境准备与设备确认

1. 确认新盘设备名

新插入的硬盘设备名具有不确定性。例如,之前损坏的硬盘可能是 /dev/sdh,但新插入的硬盘可能会被系统识别为 /dev/sdi/dev/sdj 甚至其他名称。因此,操作前必须准确锁定目标设备。

**操作步骤:**执行以下命令查看当前所有块设备(磁盘及分区)的列表

复制代码
lsblk

结果分析:

在输出信息中,请重点关注以下两点来寻找目标磁盘:

容量(SIZE) :寻找容量约为 7.3T 的设备(7.3T 通常对应标称 8T 的硬盘)。

挂载点(MOUNTPOINT) :该列应为,表示该磁盘尚未被挂载。

示例输出逻辑:

复制代码
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0   465G  0 disk 
├─sda1   8:1    0     1G  0 part /boot
└─sda2   8:2    0   464G  0 part /
...
sdi      8:128  0   7.3T  0 disk        <-- 目标设备:容量7.3T,无挂载点

注:本教程假设新盘设备名为 /dev/sdi。若您的实际设备名为其他(如 sdj),请务必将后续所有命令中的 sdi 替换为实际名称,否则可能导致误操作其他磁盘!

第二阶段:磁盘分区与格式化

2. 对新盘进行分区

对于容量大于 2TB 的大容量硬盘,传统的 MBR 分区表已无法满足需求,必须使用 GPT (GUID Partition Table) 分区表。我们将使用 parted 工具进行快速分区。

操作步骤:

执行以下两条命令,第一条创建 GPT 标签,第二条创建占用 100% 空间的主分区:

复制代码
# 创建 gpt 分区表
parted -s /dev/sdi mklabel gpt

# 建立主分区,从 0% 到 100%
parted -s /dev/sdi mkpart primary 0% 100%

注意事项:

-s 参数表示"脚本模式",即自动确认所有提示,无需人工干预。

如果磁盘之前有过分区表,系统可能会警告 Warning: The existing disk label on /dev/sdi will be destroyed...。在交互式模式下需输入 YesIgnore,但在上述脚本模式下通常会自动处理或忽略。

执行完成后,可使用 lsblk 再次确认,此时应能看到 /dev/sdi1 分区。

3. 格式化磁盘

分区完成后,需要建立文件系统。根据集群规划,本环境统一使用 ext4 文件系统。

(提示:如果您的环境明确要求使用 xfs,请将下文命令改为 mkfs.xfs,但请严格遵循当前环境的文档规范)

操作步骤:

对新建的分区 /dev/sdi1 进行格式化:

复制代码
查看格式:lsblk -f   /   df -T

mkfs.ext4 /dev/sdi1

执行细节:

系统会显示格式化进度、块大小、inode 数量等信息。等待命令执行完毕且返回命令行提示符,即表示格式化成功。

第三阶段:关键属性配置

4. 设置卷标 (LABEL) ------ 核心步骤

在自动化存储架构中,系统往往不依赖易变的设备名(如 /dev/sdi1),而是依赖唯一的卷标(Label)来识别磁盘。根据规范,此位置磁盘的卷标必须设置为 disk7

操作步骤:

复制代码
# 设置卷标为 disk7
e2label /dev/sdi1 /disk7

# 验证卷标是否设置成功
e2label /dev/sdi1

预期结果:

第二条命令应直接输出 disk7。如果输出为空或与预期不符,请重复设置步骤,否则后续存储系统将无法识别该盘。

5. 开启 Project Quota 支持

部分高级存储系统(如某些容器存储方案)依赖 Linux 文件系统的 Project Quota 功能来进行资源隔离和配额管理。若未开启此特性,挂载时可能报错或导致存储节点状态异常。

操作步骤:

使用 tune2fs 工具为 ext4 文件系统启用 projectquota 特性:

复制代码
tune2fs -O project,quota /dev/sdi1

注:此操作不会破坏现有数据,只是修改文件系统的超级块特性标志。

第四阶段:挂载与持久化配置

6. 检查并修改 /etc/fstab

为了实现服务器重启后磁盘能自动挂载,必须将挂载信息写入 /etc/fstab 文件。使用卷标(LABEL)而非设备名(如 /dev/sdi1)是最佳实践,因为设备名在重启后可能会发生变化,而卷标是固定的。

操作步骤:

检查现有配置:

先查看文件中是否已存在相关配置:

复制代码
cat /etc/fstab | grep disk7

预期配置内容:

标准的配置行应如下所示:

复制代码
LABEL=/disk7  /.../disk7  ext4  defaults  0  0

LABEL=disk7:通过卷标查找设备。

/disk7:挂载点目录。

ext4:文件系统类型。

defaults:默认挂载参数。

0 0:分别表示不备份(dump)和不检查文件系统(fsck)。

7. 创建挂载点并执行挂载

配置完成后,需要创建对应的目录并应用挂载。

操作步骤:

复制代码
# 1. 确保挂载目录存在(若不存在则创建)
mkdir -p /.../disk7

# 2. 执行挂载(系统会自动读取 /etc/fstab 并挂载所有配置项)
mount -a

# 3. 验证挂载状态
df -h | grep disk7

成功标志:
df -h 的输出中应包含一行类似以下内容:

复制代码
/dev/sdi1      7.3T   xxG  7.3T   x%   /.../disk7

这表明设备已成功挂载,且容量显示正常(约 7.3T)。如果 mount -a 报错,请立即检查 /etc/fstab 的语法是否正确,切勿重启服务器。

第五阶段:权限修正与收尾

8. 修正目录权限

存储系统进程通常以特定用户(如 admin)身份运行。如果挂载点目录的归属权不正确,存储系统将无法写入数据。

操作步骤: 将挂载点目录及其子目录的属主和属组修改为 admin

复制代码
chown -R admin:admin /.../disk7

注意路径根据实际的来 /disk7

注:如果环境中没有 admin 用户,请根据实际存储系统运行的用户进行调整(例如 root 或其他专用用户)。

相关推荐
IMPYLH2 小时前
Linux 的 chroot 命令
linux·运维·服务器
克莱因3582 小时前
Linux Cent OS7 at定时任务
linux·运维·服务器
RisunJan2 小时前
Linux命令-make(GNU的工程化编译工具)
linux·运维·gnu
闲猫2 小时前
Linux 历史命令(history)
linux·运维·chrome
程序员小董3 小时前
从 RocksDB 定时器出发:手写一个通用的 Linux 高精度定时器
linux·服务器
旺仔.2913 小时前
线程安全 详解
linux·计算机网络·安全
yuuki2332335 小时前
【Linux】开发工具链全解析:从 apt 到 gdb
linux·运维·服务器
wangjialelele5 小时前
C++11、C++14、C++17、C++20新特性解析(一)
linux·c语言·开发语言·c++·c++20·visual studio
²º²²এ松5 小时前
vs code连接ubuntu esp项目
linux·数据库·ubuntu