磁盘分区到虚拟机/ OpenVZ容器

我对运行虚拟机/ OpenVZ容器相对来说比较新,所以如果我错过了一些东西,请让我知道。

我目前有Ubuntu 14.04.1直接安装到我的服务器上的分区。 我的意图是完全重build和重构我的服务器(这可能需要一些时间),而不会删除我目前的安装。 限制是我只有一台服务器。

为了完成这个工作,我认为安装Proxmox VE( https://www.proxmox.com/proxmox-ve )并将我目前安装的Ubuntu移动到在Proxmox上运行的VM / OpenVZ容器是有意义的。 这样我可以有一个小的停机时间(这是完全正常的),因为我设置了这一点,而不是如上所述的长时间停机。 第二个好处是我可以在单独的VM / OpenVZ容器上创build我的新服务器安装。

我的问题是,如何将我目前拥有的Ubuntu的安装移到使用Proxmox的VM / OpenVZ容器? 据我所知,一个OpenVZ容器将是更可取的,因为它比一个完整的VM更低的开销。

所以,经过一段时间,我偶然发现了一些search条件,帮助我find了自己完成这个任务的方法。 最后,我发现几乎不可能直接进入OpenVZ容器,但我确实设法将其转移到Proxmox上的KVM虚拟机。 以下是我采取的步骤(在开始之前请务必阅读所有内容):

创build物理机器分区的映像

  1. 备份你的分区。 在下一节中,整个硬盘将被擦除。
  2. 创build一个Clonezilla Live USB / CD。 说明和下载可以在这里find。 保留第11步ISO的副本。
  3. 使用GParted或同等软件将要移动到的分区缩小到虚拟机中。 我留下了大约5GB的额外。 如果您的分区包含重要信息,请确保已备份。
  4. closures主系统并重新启动到Clonezilla Live USB / CD
  5. 按照此页面上 “ Save Image标题下的说明,使用Select mode菜单中的saveparts选项创build分区的图像。 确保将分区映像保存到外部驱动器。 启用所有的前期和后期图像检查,以确保过程是成功的。

安装Proxmox VE

  1. 确保你有一个硬盘上的一切副本 。 Proxmox的安装将删除您安装到的硬盘上的所有内容。
  2. 从这里下载Proxmox VE iso并将其刻录到CD / USB。
  3. 删除所有外部驱动器。
  4. 启动到Proxmox VE安装并按照提示进行操作。 注意接受EULA后将擦除哪些驱动器。
  5. 完成后,浏览login屏幕上显示的地址(应该是HTTPS链接)。 这是Proxmoxnetworking用户界面。

创build虚拟机

  1. 在左边:打开所有列表,点击local ; 单击上中央选项卡上的Content ; 点击upload ; 点击select file并导航至您在步骤2中下载的Clonezilla Live ISO; 点击upload并等待它完成。
  2. 点击屏幕左上angular的Create VM 。 保持所有设置相同,除了:
    • 给它一个名字
    • select一个与您保存的分区中的操作系统相匹配的操作系统(我的是Linux 3.X / 2.6 Kernel(I26))
    • 点击ISO Image下拉框并select刚上传的Clonezilla Live ISO
    • 将磁盘大小更改为大于保存的分区的大小
    • 您可能需要更改CPU和内存设置,但这不是强制性的,可以稍后更改。
  3. 单击final一页上的完成确认创build虚拟机。
  4. 按照此处的步骤将USB端口分配给此虚拟机,以便它可以访问您的外部存储。 您可以通过在物理机上login或单击节点然后单击控制台来运行链接页面上的特色命令。

将分区恢复到虚拟机中

  1. 将外部存储器重新连接到在步骤14中映射的USB端口。
  2. 点击右上angular的start虚拟机。
  3. 单击右上angular的console ,连接到虚拟机。
  4. 按照此页面上“还原Restoring the Image标题下的步骤来还原分区。 确保在Select mode菜单下使用restoreparts选项。 注意:在链接教程的第13步中,Clonezilla将失败,因为/ dev / sda上没有分区。 当这个情况发生时:
    • 按Enter键开始新的terminal会话
    • 运行fdisk /dev/sda
    • 键入n并回车,创build一个新的分区
    • 按回车键接受所有的默认值
    • 一旦完成键入w并回车,将更改写入磁盘
    • 最后运行exit退出terminal会话并返回到Clonezilla
    • 一个新的分区(sda1)现在应该出现在菜单中
  5. Clonezilla完成后,select关机选项。

使分区可启动

  1. 返回到/etc/pve/qemu-server/<VM_ID>.conf并删除usb0条目。
  2. 在Proxmox Web UI中:单击虚拟机; 点击Options ; 点击Boot Order ; 点击edit ; 将订单更改为CD-ROM然后更改Disk 'ide0'
  3. 从这里下载Super Grub2 ISO,然后按照步骤11中的步骤将其上传到Proxmox。
  4. 现在点击虚拟机; 点击Hardware ; 点击CD\DVD Drive条目; 单击Remove ; 点击add然后CD/DVD Drive ; 在Storage选项下点击local ; 在ISO Image选项下单击Super Grub2 ISO; 最后点击create
  5. 现在再次启动虚拟机并打开一个连接的控制台。 你现在应该看到一个看起来像这样的屏幕。
  6. selectEverything然后select你要启动的操作系统(在我的情况下是Ubuntu)。 如果你的操作系统不在那里,可以在这里findSuper Grub2的更多高级function。
  7. 一旦启动,您需要将启动加载器安装到/dev/sda 。 在我的情况下,我通过运行sudo grub-install /dev/sda安装Grub2。
  8. 现在closures虚拟机并返回到Proxmox Web UI。
  9. 现在点击虚拟机; 点击Hardware ; 点击CD\DVD Drive条目; 单击Remove
  10. 您现在可以启动虚拟机,分区将自动启动

如果您遇到问题,您可以留下评论,但我可能会build议您在ServerFault上创build一个post,并将其链接到该问题中。这样,比我更合格的人员可以帮助您解决问题。 如果我的步骤中有任何不清楚的地方,请留下评论,我会尽力澄清。 我希望这个教程帮助:)

JamesStewy