LXC () — система віртуалізації на рівні операційної системи для запуску декількох ізольованих примірників ОС Linux на одному комп'ютері. LXC не використовує віртуальні машини, а створює віртуальне оточення з власним простором процесів і мережевим стеком. Усі примірники LXC використовують один примірник ядра ОС.

Ця система схожа на системи OpenVZ і Linux-VServer для ОС Linux, а також на FreeBSD jail і Solaris Containers.

LXC заснована на технології ядра Linux під назвою cgroups (додана у версії 2.6.29). Також використовується функціональність ізоляції .

До складу інструментарію LXC входить бібліотека liblxc, набір утиліт (lxc-create, lxc-start, lxc-stop, lxc-ls і тому подібне), шаблони для побудови контейнерів і набір байндингів (bindes) для різних мов програмування. Для ізоляції процесів, мережевого стека ipc, uts і точок монтування використовується механізм (). Для обмеження ресурсів застосовуються cgroups. Для пониження привілеїв і обмеження доступу задіяні такі можливості ядра, як профілі Apparmor і SELinux, політики Seccomp, Chroots (pivot_root) і capabilities.

Дивись також Порівняння віртуальних машин Віртуалізація на рівні операційної системи cgroups

Виноски

Посилання IBM developerworks article about LXC LXC HOWTO Another HOWTO