Я пытаюсь установить некоторые программы в Debian, и это мой первый опыт использования Linux, поэтому у меня возникли некоторые проблемы. Когда я пытаюсь установить build-essential
с помощью:
sudo apt-get install build-essential
или другая подобная команда говорит, что нет «кандидата на установку»
Я искал ответ на другие вопросы, подобные этому, но не смог найти решения.
решение1
Следующая ошибка означает, что на вашем компьютере E: Package 'build-essential' has no installation candidate
нет репозиторияmain
sources.list
Пакет build-essential
доступен наmain
репозиторий.
Во-первых, вам следует отредактировать sources.list
:
sudo apt edit-sources
добавьте следующие строки (пример sources.list
сmain
иcontrib
компонент):
deb http://httpredir.debian.org/debian jessie main contrib
deb-src http://httpredir.debian.org/debian jessie main contrib
deb http://httpredir.debian.org/debian jessie-updates main contrib
deb-src http://httpredir.debian.org/debian jessie-updates main contrib
deb http://security.debian.org/ jessie/updates main contrib
deb-src http://security.debian.org/ jessie/updates main contrib
Сохраните и выполните следующие команды для установки build-essential
пакета:
sudo apt update
sudo apt upgrade
sudo apt install build-essential
решение2
Чтобы Apt узнал о доступных пакетах, ему нужна действительная конфигурация /etc/apt/sources.list
(обычно она правильно инициализируется при установке дистрибутива) и ему нужно успешно загрузить файлы Packages
из настроенных сетевых расположений. Распространенные сценарии ошибок включают
- Устаревшая конфигурация. Если вы пытаетесь использовать дистрибутив, который больше не поддерживается, некогда правильные URL-адреса
/etc/apt/sources.list
больше не работают. Симптомом являются ошибки «Файл не найден» или «Нет маршрута к хосту», если весь сервер исчез. - Проблемы с брандмауэром, которые не позволяют Apt загружать
Packages
файлы, с похожими симптомами. Если вы можете подключиться к настроенным Apt расположениям из других мест, возможно, вам нужно использовать прокси? - Временные ошибки сервера, которые обычно исчезают сами собой через несколько минут или часов.
- Ошибка запуска
apt-get update
. Если локальные копии файловPackages
слишком старые, они будут указывать на версии пакетов, которых больше нет в архиве на сервере.
Менее распространенными, но возможными причинами проблем могут быть удаление файлов конфигурации по ошибке (восстановление из резервной копии? Включите достаточно информации в свой вопрос, чтобы мы могли сообщить вам общие значения по умолчанию для вашего дистрибутива?), проблемы с физическим подключением (интерфейс работает, и вы можете подключиться, например, к Google curl
или подобному?) и проблемы с локальным диском (поврежденные Packages
файлы? Диск смонтирован только для чтения?). Если вы устанавливали с DVD, также возможно, что только DVD настроен в Apt как источник пакета.
Для более детального устранения неполадок любое сообщение об ошибке или другой симптом будут полезны для определения ошибки, но понимания системы на этом уровне часто достаточно для самостоятельной диагностики.
Небольшим неудобством является то, что URL-адреса конфигурации не видны явно из обычного вывода Apt; конфигурация выглядит так:
deb http://example.net/path distribution section another
и сам Apt заполняет некоторые части, чтобы построить полный путь URL к одному или нескольким Packages
файлам на сервере. С помощью этой --print-uris
опции вы можете увидеть, что именно он пытается получить.