我启动了我的容器,但出现了一些错误。
[xxx@centosbuilder1 etc]$ sudo vzctl start 1011
Starting container...
Container is mounted
Adding IP address(es): 10.0.64.23
cp: cannot stat '/etc/conf.d/netcfg': No such file or directory
/bin/bash: line 593: /etc/conf.d/netcfg: No such file or directory
/bin/bash: line 594: /etc/conf.d/netcfg: No such file or directory
A unit file for profile 'venet0' already exists
Setting CPU units: 1000
如果我创建目录并触摸 netcfg(在客户机中),错误就会消失。
我宁愿修复实际问题。它正在运行什么文件?我希望找到第 593 行并进行调查。
答案1
根据文档,vzctl start
触发几个动作脚本运行。然而,实际代码看起来更复杂。我读到的是:
- 根据创建容器的模板名称确定容器中运行的发行版。
- 挂载容器的文件系统并触发预挂载和挂载操作脚本。
- 创建虚拟环境并设置其资源(网络和资源限制)。为此,它运行一些脚本特定于在您的容器中运行的发行版 — — 请参阅
/etc/vz/dists/*.conf
。 - 运行预启动和启动脚本。
- 运行 init在容器中(
/sbin/init
、/etc/init
或之一/bin/init
)。
我认为您的错误发生在第 3 步。有关实际运行的脚本的更多信息,请尝试vzctl --verbose --verbose start 1011
。如果这些信息仍然不够,您可以尝试strace -f -e file vzctl start 1011
。