Главная
» LINUX
»
Как запускать программы Ubuntu на Fedora Linux с помощью Distrobox
Как запускать программы Ubuntu на Fedora Linux с помощью Distrobox
С помощью Distrobox можно запускать множество программ командной строки и приложений рабочего стола Ubuntu в Fedora . Он создает контейнер Ubuntu со своими собственными пакетами и инструментами APT, интегрируя его с рабочим столом Fedora. Установите приложение внутри контейнера, а затем либо запустите его там, либо экспортируйте совместимое графическое приложение в меню приложений Fedora. При этом пакет Debian на хосте Fedora не устанавливается.
Контейнеры Distrobox используют часть среды хоста, включая ваш домашний каталог, поэтому рассматривайте их как инструмент обеспечения совместимости, а не как барьер безопасности, как виртуальную машину. В описанных ниже шагах используются Fedora Workstation, Podman и Ubuntu 26.04 LTS. Distrobox также может работать с Docker, но Podman — более простой вариант по умолчанию в Fedora.
1. Установите Distrobox и Podman.
Откройте Терминал и установите оба пакета из репозиториев Fedora:
sudo dnf install distrobox podman
Установите Distrobox и Podman на обычную установку Fedora.
Команда запросит ваш пароль и попросит подтвердить транзакцию с пакетами. Fedora публикует Distrobox и Podman в своих репозиториях пакетов. Убедитесь, что команды доступны с помощью distrobox --versionи podman --version.
В системах Silverblue или Kinoite сначала проверьте, установлены ли уже Distrobox и Podman. Эти Atomic-рабочие столы используют rpm-ostreeдля многоуровневого управления пакетами хоста; если Distrobox отсутствует, установите его sudo rpm-ostree install distroboxи перезагрузите систему, когда появится соответствующее сообщение. В командной строке Fedora для Silverblue описана команда package-layering. Шаги для контейнера, описанные ниже, аналогичны.
2. Создайте и войдите в контейнер Ubuntu.
Создайте виртуальный сервер с именем ubuntuиз образа Ubuntu 26.04:
Создайте контейнер Ubuntu с именем, которое вы сможете использовать в последующих командах.
Distrobox загружает образ при первом запуске и подготавливает контейнер. Ubuntu публикует образы контейнеров OCI, и 26.04 — это её текущий релиз LTS; см. документацию Canonical по образам контейнеров Ubuntu и циклу релизов . Если вам нужен другой релиз Ubuntu, замените 26.04на тег образа этого релиза.
Войдите в контейнер:
distrobox enter ubuntu
Теперь вы находитесь в командной оболочке Ubuntu. Запустите Distrobox от имени вашего обычного пользователя Fedora; не добавляйте его sudoперед . Руководство по созданиюdistrobox Distrobox описывает интеграцию с хостом, а руководство по входу — запуск оболочки или команды в виртуальной машине.
3. Установите программное обеспечение Ubuntu с помощью APT.
В командной оболочке Ubuntu обновите индекс пакетов перед поиском или установкой:
Обновите индекс пакетов Ubuntu, затем установите пакет внутри контейнера.
Замените keywordи package-nameна найденный вами поисковый запрос и имя пакета. Например, пакет Ubuntu устанавливается с помощью APT, а не DNF в Fedora. В руководстве по управлению пакетами Canonical описаны команды обновления и установки APT.
Вы также можете установить локальный пакет Debian, если файл находится в каталоге, видимом из контейнера, например, в вашей общей домашней папке:
sudo apt install ./package.deb
APT может разрешать зависимости из включенных репозиториев Ubuntu, но сторонний разработчик .debможет по-прежнему зависеть от служб или системных компонентов, которые контейнер не предоставляет. Если пакет доступен, отдавайте предпочтение пакету из репозиториев Ubuntu.
4. Запустите программу или добавьте её в меню приложений Fedora.
Для запуска инструмента командной строки выполните его команду в оболочке Ubuntu. Вы также можете выполнить одноразовую команду из Fedora, не открывая интерактивную оболочку:
distrobox enter ubuntu -- program --help
Для графической программы сначала установите соответствующий пакет Ubuntu, а затем запустите её distrobox-exportиз контейнера Ubuntu. Используйте имя приложения, указанное в настройках рабочего стола:
distrobox-export --app app-name
Экспортируйте запись совместимого приложения на рабочий стол, чтобы его можно было запускать из Fedora.
Distrobox копирует запись рабочего стола и её значок в вашу домашнюю директорию и инкапсулирует команду запуска, чтобы приложение запускалось через контейнер. В официальном руководстве по экспорту указаны поддерживаемые параметры. Если имя приложения не найдено, передайте полный путь к его .desktopфайлу, например /usr/share/applications/example.desktop. Это работает только в том случае, если пакет включает запись рабочего стола и приложение совместимо с настройками дисплея и графики хоста.
Поддерживайте работоспособность контейнера.
Чтобы обновить установленные пакеты Ubuntu, введите команду в поле и выполните её, sudo apt updateа затем sudo apt upgrade. Это обновит пакеты в контейнере, а не в Fedora.
Если APT не может найти пакет, убедитесь, что вы находитесь в контейнере Ubuntu, обновите индекс пакетов и проверьте точное имя пакета с помощью команды ` apt search.
Если графическое приложение не отображается в панели запуска Fedora, убедитесь, что его .desktopфайл существует, и запустите его повторно distrobox-export --appвнутри контейнера.
Distrobox — это практичный способ использования программного обеспечения, упакованного для Ubuntu, когда подходящая сборка Fedora недоступна. Он не может гарантировать работу каждого приложения Ubuntu: приложениям, требующим пользовательских модулей ядра, сложных системных служб или неподдерживаемой интеграции с графикой, может потребоваться виртуальная машина или пакет, изначально разработанный для Fedora. Поскольку контейнер использует ваш домашний каталог и выбранные ресурсы хоста, устанавливайте только то программное обеспечение, которому вы доверяете.