*solved* В $VEID.start не работает sysctl [message #33971] |
Sat, 22 November 2008 09:12 ![Go to next message Go to next message](/theme/ovz3/images/down.png) |
maxx
Messages: 13 Registered: November 2008 Location: Volgograd, Russia
|
Junior Member |
|
|
В стартовом скрипте для контейнера не работают некоторые утилиты, такие как sysctl.
/sbin/sysctl -a в скрипте выдает ошибку
error: unable to open directory "/proc/sys/"
Соответственно, при попытке что-нибудь поменять через sysctl тоже трабл.
/sbin/sysctl net.ipv4.conf.eth0.proxy_arp=1
error: "net.ipv4.conf.eth0.proxy_arp" is an unknown key
Конечно, можно такие действия вставить в /etc/sysctl.conf внутри контейнера, но это не вариант. У нас специфическая задача и куча контейнеров. Мы автоматизируем управление ими, и все настройки контейнеров для удобства бекапирования и обновления снесли в конфигурационные скрипты в /etc/vz/conf. Не хотелось бы влазить внутрь VE.
Пока сделали такое решение (кривое конечно).
Внутри VE модифицирован файл /etc/rc.local:
if [ -f /etc/rc.local.vz ]; then
/bin/sh /etc/rc.local.vz
fi
Соответственно, если нужно настроить что-то через sysctl внутри VE при старте, то в файле $VEID.start можно сделать так:
/bin/echo > /etc/rc.local.vz ""
/bin/echo >> /etc/rc.local.vz "/sbin/sysctl net.ipv4.conf.eth0.proxy_arp=1"
Может кто знает решение лучше? Или объяснит, почему в $VEID.start не работает sysctl внутри VE. Будет ли это поправлено или так и должно быть и это правильно.
[Updated on: Sat, 22 November 2008 14:20] Report message to a moderator
|
|
|
Re: В $VEID.start не работает sysctl [message #33976 is a reply to message #33971] |
Sat, 22 November 2008 14:19 ![Go to previous message Go to previous message](/theme/ovz3/images/up.png) ![Go to next message Go to next message](/theme/ovz3/images/down.png) |
maxx
Messages: 13 Registered: November 2008 Location: Volgograd, Russia
|
Junior Member |
|
|
Прочитал еще раз руководство http://www.opennet.ru/docs/RUS/virtuozzo/ и нашел такое замечание:
" Скрипты start и stop выполняются в контексте VPS. Если эти скрипты обращаются к каким-либо внешним командам, команды берутся непосредственно из VPS. Имейте в виду, что скрипт start начинает свою работу еще до выполнения каких-либо операций VPS (включая init).Таким образом, в этот момент, система файлов /proc на VPS еще не установлена и приложения, использующие /proc, могут просто не функционировать. "
Теперь понятно, что к чему.
Ну, может rc.local.vz кому-нибудь пригодится...
|
|
|
|
|