news 2026/4/20 21:01:11

给Kylin V10 SP3虚拟机加块‘数据盘’:从VMware添加硬盘到fstab永久挂载/data的保姆级流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
给Kylin V10 SP3虚拟机加块‘数据盘’:从VMware添加硬盘到fstab永久挂载/data的保姆级流程

麒麟V10 SP3虚拟机扩容实战:从VMware添加硬盘到永久挂载全指南

在虚拟化开发环境中,为运行中的麒麟系统动态扩容存储空间是运维工程师的常见需求。想象这样一个场景:你的Kylin V10 SP3虚拟机原本配置的存储空间已经捉襟见肘,而项目需要额外50GB空间来存放测试数据。本文将带你完整走通从VMware添加虚拟硬盘到系统永久挂载的全流程,特别针对容易踩坑的环节提供解决方案。

1. 虚拟机环境准备与硬盘添加

在开始操作前,确保你的VMware Workstation版本支持热添加硬盘功能(Pro版15以上)。虽然VMware允许在不关机状态下添加硬盘,但为了确保麒麟系统能正确识别新设备,建议先完成以下准备工作:

  1. 虚拟机快照:右键点击目标虚拟机 → 选择"快照" → "拍摄快照",为当前状态建立恢复点
  2. 硬件兼容性检查:虚拟机设置 → 选项 → 高级 → 确认固件类型为UEFI(Kylin V10推荐)
  3. 存储控制器:SCSI控制器类型建议选择LSI Logic SAS(兼容性最佳)

注意:如果虚拟机正在运行重要服务,请先完成正常关机流程再添加硬件。

添加新硬盘的具体步骤:

  1. 右键虚拟机 → 设置 → 点击"添加"按钮
  2. 选择"硬盘" → 下一步 → 保持SCSI类型 → 创建新虚拟磁盘
  3. 设置容量为50GB → 选择"将虚拟磁盘存储为单个文件"
  4. 指定磁盘文件位置(建议与原有磁盘同目录)
  5. 完成前检查摘要信息,确认无误后点击"完成"
# 验证VMware虚拟机配置 vmware-toolbox-cmd stat hardware

2. 麒麟系统识别与硬盘初始化

启动(或重启)虚拟机后,需要通过命令行工具确认系统是否识别到新硬盘。Kylin V10使用udev设备管理器,新磁盘通常会被分配为/dev/sdb设备(假设已有sda)。

# 查看块设备列表 lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT,UUID

典型输出应显示新添加的50GB磁盘(如sdb)无文件系统类型和挂载点。如果未显示新磁盘,尝试以下排查步骤:

  1. 检查内核消息缓冲区:dmesg | grep -i scsi
  2. 重新扫描SCSI总线:echo "- - -" > /sys/class/scsi_host/host*/scan
  3. 确认模块加载:lsmod | grep sd_mod

确认磁盘存在后,需要对其进行分区和格式化。虽然现代Linux支持无分区直接格式化,但创建分区表仍是推荐做法:

# 使用parted工具创建GPT分区表 sudo parted /dev/sdb mklabel gpt # 创建单个分区占用全部空间 sudo parted -a opt /dev/sdb mkpart primary xfs 0% 100%

XFS作为高性能文件系统,特别适合大数据场景:

# 格式化分区为XFS(带元数据校验和) sudo mkfs.xfs -m crc=1 /dev/sdb1 # 启用文件系统写屏障保证数据安全 sudo xfs_admin -l /dev/sdb1

3. 挂载配置与UUID最佳实践

临时挂载可用于快速测试文件系统:

sudo mkdir -p /data sudo mount -t xfs /dev/sdb1 /data df -hT /data

但更关键的是配置永久挂载。传统方案使用设备路径(如/dev/sdb1),但这在硬件变动时可能导致挂载错误。现代Linux系统推荐使用UUID方式:

# 获取分区UUID(注意是PARTUUID还是UUID) sudo blkid -o value -s UUID /dev/sdb1

编辑/etc/fstab文件时,建议采用以下格式:

UUID=你的UUID值 /data xfs defaults,noatime,nodiratime 0 2

各字段含义:

  • noatime/nodiratime:减少元数据更新提升性能
  • 0:dump备份工具忽略此文件系统
  • 2:非根文件系统的fsck检查顺序

重要:修改fstab后务必使用mount -a测试配置,避免系统启动失败。

4. 高级调优与故障排查

为获得最佳性能,可以针对XFS文件系统进行优化:

# 查看当前挂载参数 mount | grep /data # 添加allocsize参数优化大文件写入 sudo umount /data sudo mount -o defaults,noatime,nodiratime,allocsize=1G /dev/sdb1 /data

常见问题解决方案:

  1. 启动时出现emergency mode

    • 在GRUB菜单选择恢复模式
    • 注释掉fstab中问题行
    • 使用systemctl defaultexit继续启动
  2. UUID不匹配

    # 重新生成UUID(会格式化分区) sudo xfs_admin -U generate /dev/sdb1
  3. 空间未完全利用

    # 检查分区是否占满磁盘 lsblk # 扩展XFS文件系统(假设磁盘已扩容) sudo xfs_growfs /data

对于生产环境,还应考虑以下安全措施:

# 设置/data目录权限(示例) sudo chown root:datausers /data sudo chmod 2770 /data # 安装quota支持 sudo yum install xfsprogs sudo mount -o remount,usrquota,grpquota /data sudo xfs_quota -x -c 'report -h' /data

5. 自动化部署方案

对于需要频繁部署的场景,可以编写自动化脚本:

#!/bin/bash DISK="/dev/sdb" MOUNT_POINT="/data" # 分区格式化 parted -s "$DISK" mklabel gpt parted -s -a opt "$DISK" mkpart primary xfs 0% 100% mkfs.xfs -f "${DISK}1" # 获取UUID UUID=$(blkid -o value -s UUID "${DISK}1") # 配置fstab echo "UUID=$UUID $MOUNT_POINT xfs defaults,noatime 0 2" | tee -a /etc/fstab # 创建挂载点并挂载 mkdir -p "$MOUNT_POINT" mount -a

将此脚本保存为add_disk.sh后,可通过SSH批量执行:

# 使用ansible批量部署示例 ansible all -m copy -a "src=add_disk.sh dest=/tmp mode=755" ansible all -m shell -a "/tmp/add_disk.sh"

实际项目中,我曾遇到过一个典型案例:开发团队需要为CI/CD流水线动态添加存储空间。通过结合VMware API和上述脚本,我们实现了按需自动扩容,将原本需要人工干预的流程缩短到了5分钟内完成。关键点在于确保脚本包含足够的错误处理,比如检查磁盘是否已存在分区、挂载点是否被占用等条件判断。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 20:57:21

2025最权威的五大AI科研方案解析与推荐

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 于学术写作的场景当中,恰当合理地选用人工智能论文平台,能够极为显著…

作者头像 李华
网站建设 2026/4/20 20:56:34

计算机应届生想成为人才,就不要去力扣刷题(文章合集)

一、Actor 模型:不是并发技巧,而是领域单元 Actor 模型的本质是: Actor 是独立运行的实体 Actor 之间只通过消息交互 Actor 内部状态不可被外部直接访问 Actor 自行决定如何处理收到的消息 Actor 模型真正解决的是: 如何在不共享状…

作者头像 李华
网站建设 2026/4/20 20:53:22

TypeScript的条件类型与分布式条件类型

TypeScript的条件类型与分布式条件类型是类型系统中的高级特性,能够显著提升类型推断的灵活性与精确性。随着TypeScript在大型项目中的广泛应用,开发者越来越依赖这些特性来处理复杂的类型逻辑。本文将深入探讨其核心概念与应用场景,帮助读者…

作者头像 李华
网站建设 2026/4/20 20:51:50

可灵(Kling)AI API 接入实战指南

快手可灵 AI 提供文生视频、图生视频、文生图等能力。本文覆盖认证、调用、轮询、错误处理和最佳实践。 一、获取 API Key 注册:https://klingai.com 开放平台:https://platform.klingai.com(国内)或 https://app.klingai.com/global/dev(国际) 创建应用 → 获取 Access …

作者头像 李华