有没有办法让我从容器内部识别我所在的 OpenVZ 容器?我正在设置 OpenVZ 机器,其中 OpenVZ 机器将启动相同的(只读)磁盘映像,因此我无法在文件系统中单独配置它们。我需要每个虚拟服务器的唯一标识,以供在 OpenVZ 容器内运行的脚本使用。
(顺便说一下,我正在运行 Debian Lenny。)
答案1
OpenVZ 主机中的每个容器都有一个唯一的容器 ID,也称为 VEID。在容器内部,您应该能够像这样读取其 VEID:
awk '{print $1}' /proc/vz/veinfo
对于给定的容器,此 ID 应该是恒定的,因为它与.conf
为 OpenVZ 配置容器的文件相关联。
答案2
我的第一个想法是您可以使用每个虚拟机的 IP 或 MAC 地址来区分它们并将该值传递给您的脚本。