![如何将虚拟硬盘挂载到现有的虚拟映像?](https://linux22.com/image/880988/%E5%A6%82%E4%BD%95%E5%B0%86%E8%99%9A%E6%8B%9F%E7%A1%AC%E7%9B%98%E6%8C%82%E8%BD%BD%E5%88%B0%E7%8E%B0%E6%9C%89%E7%9A%84%E8%99%9A%E6%8B%9F%E6%98%A0%E5%83%8F%EF%BC%9F.png)
我需要帮助扩展我的硬盘。我创建了一个虚拟映像以在 Oracle VM(固定 8Gbs)上运行 Ubuntu。此后,我创建了第二个虚拟硬盘,它将根据需要扩展。我想安装更多软件并让第二个硬盘承担一些负载。我认为我的问题出在安装上。(我是 Linux 新手)
到目前为止,我已经对第二个驱动器进行了分区并将其安装到 /media/mynewdrive 但它只是放在那里。我需要将一些程序移到第二个驱动器。我该怎么做?
答案1
我更了解命令行——所以我们只使用命令行和您最喜欢的文本编辑器:
打开你选择的终端(例如 gnome-terminal)并检查你的数据所在的位置
sudo du -xh --max-depth=1 /
为了简单起见,我建议将新分区挂载在第一级目录下。
考虑一下要将哪些数据放在新分区上。常见的选择是/home
如果您有大量电影/照片/虚拟磁盘图像/... :),或者/usr
如果您要从发行版安装更多软件,/var
如果您运行例如邮件服务器,/opt
如果您在那里使用大量第三方软件/...
确保您使用 Linux 文件系统格式化了您的分区(我推荐使用 ext4)。
您可以检查此输入mount
,它为您提供所有已安装的文件系统,包括您可能需要稍后复制和粘贴到的文件系统和安装选项/etc/fstab
格式为:
<file system> <mount point> <type> <options>
因此,我们首先将整个第一级文件夹复制到新分区并配置/etc/fstab
(文件系统表)并测试一切是否正确。然后我们从旧分区中删除数据。我假设您想移动/home
分区,因此如果您选择其他分区,请替换此分区。
sudo cp -aT /home /media/mynewdrive
如果mynewdrive
为空/home
且/media/mynewdrive
包含相同的数据。可能在格式化过程中创建了一个额外的lost+found
文件夹mynewdrive
,您可以忽略它。
现在添加一行到/etc/fstab
使用中<youreditor>
。将其替换为例如gedit
。
sudo <youreditor> /etc/fstab
您添加的行将如下所示
<file system> /home <type> <options> 0 2
您必须<options>
简单地用defaults
或用您从中获得的选项替换mount
,但不使用括号,并且不要使用,noauto
因为这会阻止系统启动时自动安装。确保条目之间有空格和/或制表符,选项之间有逗号(没有空格或制表符)。保存并关闭。
现在您检查一切是否正常,您可以将新分区挂载到正确的文件夹:
sudo mount /home
如果没有输出,则表示成功了。然后您可以再次使用来查看它mount
。检查您的数据是否到位:
sudo du -hs /home
应显示与上面第一次运行相同的尺寸。
现在删除根分区上的原始数据:
sudo umount /home
如果到此处一切顺利并且您检查新分区未安装在以下位置,则仅执行下一步/home
:
sudo rm -r /home && sudo mkdir /home
现在你可以再次安装它:
sudo mount /home
以及umount
来自/media
sudo umount /media/mynewdrive
(你可以在任何时候完成 ;))
并始终进行最终测试:重启