我已经成功备份了旧机器上的 /、/usr 和 var 切片。我的 Windows 机器上有 tar 文件。我需要将原始切片恢复到新机器(虚拟机)。这个版本的 FreeBSD 6.1 很古老,包含一个每个人都使用的数据库,但根本没有人知道这个盒子。
我不知道如何或使用什么来启动新虚拟机以及如何创建新分区。
我应该把现在位于 Windows 工作站上的三个切片放在哪里?它们是否需要与新虚拟机的启动 CD 位于同一设备上?我不知道如何将外部硬盘驱动器连接到虚拟机。这就是图像所在的位置。
创建分区后如何恢复数据?
我看过UFS备份 由于 FreeBSD 6.1 没有救援 CD,我必须运行安装 CD。我进入单用户模式
答案1
当我不知道您对 FreeBSD 有多少经验时,这是一个很难正确回答的问题,所以我会给您一个高水平的答案,您可以在评论中要求澄清。几乎您需要了解的所有内容都在非常好的 FreeBSD 文档中,特别是FreeBSD 手册和手册页对于 6.1。
克隆系统的步骤:
- 对旧系统进行转储(使用
dump
或)tar
- 启动临时安装在新系统硬盘上的分发磁盘或最小 FreeBSD 系统
- 创建空文件系统
- 恢复文件
- 编辑配置文件,例如
/etc/fstab
、/etc/rc.conf.local
、 和/etc/rc.local
以反映新旧系统之间设备名称的任何更改 - 运行
boot0cfg
以安装引导块。 - 停止系统,如有必要,在 VM 管理器中重做磁盘配置,然后重新启动。
对于 2,我建议您在第一次遇到任何新硬件平台时安装一个最小的 FreeBSD 系统,以便您了解以太网接口和磁盘驱动器的新设备名称,并获得磁盘标签/分区编辑器的经验。
对于 3,使用 VM 管理器添加一个(或多个,如果您愿意)硬盘驱动器,然后使用sysinstall
和newfs
进行分区并创建新的文件系统。为简单起见,我将/
文件系统放在最终成为 BIOS 看到的第一个驱动器的驱动器上(例如控制器 0 上的磁盘 0)。newfs
的默认值应该没问题,除非您的旧文件系统有异常大或少量的文件(在后一种情况下,如果您使用默认的 inode 分配因子,您可能会浪费空间。)
我相信当您安装系统时sysinstall
实际上会自动运行s ,但当您从命令行手动运行它时则不会。newfs
对于 4,将每个新文件系统安装在某个临时位置(我使用/mnt/x
,其中 x 是分区名称)并运行cd /mnt/x; restore rf /path/to/dumpfile
以恢复文件。您说您的转储当前位于 Windows 系统上。您可以使用它们putty
或scp
将它们转移到/tmp
最小的 FreeBSD 系统上。
5 很简单,只是需要跟踪一些东西。您的旧系统可能有名为ad0
、ad1
等的磁盘,而您的新系统可能会调用它们da0
。
如果您同时还要更改系统的 IP 地址,则可能/etc
需要更改下面的其他配置文件。/etc
如果前管理员没有留下已安装应用程序的列表,那么在下面的每个文件中查找旧 IP 地址是查找这些文件的一个不错的开始。
对于 6,我需要查找适当的示例命令行boot0cfg
;我做这件事已经好几年了。