我正在尝试以相当手动的方式克隆虚拟磁盘映像。到目前为止,我的方法论概述如下:
问题
我复制的 VM 无法启动。Grub 似乎复制,并且似乎承认我的根分区(安装了 Ubuntu)。我可以通过 Grub 启动一次并出现紫色屏幕,就好像 Ubuntu 即将加载一样。然后它停止。之后,我可以启动到 Grub,选择我的操作系统,然后我会看到一个闪烁的命令行光标。无法输入。我怀疑在克隆过程中我遗漏了一些东西(有关更多详细信息,请参见下文)。注意:我使用的是 grub2,而不是旧版。
你为什么做这个?
作为合同要求的一部分,我需要将虚拟磁盘存储在版本控制中。在版本控制中拥有一个巨大的二进制 blob(虚拟磁盘)是一种痛苦,主要用于 clone(git)/checkout(svn),但也用于差异。我已经考虑过压缩到多个文件,但我需要能够操作上面 (5) 中提取的操作系统/数据。请注意,我的 VCS 存储库仍然需要构建完整 VM 所需的所有信息。
细节
重现我所描述的内容的详细说明:
我正在 Arch 2012.6 中构建 Boost 1.53.0(最新版本)。我构建的原因是因为我需要编译如下:
./b2 install --prefix=/usr/local/ cxxflags="-std=c++11"
Run Code Online (Sandbox Code Playgroud)
具体来说,我需要提供cxxflags="std=c++11"参数,它似乎没有在包中使用过。我被卡住了,因为构建没有找到正确的 python 库。我已经安装了python2和pythonpacman 但我怀疑 boost 需要 python 2 库并且没有找到所需的头文件,因为 Arch“默认”为 python 3。(你能说我有点像 Arch 新手吗?)。
我怀疑我可以向 提供更多信息b2,可能与linkflags论点一起。但我在那里有点死胡同。
我得到的编译错误类似于:
gcc.compile.c++ bin.v2/libs/python/build/gcc-4.8.1/release/link-static/threading-multi/object/function_doc_signature.o
In file included from ./boost/python/detail/prefix.hpp:13:0,
from ./boost/python/converter/registrations.hpp:8,
from libs/python/src/object/function_doc_signature.cpp:9:
./boost/python/detail/wrap_python.hpp:50:23: fatal error: pyconfig.h: No such file or directory
# include <pyconfig.h>
Run Code Online (Sandbox Code Playgroud)
感谢任何帮助,谢谢大家!