Безопасный способ запуска взломанных системных приложений в Debian и Ubuntu

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

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

Безопасный способ запуска скомпрометированных системных приложений в Debian и Ubuntu — Linux

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

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

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

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

Откройте эмулятор терминала и установите »бутстрап: "

sudo apt install debootstrap

Вам нужно перейти в свой домашний каталог;

cd $HOME

Начало бутстрап Чтобы установить новый Debian Sid в «Каталог»дебиан-сид«:

sudo debootstrap sid debian-sid

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

Безопасный способ запуска скомпрометированных системных приложений в Debian и Ubuntu — Linux

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

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

sudo apt install systemd-container

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

sudo systemd-nspawn -D debian-sid/

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

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

adduser user
Безопасный способ запуска скомпрометированных системных приложений в Debian и Ubuntu — Linux

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

sudo install:

apt install sudo

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

adduser user sudo

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

echo debian-sid > /etc/hostname

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

exit

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

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

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

sudo systemd-nspawn --boot -D debian-sid/
Безопасный способ запуска скомпрометированных системных приложений в Debian и Ubuntu — Linux

Авторизуйтесь, используя ранее выбранные логин и пароль.

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

Допустим, вы хотите установить GIMP Photo Editor:

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 вместо ДИСПЛЕЙ. Если это не сработает, используйте Xorg Временно через параметры диспетчера входа.

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

gimp
Безопасный способ запуска скомпрометированных системных приложений в Debian и Ubuntu — Linux

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

Заключение

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

Перейти к верхней кнопке