Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.


Предупреждение

При использовании ядра ОС с усиленной защитой (ядра hardened) использование непривилегированных контейнеров невозможно, так как в hardened ядре в целях повышения защищенности запрещено использование технологии user_namespaces (CONFIG_USER_NS), необходимой для работы непривилегированных контейнеров.


Информация
В данной статье контейнер создаётся непосредственно в домашнем каталоге пользователя.
При планировании реальной установки следует рассмотреть возможности создания специального непривилегированного пользователя для размещения у него контейнеров.



Информация
titleДанная статья применима к:
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с ядром generic

  • Astra Linux Special Edition РУСБ.10015-16 исп. 1 с ядром generic

  • Astra Linux Common Edition 2.12


  1. Установить пакеты lxc, libpam-cgfs:

    Command
    sudo apt install lxc libpam-cgfs


  2. После установки пакетов перезагрузить систему:

    Command
    sudo reboot


  3. Убедиться, что версия пакета lxc >= 3.1.0+really3.0.3-8:

    Command
    apt-cache policy lxc


  4. Создать пользовательский конфигурационный файл, для чего:

    1. Найти идентификаторы непривилегированного пользователя.
      Это можно сделать командой:

      Информация
      grep $USER /etc/sub{u,g}id


    2. Создать каталог ~/.config/lxc/:

      Command
      mkdir ~/.config/lxc/


    3. Добавить найденные идентификаторы в файл ~/.config/lxc/default.conf:

      Информация
      lxc.idmap = u $subuid $uid
      lxc.idmap = g $subgid $gid


      Сценарий для создания пользовательского конфигурационного файла сразу с занесением в него идентификаторов:

      Command
      mkdir -p ~/.config/lxc
      sed -e "/^${USER}/"'!d; s/[^:]*:/lxc.idmap = u 0 /; s/:/ /' /etc/subuid >>~/.config/lxc/default.conf
      sed -e "/^${USER}/"'!d; s/[^:]*:/lxc.idmap = g 0 /; s/:/ /' /etc/subgid >>~/.config/lxc/default.conf


  5. Создать контейнер

    Command
    lxc-create -t download -n test -- -d debian --no-validate -a amd64 -r buster


  6. Добавить разрешение на домашнюю папку пользователя:

    Command
    chmod a+x $HOME


  7. Запустить контейнер

    Command
    lxc-start -n test