Vitaly Lipatov wrote:

On 19 декабря 2007, Kostarev Alexey wrote:
Slava Dubrovskiy wrote:
Kostarev Alexey пишет:
Можно ли стартовать haspd в контейнере и обеспечить ему
доступ к USB-портам или это в принципе невозможно?
Ну передаете в контейнер устройство USB и думаю должно
заработать. Диск же передается и нормально работает.
Мне в контейнере необходим доступ к /proc/bus/usb/devices
Всё же напишите на [EMAIL PROTECTED]
И контейнер сделают, и проверят вашу ситуацию, и посоветуют как быть.
Ну или мы от вас научимся, если сами решите ;)
Проблему решил, правда не скажу, что корректно...
Итак основная проблема для демона aksusbd в контейнере была в пробросе в контейнер каталога /proc/bus/usb/ Сами устройства /dev/... ей не нужны, окромя tty и null которые в контейнере есть. mount --rbind мне в руки НО Я НИКАК НЕ СМОГ СМОНТИРОВАТЬ /proc/bus основной системы в /proc/bus контейнера
Команда
mount --rbind  /proc/bus /var/lib/vz/root/xxx/proc/bus
заканчивались ничем по одной постой причене - файловая система proc не позволяет создавать ни каталоги ни файлы.
НИКТО НЕ ПОМОЖЕТ МНЕ ОБОЙТИ ЭТО ОГРАНИЧЕНИЕ?

Для пробы я попытался монтировать каталог /proc/bus основной системы на каталог /root/bus контейнера.
mount --rbind  /proc/bus /var/lib/vz/root/xxx/root/bus
Монтирование прошло успешно, файл
bus/usb/devices успешно читается, каталоги bus/usb/001, .... существуют и доступны в контейнере.

Теперь появилась проблнма N2 - как заставить aksusbd читать файлы из каталога /root/bus/usb/ а не /proc/bus/usb/ Я отписал письмо в поддержку etersoft с просьбой добавить в демон aksusbd флаг, позволяющий указывать расположение данного каталога Насколько я знаю у команды aksusbd исходники открыты, закрыты лишь alladin-библиотека (хотя может я ошибаюсь) Тем не менее не дождавшись в течении суток ответа я решил действовать хакерским способом -:)
подправил в бинарном коде строки /proc/usb/ на /root/usb/

После этого демон aksusbd задышал
Все остальные сервисы (hasplm, ...) запустились, правда я их не проверял.
Команда eterkeytest сообщила, что все alladin-ключи видны, правда сообщает с небольшой задержкой. Причем у меня сложилась забавная ситуация - с одними и те ми же ключами работают сразу два менеджера aksusbd - основной и в контейнере. Но на запросы о сетевых ключах, отвечает похоже один из них.
Мне важно было, чтобы в контейнере был виден локальный ключ.

На текущий момент у меня остались следующие вопросы:
1. Можно ли таки примонтировать каталог в /proc/
2. В каком месте при запуске контейнера вставить скрипт, монтирующий необходимый мне каталог из основной системы
до запуска /etc/init.d/-скриптов контейнера
3. Как отмонтировать примонтированный ресурс
Попытка отмонтировать его при работающем контейнере не проходит, хотя с этом каталогом уже никакой процесс не работает (проверял через fuser -v). После останова контейнера каталога /var/lib/vz/root/xxx / уже не существует. Каталог /var/lib/vz/privzte/... в данной ситуации не помогает - в него не монтируется /proc/ Такое ощещение, что отмонтирование надо производить в момент оставнова после всех сервисов контейнеров но до окончательного удаления контейнера.
Где бы об этом почитать?





--
С Уважением
Директор ООО НЕВОД
Костарев А.Ф.

begin:vcard
fn:Alexey Kostarev
n:Kostarev;Alexey
org:Nevod Ltd.
adr:;;;Perm;;;Russia
email;internet:[EMAIL PROTECTED]
tel;work:(3422) 196-960 
url:http://www.nevod.ru/nevod/staff/kaf/
version:2.1
end:vcard

_______________________________________________
Sysadmins mailing list
[email protected]
https://lists.altlinux.org/mailman/listinfo/sysadmins

Ответить