华为云 ECS 挂载 EVS 数据盘并配置开机自动挂载的完整实践(10-20更新)

举报
yd_243050707 发表于 2026/10/20 03:02:01 2026/10/20
【摘要】 本文记录在华为云 ECS(弹性云服务器)上挂载一块全新的 EVS 数据盘,并通过 UUID 写入 /etc/fstab 实现开机自动挂载的完整流程,含分区、格式化、挂载、验证与常见坑点。

在华为云上新建 ECS 时,系统盘往往只给 40GB,一旦跑数据库、日志或容器镜像,很快就不够用。标准做法是单独购买一块 EVS 数据盘挂载上去。下面把整套流程从零到开机自动挂载完整走一遍,全部命令可直接复制执行。

一、前置条件

  • 一台已开机的 ECS,能通过 SSH 登录(本文以 CentOS 7 / x86_64 为例)。
  • 在 EVS 控制台购买一块数据盘(本文为 100GB 高 IO),并「挂载」到该 ECS,记录挂载点,例如 /dev/vdb。
  • 确认数据盘上没有任何需要保留的数据——格式化会清空整盘。

二、确认磁盘已就位

登录后先用 lsblk 查看块设备,应该能看到一块没有分区、没有挂载点的 vdb:

lsblk
# NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
# vda    253:0    0   40G  0 disk
# └─vda1 253:1    0   40G  0 part /
# vdb    253:16   0  100G  0 disk          <-- 新数据盘,尚无分区

三、分区与格式化

数据盘如果只放一种数据,建议直接整盘建一个分区,便于以后扩容和备份。用 fdisk 建分区:

fdisk /dev/vdb
# n -> p -> 1 -> 回车(默认起始) -> 回车(默认结束) -> w   写入分区表
partprobe /dev/vdb

# 格式化为 ext4(大文件、通用场景推荐)
mkfs.ext4 /dev/vdb1

如果只是挂一块盘且不打算再分区,也可以直接 mkfs.ext4 /dev/vdb 整盘格式化。二者选其一即可,本文按分区方式继续。

四、临时挂载并确认容量

mkdir -p /data
mount /dev/vdb1 /data
df -h /data
# Filesystem      Size  Used Avail Use% Mounted on
# /dev/vdb1        99G   60M   94G   1% /data

五、写入 /etc/fstab 实现开机自动挂载

关键点:不要用 /dev/vdb1 这种设备名写 fstab,重启后盘符可能变化。正确做法是用文件系统的 UUID:

blkid /dev/vdb1
# /dev/vdb1: UUID="3f2a1c9e-...." TYPE="ext4"

# 把 UUID 追加进 fstab(用 >> 追加,别覆盖)
echo "UUID=3f2a1c9e-.... /data ext4 defaults,nofail 0 2" >> /etc/fstab

# 校验 fstab 语法,避免重启后进入 emergency mode
mount -a
findmnt --verify

其中 nofail 很重要:万一数据盘异常,系统仍能正常启动,不至于卡在修复模式。0 2 表示不 dump、开机第二顺位做 fsck。

六、验证

# 卸载后重挂,模拟开机流程
umount /data && mount -a && df -h /data
# 重启做最终确认
reboot

重启后再次执行 df -h /data,若能看到 /dev/vdb1 已挂载,说明自动挂载生效。

七、常见坑点

  • 用设备名写 fstab:重启后 /dev/vdb 变 /dev/vdc,导致挂载失败,务必用 UUID。
  • 忘记 nofail:数据盘掉线时系统无法启动,只能进控制台救援。
  • ext4 与 xfs 选择:海量小文件、需要在线扩容选 xfs(mkfs.xfs,fstab 末列写 0 0);通用场景 ext4 即可。
  • 后续扩容:EVS 在线扩容后,分区盘需 growpart + resize2fs,整盘格式化则直接 resize2fs /dev/vdb。

按以上步骤,ECS 的数据盘即可稳定挂载并开机自启,配合华为云的快照/备份服务,数据可靠性也有保障。

八、小结与延伸

数据盘挂载本身并不复杂,真正容易翻车的是「用设备名写 fstab」和「忘记 nofail」这两点,生产环境务必避免。如果对数据可靠性要求更高,建议同时开启 EVS 的自动备份策略与云服务器快照,并定期做一次恢复演练。对于多盘场景,可以统一用 UUID 管理,配合 Ansible 等配置管理工具批量下发,避免逐台手工操作带来的不一致。

另外,如果后续需要把数据盘从一台 ECS 迁移到另一台,华为云支持先卸载再挂载到目标机器,只要目标机器架构与文件系统一致,挂载后即可直接使用;跨可用区迁移则需借助快照或备份完成。掌握这些细节,云上存储的日常运维基本就够用了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。