我有一台CentOS 4专用服务器。 我想把FreeBSD 7放在上面,但是我没有控制台访问权限,也没有物理访问权限。
我正在考虑在本地机器上进行FreeBSD的通用安装,进行configuration调整,例如设置网卡等,然后创build安装的磁盘映像。 然后,我会写这个图像到服务器与netcat喂dd。 唯一的问题是,传输70G的数据(磁盘的大小)是不实际的。 我想不出一个好办法来解决这个问题,同时仍然确保系统在重新引导时正确地启动FreeBSD。
当然,为了这个工作,我需要尽量减less重新启动,并尝试从工作的Linux安装做一切。 有没有人拉过这样的东西呢? 你是怎么做到的?
如果我是你的话,我首先要build立一个testing台服务器来复制你的远程系统,然后尝试在内部进行转换,在那里搞砸不会毁掉你的系统。
我不知道你的远程系统托pipe方式是什么。 理想情况下,您可以启动或启动类似RIP Linux(一种内存托pipe的操作系统)的启动方式,以便您可以操作硬盘,而不会运行任何内容。 我认为,除非你有办法控制什么时候启动,你仍然在运行系统时要求操纵系统磁盘时遇到麻烦。
你可以尝试使用gparted来缩小你的分区,然后在空白处创build一个新的分区,然后将FreeBSD安装到这个分区中,并在另一个系统中进行“双启动”。 这可能是可行的。
不pipe怎么说,我仍然会试着在一个testing平台上进行内部testing,以确保在使用您的工作服务器之前能够正常工作。
正如其他人所提到的,如果您的时间和精力是值得的,您应该向您的提供商支付一次性支持费用以安装FreeBSD。
如果你真的想自己做这件事情, 而且你有一个单独的交换或其他未使用的分区,你可以通过写一个引导映像到额外的分区并告诉grub启动它来做到这一点。 Depenguinator应该能够为你做到这一点。 我没有使用它自己,但我已经使用相同的方法来远程切换Linux的分布。
(你可能也想看看像SoftLayer这样的提供商,它有一个相当不错的价格专门的远程控制台访问服务器。)
制作图像,压缩图像,将其传输到您希望转换的Linux服务器上,然后将该图像安装到该服务器的另一个分区上。 然后configuration引导加载程序以引导到新的分区。 我不认为写作活跃的划分很可能会顺利进行。
这很疯狂,我喜欢:-)
你首先需要检查你的托pipe服务提供商,如果他们允许的话。 如果他们这样做,问他们是否可以为你安装。
无论如何,你的想法可以肯定的工作,但是如果不通过控制台访问控制台,远程控制风险太大了,你可能会把自己锁在外面。
我想,你需要使用zeroer程序或类似的东西,以减less硬盘映像的大小
你想要在物理服务器上完成所有的远程操作吗? 我的好人!
我能想到的唯一方法就是创build一个虚拟磁盘,并将其预先configuration为在数据中心的networking上运行。 一旦你重新启动(并且虚拟磁盘正在你的服务器上运行),那么你可以想象地执行你的计划,只要你:
无论如何,在这个项目中运气不错,但是你可能想问一下,考虑到所涉及的时间,是否会更便宜,只需向数据中心支付20美元,或者用FreeBSD重新映像服务器就可以了!
简单的select:如果你有一个支持硬件虚拟化function的处理器,你可以将CentOS安装去掉,为自己提供足够的磁盘空间,安装kvm并创build一个虚拟的FreeBSD系统,这个系统是服务器上唯一运行的进程。 性能的提升不会太糟糕,最终你只是把你的CentOS系统作为FreeBSD系统的一个复杂的引导程序。
或者,使用resize2fs缩小文件系统,使用cfdisk缩小分区以给自己一些空闲的磁盘,并在最后创build一个新的分区。 然后下载你仍然可以使用kvm(甚至是qemu)和参数-hda = / dev / hda(即告诉kvm它可以写入你的原始硬盘 – 现在小心),你可以直接运行FreeBSD安装程序你的新分区。
最后,您可以尝试从CentOS中拨动grub来启动您的新分区,并使用“one-shot”选项来对冲您的投注。 假设您可以重新启动系统,那么如果启动失败,您只需重新启动电源即可重新启动到可靠的CentOS安装。
有点毛骨悚然,但我们之前用Linux-> Linux系统做过类似的事情。