OpenVZ 容器的啟動腳本/檔案在哪裡?

OpenVZ 容器的啟動腳本/檔案在哪裡?

我啟動我的容器,它有一些錯誤。

[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會觸發幾個動作腳本跑步。但是,那實際程式碼似乎更複雜。當我讀到它:

  1. 根據建立發行版的範本的名稱決定在容器中執行的發行版。
  2. 掛載容器的檔案系統並觸發預掛載和掛載操作腳本。
  3. 建立虛擬環境並設定其資源(網路和資源限制)。為此,它運行一些腳本特定於容器中運行的發行版 — 請參閱/etc/vz/dists/*.conf.
  4. 運行預啟動和啟動腳本。
  5. 運行初始化在容器中(/sbin/init/etc/init、 或之一/bin/init)。

我相信您的錯誤發生在步驟 3 中vzctl --verbose --verbose start 1011。如果資訊仍然不夠,您可以嘗試strace -f -e file vzctl start 1011

相關內容