Когда вы используете apt
для установки пакета, под капотом он использует dpkg
. Когда вы устанавливаете пакет с помощью apt, он сначала создает список всех зависимостей и загружает его из репозитория.
Как только загрузка завершена, он вызывает dpkg
установку всех этих файлов, удовлетворяющих всем зависимостям.
Итак, если у вас есть .deb
файл:
Вы можете установить его используя:
sudo dpkg -i /path/to/deb/file
sudo apt-get install -f
Вы можете установить его, используя sudo apt install ./name.deb
(или sudo apt install /path/to/package/name.deb
).
В старых apt-get
версиях вы должны сначала переместить файл deb в /var/cache/apt/archives/
каталог. Для обоих после выполнения этой команды она автоматически загрузит свои зависимости.
Установите gdebi
и откройте файл .deb, используя его ( щелкните правой кнопкой мыши -> Открыть с помощью ). Он установит ваш пакет .deb со всеми его зависимостями.
( Примечание : APT поддерживает индекс пакета, который является базой данных доступных пакетов, доступных в репозитории, заданном в /etc/apt/sources.list
файле и в /etc/apt/sources.list.d
каталоге. Все эти методы не смогут удовлетворить программную зависимость, если зависимости, требуемые deb, отсутствуют в индексе пакета .)
Зачем использовать sudo apt-get install -f
послеsudo dpkg -i /path/to/deb/file
(упоминается в первом методе)?
От man apt-get
:
-f, --fix-broken
Fix; attempt to correct a system with broken dependencies in place.
Когда dpkg
устанавливается пакет и зависимость пакета не удовлетворяется, он оставляет пакет в «ненастроенном» состоянии, и этот пакет считается поврежденным.
sudo apt-get install -f
Команда пытается исправить этот поврежденный пакет, установив отсутствующую зависимость.
aptitude
который удаляет ненужные пакеты, а также.