![是否可以从 Linux 系统的逻辑文件结构启动](https://linux22.com/image/1526099/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E4%BB%8E%20Linux%20%E7%B3%BB%E7%BB%9F%E7%9A%84%E9%80%BB%E8%BE%91%E6%96%87%E4%BB%B6%E7%BB%93%E6%9E%84%E5%90%AF%E5%8A%A8.png)
我们有一个文件夹vz
,其中包含 Linux 系统的逻辑文件结构。然后我们需要启动该系统。
这可能吗?
例如,vz
文件夹中有“bin boot dev etc home”文件夹。我们可以将其复制到硬盘驱动器(使用 dd 或仅逻辑复制)然后启动该机器吗?
答案1
您确定需要从这个目录“启动”吗?(您的引导加载程序来自哪里,等等)
您是否考虑过使用 chroot 命令?您可以使用它来运行“命令”shell(如 bash),该 shell 将您的目录视为其文件系统的根目录。
其他需要研究的内容包括 Linux 容器 (LXC) 和 Docker。
答案2
理论上,您可以将其复制到硬盘驱动器并从中启动,但需要进行一些调整。
首先,您不能使用 dd,因为它会复制块设备,您需要准备新系统并使用类似 cp -var 或 rsync 之类的命令 - 现在来回答问题的核心新硬盘需要(a)以某种方式进行分区,以使其描述与文件系统兼容 - 这在实践中可能意味着匹配 fstab 的内容,并可能将相应的分区设置为可启动。
(b)需要以“初始”Linux 系统可以读取的方式格式化 - 因此可能是 ext4。(c)需要在驱动器上安装适当的加载程序 - 这通常意味着在新硬盘上安装 grub。(d)您不希望 /proc /sys /dev 有空目录,因为这些是由操作系统生成的特殊文件夹。
可能还存在其他小问题。
根据您尝试的操作,您可能希望创建一个带有块设备的虚拟机,然后安装操作系统 - 使用与您尝试创建的 Linux 最相似的 Linux 变体。然后将 /etc 复制到备份位置并在 vz 映像中镜像相应的路径。您可能需要重新访问和调整文件,例如 /etc/fstab(这就是为什么您需要备份 /etc)。您还需要注意内核映像 - 如果这不同,您将需要调整 grub。