AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 50494
Accepted
Zimmy-DUB-Zongy-Zong-DUBBY
Zimmy-DUB-Zongy-Zong-DUBBY
Asked: 2009-08-06 09:48:16 +0800 CST2009-08-06 09:48:16 +0800 CST 2009-08-06 09:48:16 +0800 CST

将专用服务器从 Linux 转换为 FreeBSD

  • 772

我有一台装有 CentOS 4 的专用服务器。我想在上面安装 FreeBSD 7,但我没有控制台访问权限,也没有物理访问权限。

我正在考虑在本地机器上进行 FreeBSD 的通用安装,进行配置调整,例如设置网卡等,然后创建安装的磁盘映像。然后我会用 netcat 喂 dd 将此图像写入服务器。唯一的问题是,传输 70G 的数据(磁盘大小)是不切实际的。我想不出一个解决这个问题的好方法,同时仍然确保系统在重新启动时能够正确启动 FreeBSD。

当然,为了让它工作,我需要尽量减少重新启动并尝试从工作的 Linux 安装中做所有事情。以前有人做过这样的事情吗?你是怎么做到的?

linux freebsd dedicated-server
  • 7 7 个回答
  • 633 Views

7 个回答

  • Voted
  1. Best Answer
    Bart Silverstrim
    2009-08-06T10:14:15+08:002009-08-06T10:14:15+08:00

    如果我是你,我会首先设置一个测试台服务器来复制你的远程系统,然后尝试在内部进行转换,这样搞砸不会杀死你的系统。

    关于远程系统的托管方式,我不知道您有哪些可用选项。理想情况下,您可以启动或让它启动 RIP Linux 之类的东西,这是一种内存托管操作系统,这样您就可以在不运行任何东西的情况下操作硬盘。我认为除非你有办法控制什么时候启动,否则你在运行系统的同时操作系统磁盘会遇到麻烦。

    您可以尝试使用 gparted 缩小您的分区,然后在空白空间中创建一个新分区,然后将 FreeBSD 安装到该切片中并在另一个系统中执行“双启动”。这或许是可行的。

    不过,无论如何,我仍然会尝试在内部使用测试平台进行所有操作,以确保您可以在使用工作服务器之前使其正常工作。

    • 1
  2. Gerald Combs
    2009-08-06T11:52:04+08:002009-08-06T11:52:04+08:00

    正如其他人所提到的,如果您的时间和理智值得任何东西,您应该向您的提供商支付一次性支持费用以安装 FreeBSD。

    如果你真的想自己做这件事,并且你有一个单独的交换分区或其他未使用的分区,你可以通过将引导映像写入额外的分区并告诉 grub 引导到它来做到这一点。Depenguinator应该能够为您执行此操作。我自己没有使用过,但我使用相同的方法远程切换 Linux 发行版。

    (您可能还想看看像SoftLayer这样的提供商,它以相当不错的价格提供具有远程控制台访问功能的专用服务器。)

    • 1
  3. Kyle Brandt
    2009-08-06T09:59:54+08:002009-08-06T09:59:54+08:00

    制作映像,压缩它,将其传输到您要转换的 Linux 服务器,然后将该映像安装到该服务器的第二个分区上。然后配置引导加载程序以引导到新分区。我不认为在活动分区上写入可能会顺利进行。

    这太疯狂了,我喜欢它:-)

    • 0
  4. sucuri
    2009-08-06T10:09:11+08:002009-08-06T10:09:11+08:00

    如果他们允许,您首先需要咨询您的托管服务提供商。如果有,请询问他们是否可以为您安装。

    无论如何,你的想法肯定会奏效,但是如果没有控制台访问权限就远程执行太冒险了……你最终可能会把自己锁在外面。

    • 0
  5. 2009-08-06T10:45:55+08:002009-08-06T10:45:55+08:00

    我认为,您需要使用归零程序或类似的东西来减小硬盘图像的大小

    • 0
  6. Dave Drager
    2009-08-06T11:13:11+08:002009-08-06T11:13:11+08:00

    您想在不与物理服务器交互的情况下远程完成这一切吗?我的好人!

    我能想到的唯一方法是创建一个带有您的操作系统的 ramdisk,预先配置为在您的数据中心的网络上工作。一旦重新启动(并且 ramdisk 正在您的服务器上运行该节目),您就可以执行您的计划,只要您:

    1. 在你的服务器上有足够的内存来运行一个完全在内存中的小型 linux 操作系统
    2. 可以避免浪费一个足够大的分区来保存您的 dd 映像,或者可以将其保存在您的 ramdisk 中
    3. 找出远程服务器上磁盘的许多杂乱无章,可能会破坏分区的直接 dd 重新映像(更不用说,创建正确的引导记录条目)
    4. 做对了,第一次。

    不管怎样,祝你在这个项目中好运,但是你可能想问一下,考虑到所涉及的时间,它是否会更便宜,只需向数据中心支付 20 美元或其他任何费用来使用 FreeBSD 重新映像您的服务器!

    • 0
  7. Matthew Bloch
    2009-08-06T12:42:12+08:002009-08-06T12:42:12+08:00

    简单的选择:如果你有一个支持硬件虚拟化的处理器,你可以剥离 CentOS 安装,给自己足够的磁盘空间,安装 kvm 并为自己创建一个虚拟 FreeBSD 系统,这是服务器上唯一运行的进程。性能损失不会太差,而且您最终只是将您的 CentOS 系统用作 FreeBSD 系统的复杂引导加载程序。

    或者,使用 resize2fs 缩小文件系统,使用 cfdisk 缩小分区以给自己一些空闲磁盘,最后创建一个新分区。然后下载你仍然可以使用kvm(甚至qemu)并使用参数 -hda=/dev/hda (即告诉kvm它允许写入你的原始硬盘 - 现在小心)你可以直接运行FreeBSD安装程序你的新分区。

    最后,您可以尝试通过在 CentOS 中摆弄 grub 来引导您的新分区,并使用“一次性”选项来对冲您的赌注。假设您可以重新启动系统,那么如果它无法启动,您只需重新启动以重新启动回到您可靠的 CentOS 安装。

    有点麻烦,但我们之前在 Linux->Linux 系统上做过类似的事情。

    • 0

相关问题

  • 多操作系统环境的首选电子邮件客户端

  • 你最喜欢的 Linux 发行版是什么?[关闭]

  • 更改 PHP 的默认配置设置?

  • 保护新的 Ubuntu 服务器 [关闭]

  • (软)Ubuntu 7.10 上的 RAID 6,我应该迁移到 8.10 吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve