Более безопасный способ запуска программного обеспечения Bleeding Edge на Debian и Ubuntu

Более безопасный способ запуска программного обеспечения Bleeding Edge на Debian и Ubuntu
⏱️ 1 min read

Возможно, вы заметили, что некоторое программное обеспечение в вашем дистрибутиве не является последним доступным. Большинство людей даже не подозревают об этом, потому что часто это не проблема. Это становится проблемой только тогда, когда вам нужны некоторые самые последние функции. Допустим, в код вашего любимого видеоредактора были внесены некоторые изменения, которые позволили сократить время рендеринга на 20%. Это может быть то, что вы хотите.

Короче говоря, большинство дистрибутивов, которые считаются «стабильными» или «долгосрочной поддержкой», будут иметь (по крайней мере, частично) более старое программное обеспечение в своих репозиториях. Но «плавающие дистрибутивы» включают в себя гораздо более новое программное обеспечение, поскольку они постоянно получают обновления от вышестоящих разработчиков. Debian Unstable (кодовое название Sid) является таким дистрибутивом. С помощью некоторой магии командной строки вы можете запустить Debain Sid внутри вашей текущей установки Debian Stable или Ubuntu.

Зачем это делать, если я могу просто добавить PPA или Backports?

Персональные архивы пакетов очень популярны среди пользователей, которые хотят добавить новое программное обеспечение в Ubuntu. Но PPA, бэкпорты (в Debian) и другие подобные методы мешают вашей основной установке. Это означает, что они могут обновлять отдельные части вашей основной системы. Это увеличивает риск того, что что-то пойдет не так, несовместимость между новым и старым программным обеспечением, появление новых ошибок в операционной системе и так далее.

Напротив, метод, описанный в этом руководстве, изолирует программное обеспечение в отдельном пространстве и никоим образом не мешает основной установке. Это чем-то похоже на контейнер (за исключением сильных функций безопасности). Кроме того, Debian Sid включает в себя гораздо больше программного обеспечения, чем вы найдете в PPA или бэкпортах. Однако всему есть свои ограничения, поэтому имейте в виду заметки из Страница нестабильной версии Debian.

Создайте минимальную установку Debian Sid с помощью debootstrap

Откройте эмулятор терминала и установите «debootstrap:»

sudo apt install debootstrap

Перейдите в свой домашний каталог;

cd $HOME

Начните загрузку новой установки Debian Sid в каталоге «debian-sid»:

sudo debootstrap sid debian-sid

Процесс займет некоторое время, поэтому подождите несколько минут.

debootstrap-install-sid

Подготовьте установку Debian Sid

Сначала установите новый пакет.:

sudo apt install systemd-container

Теперь используйте недавно установленную утилиту, чтобы «зайти» в ваш дистрибутив Debian Sid:

sudo systemd-nspawn -D debian-sid/

Если вы когда-нибудь застрянете в этом контейнере, вы можете нажать Ctrl + ] три раза подряд, чтобы принудительно выйти. Используйте его только как экстренный метод.

Добавьте нового пользователя. В этом примере пользователь называется просто «пользователь», но вы можете заменить его на желаемое имя пользователя, хотя то, как оно называется, не имеет значения.

adduser user

debootstrap-adduser

Выберите пароль для этого пользователя. При вводе текста текст отображаться не будет. После того, как вы нажмете Enter, введите тот же пароль еще раз, когда будет предложено. Следующие данные, такие как «Полное имя», не требуются, поэтому вы можете просто нажать Enter в этих запросах. Наконец, введите «y», когда вас спросят, верна ли информация, и нажмите Enter.

Установите судо:

apt install sudo

Добавьте пользователя в группу sudo:

adduser user sudo

Установите имя хоста для вашего контейнера. Это поможет вам на терминале, сделав его более понятным, когда вы вошли в контейнер и когда вы находитесь в своей основной системе. Это поможет избежать ошибок.

echo debian-sid > /etc/hostname

Выйдите из контейнера Debian Sid:

exit

Виртуальная загрузка контейнера Debian Sid с помощью systemd-nspawn

Простой chroot можно было бы использовать для входа в этот контейнер, но systemd-nspawn имеет более сильные методы изоляции. Это лучше предотвращает случайную «утечку» контейнера в вашу основную систему. Кроме того, утилита включает в себя виртуальный загрузочный переключатель. Это имитирует реальную загрузку вашей установки Debian Sid. Это запускает некоторые фоновые процессы, которые могут потребоваться некоторым приложениям для правильной работы (например, dbus).

«Загрузите» вашу установку Debian Sid:

sudo systemd-nspawn --boot -D debian-sid/

debootstrap-виртуальная загрузка

Войдите в систему с выбранным ранее логином и паролем.

Установите и запустите желаемое программное обеспечение

Допустим, вы хотите установить редактор изображений GIMP:

sudo apt install gimp

Завершите работу вашего контейнера, чтобы вы могли перезагрузиться со всеми установленными в нем новыми материалами (зависимостями, такими как dbus):

sudo systemctl poweroff

Всякий раз, когда вы закончите работу с контейнером, вы должны использовать эту команду для выхода.

GIMP — это графическое приложение, поэтому ему нужен графический сервер. По техническим причинам он не работает в вашем контейнере, но работает в вашей основной системе. Запустите это в своей основной операционной системе (не в контейнере):

echo $DISPLAY

Вы можете получить ответ, например :0.0.

Загрузите контейнер снова:

sudo systemd-nspawn --boot -D debian-sid/

После входа сообщите контейнеру, где он может найти дисплей.

export DISPLAY=:0.0

Заменять :0.0 если бы у вас был другой ответ.

Это работает только с графическим сервером Xorg. Если вы используете Wayland, вам может потребоваться сделать это с переменной WAYLAND_DISPLAY вместо DISPLAY. Если это не сработает, временно используйте Xorg через параметры вашего менеджера входа в систему.

Теперь вы можете запустить гимп:

gimp

debootstrap-running-gimp

Не обращайте внимания на предупреждения в терминале. Вы получаете их в любой системе, когда запускаете графическое приложение из терминала. Это нормальный выход. Вы просто обычно не видите его, так как обычно запускаете приложения из графического лаунчера.

Вывод

Достичь этого может быть сложно, но как только вы закончите, установить новое программное обеспечение будет несложно. Просто загрузите контейнер, установите apt, экспортируйте отображение, запустите приложение. Когда у вас есть все, что вам нужно, вам просто нужно время от времени обновляться. Сделайте это с apt update && apt upgrade. Иногда вам также может понадобиться использовать apt update && apt full-upgrade после предыдущей команды.

Join our Newsletter and receive offers and updates! ✅

0 0 голоса
Article Rating
Аватар Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Подписаться
Уведомить о
guest
0 Comments
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x