Установка на операционную систему Ubuntu¶
Для работы воркспейса на ОС Ubuntu требуется предварительная установка пакетов
Для установки пакетов нужно запустить bash скрипт с содержимым указанным ниже или выполнить эти команды последовательно:
#!/bin/bash
# Инструкция тестировалась на Ubuntu 18.04/20.04 LTS
# Требует запуск под root пользователем
# Версия: 4
# Флаг для переключения скрипта в strict mode (остановка скрипта при ошибках)
set -ex
# Обновляем информацию о пакетах
apt-get update
# Устанавливаем новые пакеты
apt-get install -y software-properties-common lxc lxc-templates bridge-utils redir tar zip unzip curl wget
Дополнительно для Ubuntu 22.04 и более поздних¶
/etc/default/lxc-net добавить строку:
После чего перезапустить службу.
Дополнительно для Ubuntu 24.04 и более поздних¶
В дистрибутивах начиная с этих версий включено автоматическое обновление пакетов в системе. Если ранее обновления копились и администратор принимал решение когда произвести установку, то теперь они ставятся периодически. При обновлении некоторых библиотек возможен перезапуск службы lxc что приведет к остановке контейнера с воркспейсом. Проверка автоматического обновления. Выполняем:
И смотрим вывод.
- Первый параметр отвечает за включение автоматического обновления списка пакетов. То же самое что ручноеapt update.
- Второй параметр это именно обновление пакетов.
Проверим дополнительно состояние службы:
Если она активна и включена, значит и обновление работает. Для исправления можно использовать три способа.
Отключить службу unattended-upgrades¶
Отключить обновление в файле /etc/apt/apt.conf.d/20auto-upgrades¶
Нужно просто исправить значение на 0 для нужного параметра. Например можно оставить обновление списка пакетов, но не обновлять сами пакеты. Для этого вносим правки.
Приводим его к такому виду.
Сохраняем и после этого перезапускаем службу.
Формируем список пакетов которые запрещено обновлять автоматически¶
Для этого вносим правки в etc/apt/apt.conf.d/50unattended-upgrades.
Пример:
Добавить под Unattended-Upgrade::Package-Blacklist {
"dnsmasq-base$";
"iproute2$";
"liblxc-common$";
"nftables$";
"iptables$";
"debconf$";
"debconf-2.0$";
"libapparmor1$";
"libc6$";
"libcap2$";
"libgcc-s1$";
"liblxc1t64$";
"libseccomp2$";
"libselinux1$";
Затем перезапустить unattended-upgrades.