@[toc]

在这里插入图片描述

一、引言:为何需要“安全”移除?

在虚拟机管理中,添加磁盘是一项常规操作,但移除磁盘,尤其是移除一块正在使用的数据盘(例如,您挂载在/opt目录下的100GB数据盘),则需要格外的谨慎。

错误的移除方式可能导致灾难性后果,最常见的就是——虚拟机无法启动!

这是因为操作系统(如Ubuntu)在启动时,会根据一个名为/etc/fstab的“自动挂载配置文件”去寻找并挂载所有已声明的磁盘。如果您直接在VMware设置中移除了物理磁盘,但没有告知操作系统“别再找它了”,系统在下次启动时会因为找不到预期的磁盘而卡在引导过程中,无法进入系统。

1
2
3
4
5
6
7
8
graph TD
A["系统启动"] --> B{"读取 /etc/fstab 文件"};
B --> C["找到一条记录:<br/>'请将磁盘X挂载到/opt'"];
C --> D{"尝试寻找磁盘X"};
D -- "磁盘X<b>存在</b>" --> E["挂载成功,系统正常启动"];
D -- "磁盘X<b>不存在</b><br/>(已被VMware移除)" --> F["<font color=red><b>错误:找不到磁盘!<br/>系统启动失败,卡住</b></font>"];

style F fill:#ffcccc

图1:不当移除磁盘导致启动失败的原理

本指南将带您完成一个**“先软后硬”**的安全移除流程,确保您的虚拟机万无一失。


二、准备工作:确认您要移除的磁盘

在动手之前,我们必须百分之百确定要移除的是哪块磁盘,以及它挂载在哪里。

  1. 打开终端:登录您的Ubuntu虚拟机。

  2. 运行 df -h 命令:这个命令用于显示磁盘空间使用情况和挂载点。

    1
    df -h

    在输出中,仔细查找您要移除的磁盘。根据您的描述,您应该会看到类似下面的一行:

    1
    2
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sdb 99G 15G 80G 16% /opt

    解读关键信息

    • Filesystem: /dev/sdb (这是磁盘的设备名)
    • Size: 99G (磁盘大小,与您要移除的100GB磁盘相符)
    • Mounted on: /opt (这是磁盘的挂载点)

    好了,现在我们已经锁定了目标:设备名为/dev/sdb,挂载点为/opt的100GB磁盘。


三、核心步骤:安全移除流程

步骤 1:备份重要数据!

这是所有数据操作前的黄金法则。请确认挂载在/opt目录下的所有数据是否还需要。如果需要,请务必将其复制到其他地方(例如系统盘的其他目录,或通过网络传输出来)。一旦磁盘被移除,上面的数据将永久丢失!

步骤 2:编辑fstab,取消自动挂载(“软”操作)

这是防止虚拟机无法启动的最关键一步。我们需要修改/etc/fstab文件,告诉系统在下次启动时不要再尝试挂载这块磁盘。

  1. 用管理员权限打开fstab文件
    推荐使用nano(对新手友好)或vim等终端编辑器。

    1
    sudo nano /etc/fstab
  2. 找到对应的挂载行
    在打开的文件中,找到描述/opt挂载点的那一行。它可能看起来像这样(UUID是磁盘的唯一标识符):

    1
    UUID=407ece8b-3622-4e66-8c51-aac54c6af78b /opt xfs defaults 0 0
  3. “注释掉”该行
    最安全的方法是“注释掉”而不是直接删除。只需在该行的最前面加上一个#号。这会让系统在读取文件时忽略这一行。

    修改前:
    UUID=407ece8b-3622-4e66-8c51-aac54c6af78b /opt xfs defaults 0 0

    修改后:
    #UUID=407ece8b-3622-4e66-8c51-aac54c6af78b /opt xfs defaults 0 0

    [图片:终端中使用nano编辑器修改/etc/fstab文件,光标停留在被注释掉的行首]
    图2:注释掉fstab中的自动挂载条目

  4. 保存并退出

    • nano中,按Ctrl + X,然后按Y确认保存,最后按Enter退出。
步骤 3:立即卸载磁盘

现在,我们将磁盘从当前运行的系统中卸载。

1
sudo umount /opt

运行此命令后,不会有任何成功提示。您可以再次运行df -h来验证,此时应该已经看不到/dev/sdb那一行了。

步骤 4:关闭虚拟机
1
sudo shutdown now

必须完全关闭虚拟机,而不是挂起或重启。

步骤 5:在VMware中移除虚拟硬盘(“硬”操作)
  1. 打开虚拟机设置
    在VMware Workstation或Player的主界面,选中您的虚拟机,然后点击“编辑虚拟机设置”。

    [图片:VMware主界面,高亮显示“编辑虚拟机设置”按钮]
    图3:进入虚拟机硬件设置

  2. 选择要移除的硬盘
    在左侧的硬件列表中,找到并选中您要移除的100GB硬盘(例如,“硬盘2”)。

    [图片:虚拟机设置窗口,左侧硬件列表中选中了“硬盘2 (SCSI)”]
    图4:选择目标虚拟硬盘

  3. 点击“移除”按钮
    在右下角,点击“移除”按钮。

    [图片:虚拟机设置窗口右下角,高亮显示“移除”按钮]
    图5:移除虚拟硬盘

  4. 确认并保存
    虚拟硬盘会从列表中消失。点击“确定”保存设置。

步骤 6:启动虚拟机并验证

现在,您可以重新启动您的Ubuntu虚拟机了。由于您已经提前修改了fstab文件,系统会顺利启动,不会再因为寻找那块已经不存在的磁盘而卡住。

登录系统后,您可以再次运行df -h,确认/dev/sdb已经彻底消失。/opt目录现在会变回系统盘上的一个普通空目录。

四、总结

移除VMware虚拟机数据磁盘的正确流程,可以总结为以下安全口诀:

  1. 数据先备份,万事无忧愁。
  2. 编辑fstab,行首加#号。 (sudo nano /etc/fstab)
  3. umount先卸载,系统脱钩。 (sudo umount /opt)
  4. 关机要彻底,不能留窗口。 (sudo shutdown now)
  5. VM设硬件,选中再移除。
  6. 开机做验证,一切照旧。

遵循这个“先软后硬”的原则,您就可以安全、自信地管理您的虚拟机磁盘,彻底告别因磁盘移除而导致的启动失败问题。