Где находится скрипт/файл запуска для контейнера 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.

Связанный контент