Запуск Debian 10 в тухлой Virtuozzo

Jun 17, 2020 00:57


При попытке запустить контейнер с Debian 10 на достаточно тухлой Virtuozzo мы можем словить всевозможные странные спецэффекты. Самый характерный: она скажет что-нибудь типа
Failed to start the CT: PRL_ERR_VZCTL_OPERATION_FAILED (Details: /usr/sbin/vzctl: relocation error: /lib/x86_64-linux-gnu/libnss_files.so.2: symbol __libc_readline_unlocked, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

Могут наблюдаться и какие-нибудь другие странные грабли.

Правильный способ решения: обновить Virtuozzo до последней актуальной версии.

Костыль: остановить контейнер, примонтировать на хост-машину его файловую систему, грохнуть с неё файл "/etc/ld.so.cache", отмонтировать, запустить контейнер.

Подстава: эту операцию придётся проделывать каждый раз заново перед всяким стартом контейнера. Так что лучше всё-таки использовать "правильный способ".

Примерный порядок действий.
  1. vzctl mount <много цифр и букв>
  2. rm /vz/root/<много цифр и букв>/etc/ld.so.cache
  3. vzctl umount <много цифр и букв>
  4. prlctl start <много цифр и букв>

Также не лишним будет, раз уж всё равно остановили контейнер, сделать "prl_disk_tool compact --hdd /vz/private/<много цифр и букв>/root.hdd". Оно освободит немного места на физических дисках. Правда, может выполняться долго. В зависимости от степени запущенности и аптайма контейнера.

А вообще, контейнеризация - зло. По возможности избегайте этого. Ох не по своей доброй воле мне приходится опять мараться об эту OpenVZ / Virtuozzo.

грабли, виртуализация

Previous post Next post
Up