Вопрос или проблема
ПРОБЛЕМА: На Ubuntu 20.04 LTS (Server) установка ubuntu-desktop через tasksel не удалась с ошибкой “tasksel: apt-get failed (100)”.
РЕШЕНИЕ 1: Восстановите последний хороший контрольный пункт.
Простое решение — откатить вашу систему к последнему хорошему контрольному пункту и чисто установить tasksel, затем ubuntu-desktop. Если это для вас не вариант, смотрите следующее решение.
РЕШЕНИЕ 2: Проверьте, установлены ли зависимости tasksel, используя команды:
- sudo apt list –installed debhelper*
- sudo apt list –installed dpkg-dev*
- sudo apt list –installed gettext*
- sudo apt list –installed po-debconf*
Если вам не хватает этих пакетов или они неверной версии, установите/обновите их. В моем случае debhelper не был установлен. Пакет debhelper очищает вашу машину, если присутствуют частичные или конфликтующие файлы. tasksel фактически указывает его как зависимость, вероятно, по этой причине.
Подробности о зависимостях tasksel можно найти здесь.
Детали системы:
Мой сервер — Ubuntu 20.04 LTS (focal) на архитектуре amd64 на виртуальной машине в Hyper-V. Операционная система Ubuntu обновлена.
Шаги для воспроизведения ошибки:
- Я установил tasksel с помощью sudo apt install tasksel.
- Я вызвал tasksel с помощью sudo tasksel.
- Я выделил пакет “ubuntu desktop” и нажал Enter.
- Установка завершилась с ошибкой:
- tasksel: apt-get failed (100)
Попытки исправления:
- Я проверил, что /etc/apt/sources.list включает мои репозитории focal (они включены).
- Я попробовал несколько комбинаций sudo apt update, sudo dpkg –configure -a и перезагрузку сервера. Источники здесь.
- После всего этого, вызвав sudo tasksel и пытаясь установить Ubuntu-desktop, снова возникла та же ошибка.
- tasksel: apt-get failed (100)
Я проверил страницу задачи tasksel на Launchpad Ubuntu и увидел, что у tasksel есть 4 зависимости, как указано ниже:
- debhelper (>= 9)
- dpkg-dev (>= 1.9.0)
- gettext
- po-debconf
Рабочее исправление:
- Я проверил свою установку Ubuntu с помощью sudo apt list –installed debhelper и увидел, что debhelper не установлен. Остальные 3 зависимости были установлены и имеют правильные минимальные версии.
- Я установил debhelper с помощью sudo apt install debhelper.
- Я снова запустил sudo tasksel и выбрал ubuntu-desktop.
- На этот раз tasksel прошел без ошибок.
Я также столкнулся с ошибкой apt-get, следуя тем же шагам, которые вы использовали для воспроизведения ошибки. Но затем я посмотрел руководство по установке KDE GUI и непосредственно использовал эту команду:
sudo tasksel install ubuntu-desktop
и она смогла установить необходимое. Я тоже использую Ubuntu 20.04.1 LTS.
Ответ или решение
Проблема установки ubuntu-desktop на Ubuntu 20.04 LTS (Server) через tasksel
Описание проблемы
При попытке установки ubuntu-desktop на сервере Ubuntu 20.04 LTS с использованием tasksel возникает ошибка "tasksel: apt-get failed (100)". Данная проблема может быть вызвана различными факторами, включая отсутствие необходимых зависимостей или неправильные настройки репозиториев.
Решение 1: Восстановление последней рабочей конфигурации
Самым простым решением будет откат к последней рабочей версии системы, после чего можно заново установить tasksel и ubuntu-desktop. Однако если эта опция недоступна, следует рассмотреть другие варианты.
Решение 2: Проверка зависимостей tasksel
Перед выполнением установки необходимо убедиться, что все зависимости для tasksel установлены. Для этого выполните следующие команды в терминале:
sudo apt list --installed debhelper*
sudo apt list --installed dpkg-dev*
sudo apt list --installed gettext*
sudo apt list --installed po-debconf*
Если какие-то из этих пакетов отсутствуют или имеют неверные версии, установите или обновите их.
Подробности о зависимостях tasksel
По информации, доступной на Launchpad, tasksel имеет следующие зависимости:
- debhelper (>= 9)
- dpkg-dev (>= 1.9.0)
- gettext
- po-debconf
Отсутствие debhelper может быть основной причиной ошибки, так как данный пакет отвечает за очистку системы от потенциально конфликтующих или неподходящих файлов.
Пошаговое решение проблемы
Шаг 1: Проверка установленных пакетов
Выполните команду, чтобы убедиться в наличии пакета debhelper:
sudo apt list --installed debhelper
Если пакет не установлен, необходимо его установить:
sudo apt install debhelper
Шаг 2: Попытка повторной установки через tasksel
После установки необходимых зависимостей, перезапустите установку ubuntu-desktop с помощью tasksel:
sudo tasksel
Выберите "ubuntu-desktop" и нажмите Enter. В большинстве случаев установка должна пройти успешно после выполнения вышеуказанных шагов.
Альтернативный подход
Если установка через tasksel продолжает выдавать ошибки, вы можете воспользоваться прямой командой установки:
sudo tasksel install ubuntu-desktop
Этот подход, как показали отзывы других пользователей, иногда оказывается более стабильным и эффективным.
Заключение
Установка ubuntu-desktop на сервере Ubuntu 20.04 LTS может сталкиваться с различными проблемами, включая отсутствие необходимых зависимостей. Проверка и установка этих зависимостей, таких как debhelper, а также использование альтернативных команд установки, могут помочь решить проблему. Если ваши попытки установить аналогичные пакеты продолжают вызывать трудности, не стесняйтесь обращаться за дополнительной помощью на специализированные форумы или сообщества.