OpenVZ Forum


Home » International » Russian » *solved* В $VEID.start не работает sysctl
*solved* В $VEID.start не работает sysctl [message #33971] Sat, 22 November 2008 09:12 Go to next message
maxx is currently offline  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 messageGo to next message
maxx is currently offline  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 кому-нибудь пригодится...
Re: *solved* В $VEID.start не работает sysctl [message #34046 is a reply to message #33971] Thu, 27 November 2008 14:10 Go to previous messageGo to next message
POMAH007 is currently offline  POMAH007
Messages: 39
Registered: May 2007
Location: Kemerovo, Russia
Member
Не понял. А /etc/sysctl.conf в VE уже не работает?

Re: *solved* В $VEID.start не работает sysctl [message #34100 is a reply to message #34046] Tue, 02 December 2008 05:40 Go to previous message
maxx is currently offline  maxx
Messages: 13
Registered: November 2008
Location: Volgograd, Russia
Junior Member
Извиняюсь, что не уточнил. В предыдущем своем вопросе оговаривал, что задача такова, чтобы внутри контейнера ничего не менять (идентичный контейнер используется для кучи VE).
Previous Topic: Open files limit is set to
Next Topic: Как смонтировать раздел в VE по UUID?
Goto Forum:
  


Current Time: Tue Nov 05 03:33:54 GMT 2024

Total time taken to generate the page: 0.03389 seconds