====== Debian: Работа с пакетами ====== ====== Репозитории ====== https://wiki.debian.org/ru/UnofficialRepositories **https://www.apt-browse.org/** ===== Debian Backports ===== https://wiki.debian.org/ru/Backports ===== deb-multimedia ===== :!: Нужно использовать с осторожностью, т.к. зависимости многих пакетов конфликтуют по версиям с пакетами из основного репозитория. https://deb-multimedia.org/ https://wiki.debian.org/DebianMultimedia ==== Установка ==== 1. Нужно добавить репозиторий в ''/etc/apt/sources.list'', подробности: [[https://deb-multimedia.org/|deb-multimedia]] # deb http://www.deb-multimedia.org stable main non-free deb http://www.deb-multimedia.org stable-backports main 2. Обновить список пакетов: apt-get -u update apt-get install deb-multimedia-keyring ====== Добавление поддержки архитектуры i386 ====== dpkg --add-architecture i386 && apt update ====== Управление пакетами из консоли ====== [[aptitude:aptitude]] ====== Графический интерфейс ====== |Управление репозиториями|[[python-software-properties:python-software-properties|]]| |Управление пакетами|[[synaptic:synaptic|]]| |Установки пакетов из файлов|[[gdebi:gdebi|]]| ====== Настройка apt ====== Файл: ''/etc/apt/apt.conf'' |APT::Get::Show-Upgraded "true";|Для того, чтобы всегда перечислять обновляемые пакеты и запрашивать подтверждение у пользователя| |Acquire::http::Proxy "http://proxy:3128";|Работа через прокси| Локальная документация: ''/usr/share/doc/Debian/apt-howto'' {{anchor:sourcs_list}} ====== Ссылки на источники обновлений ====== Основной файл: ''/etc/apt/sourcs.list'' Области: * ''main'' * ''contrib'' * ''non-free'' - для "несвободных" пакетов, например для пакетов с драйверами, прошивками ===== wheezy ===== # deb http://mirror.mephi.ru/debian wheezy-backports main contrib non-free deb-src http://mirror.mephi.ru/debian wheezy-backports main contrib non-free deb http://ftp.ru.debian.org/debian/ wheezy main contrib non-free deb-src http://ftp.ru.debian.org/debian/ wheezy main contrib non-free deb http://security.debian.org/ wheezy/updates main contrib non-free deb-src http://security.debian.org/ wheezy/updates main contrib non-free deb http://ftp.ru.debian.org/debian/ wheezy-updates main contrib non-free deb-src http://ftp.ru.debian.org/debian/ wheezy-updates main contrib non-free 31 мая 2018 перекрещена поддержка Debian Wheezy, поэтому необходимо изменить адреса серверов обновлений: deb http://archive.debian.org/debian/ wheezy main deb-src http://archive.debian.org/debian/ wheezy main #deb http://security.debian.org/ wheezy/updates main contrib #deb-src http://security.debian.org/ wheezy/updates main contrib и выполнить [[#обновление списка]] пакетов командой: apt-get -u update ---- [[https://www.ispsystem.ru/news/debianwheezyend|Debian прекратили поддержку Debian 7 Wheezy | Web hosting software]] ===== jessie ===== # deb http://ftp.ru.debian.org/debian/ jessie main contrib non-free deb-src http://ftp.ru.debian.org/debian/ jessie main contrib non-free deb http://security.debian.org/ jessie/updates main contrib non-free deb-src http://security.debian.org/ jessie/updates main contrib non-free deb http://ftp.ru.debian.org/debian/ jessie-proposed-updates main contrib non-free deb-src http://ftp.ru.debian.org/debian/ jessie-proposed-updates main contrib non-free deb http://ftp.ru.debian.org/debian/ jessie-backports main contrib non-free deb-src http://ftp.ru.debian.org/debian/ jessie-backports main contrib non-free Вариант работы с архивом: # deb http://archive.debian.org/debian/ jessie main deb-src http://archive.debian.org/debian/ jessie main deb http://security.debian.org/ jessie/updates main contrib deb-src http://security.debian.org/ jessie/updates main contrib ===== stretch ===== # deb http://ftp.ru.debian.org/debian/ stretch main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch main contrib non-free deb http://security.debian.org/ stretch/updates main contrib non-free deb-src http://security.debian.org/ stretch/updates main contrib non-free deb http://ftp.ru.debian.org/debian/ stretch-proposed-updates main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch-proposed-updates main contrib non-free deb http://ftp.ru.debian.org/debian/ stretch-backports main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch-backports main contrib non-free deb http://ftp.ru.debian.org/debian/ stretch-backports-sloppy main contrib non-free deb-src http://ftp.ru.debian.org/debian/ stretch-backports-sloppy main contrib non-free ===== buster ===== FIXME # deb http://mirror.yandex.ru/debian buster main deb-src http://mirror.yandex.ru/debian buster main deb http://mirror.yandex.ru/debian buster-updates main deb-src http://mirror.yandex.ru/debian buster-updates main deb http://security.debian.org/ buster/updates main deb-src http://security.debian.org/ buster/updates main deb http://deb.debian.org/debian/ buster-backports main contrib non-free deb-src http://deb.debian.org/debian/ buster-backports main contrib non-free ===== bullseye ===== FIXME # deb http://mirror.yandex.ru/debian bullseye main deb-src http://mirror.yandex.ru/debian bullseye main deb http://mirror.yandex.ru/debian bullseye-updates main deb-src http://mirror.yandex.ru/debian bullseye-updates main deb http://security.debian.org/ bullseye-security main deb-src http://security.debian.org/ bullseye-security main deb http://deb.debian.org/debian/ bullseye-backports main contrib non-free deb-src http://deb.debian.org/debian/ bullseye-backports main contrib non-free {{anchor:url_list}} ===== Список URL ===== Список URL, например для работы через [[squid:squid#restrict_access_ip_url|Squid]] security.debian.org security-cdn.debian.org ftp.ru.debian.org http.us.debian.org us.debian.org keys.gnupg.net mirror.mephi.ru cdn.debian.net debian.nsu.ru mirror.yandex.ru downloads.sourceforge.net downloads.sourceforge.net/corefonts switch.dl.sourceforge.net/sourceforge/corefonts/ mesh.dl.sourceforge.net/sourceforge/corefonts/ dfn.dl.sourceforge.net/sourceforge/corefonts/ heanet.dl.sourceforge.net/sourceforge/corefonts/ jaist.dl.sourceforge.net/sourceforge/corefonts/ nchc.dl.sourceforge.net/sourceforge/corefonts/ ufpr.dl.sourceforge.net/sourceforge/corefonts/ internode.dl.sourceforge.net/sourceforge/corefonts/ voxel.dl.sourceforge.net/sourceforge/corefonts/ kent.dl.sourceforge.net/sourceforge/corefonts/ internap.dl.sourceforge.net/sourceforge/corefonts/ downloads.sourceforge.net/corefonts dl.sourceforge.net deb.debian.org ====== Обновление старых версий ====== FIXME Debian 8 (Jessie) deb http://archive.debian.org/debian/ jessie main contrib non-free deb http://archive.debian.org/debian-security jessie/updates main contrib non-free Иногда для Debian 8 (jessie) нужен пакет ''apt-transport-https'' |{{:debian:apt-transport-https_1.0.9.8.4_amd64.deb|apt-transport-https (amd64)}}| [[http://archive.debian.org/debian/pool/main/a/apt/apt-transport-https_1.0.9.8.4_amd64.deb|оригинал]]| |{{:debian:apt-transport-https_1.0.9.8.4_i386.deb|apt-transport-https (i386)}}| [[http://archive.debian.org/debian/pool/main/a/apt/apt-transport-https_1.0.9.8.4_i386.deb|оригинал]]| Debian 9 (Stretch) deb http://archive.debian.org/debian/ stretch main contrib non-free deb http://archive.debian.org/debian/ stretch-proposed-updates main contrib non-free deb http://archive.debian.org/debian-security stretch/updates main contrib non-free [[https://setiwik.ru/repozitorii-debian-sources-list-dlya-kazhdogo-vypuska/|Репозитории Debian, sources.list для каждого выпуска - Список]] ====== Обновление списка пакетов ====== apt-get update ====== Обновление ключей ====== apt-get install debian-keyring debian-archive-keyring apt-key update ====== Обновление пакетов ====== apt-get -u upgrade Команда обновляет все установленные пакеты, но не удаляет пакеты для разрешения зависимостей ====== Список пакетов, которые могут быть обновлены ====== apt list --upgradable ====== Обновление всех установленных пакетов ====== apt-get -u dist-upgrade Обновление всех установленных пакетов с удалением или установкой пакетов по мере необходимости для разрешения всех зависимостей ====== Обновление списка пакетов и самих пакетов ====== apt-get update apt-get -u upgrade ====== Установка пакета ====== apt-get install ИМЯ_ПАКЕТА Установка только самого пакета, без рекомендованных других пакетов: apt-get install ИМЯ_ПАКЕТА --no-install-recommends ====== Установка пакета из определённого репозитория ====== apt-get -t ИМЯ_РЕПОЗИТОРИЯ install ИМЯ_ПАКЕТА ====== Удаление пакета ====== apt-get remove ИМЯ_ПАКЕТА ====== Удаление не используемых старых пакетов ====== apt-get autoclean apt-get autoremove ====== Удаление кеша всех пакетов ====== Удаление всех пакетов из папки ''/var/cache/apt/archives'' apt-get clean ====== Версия пакета ====== apt-cache show ИМЯ_ПАКЕТА|grep Version ====== Перенастроить заново уже установленный пакет ====== dpkg-reconfigure ИМЯ_ПАКЕТА ====== Список всех установленных пакетов ====== С версиями и описанием: dpkg -l Список только названий: dpkg --get-selections ====== Поиск пакета ====== apt-cache search ИМЯ_ПАКЕТА ====== Добавление репозитория ====== FIXME ====== Создание локального репозитория ====== FIXME https://wiki.debian.org/ru/CreateLocalRepo https://github.com/apt-mirror ====== Проблемы ====== В случае возникновения ошибки: E: Пакет <имя пакета> нуждается в переустановке, но найти архив для него не удалось Нужно удалить информацию от этом пакете в файле ''/var/lib/dpkg/status'' ===== Проблема с обновлением jessie 2019-03 ===== FIXME echo "Acquire::Check-Valid-Until false;" | sudo tee -a /etc/apt/apt.conf.d/10-nocheckvalid [[https://www.jesusamieiro.com/failed-to-fetch-http-ftp-debian-org-debian-dists-jessie-updates-main-404-not-found/|Failed to fetch http://ftp.debian.org/debian/dists/jessie-updates/main/ 404 Not Found - Jesús Amieiro]] ====== Работа через dpkg ====== ===== Установка пакета ===== {{anchor:dpkginstall}} dpkg -i ИМЯ_ПАКЕТА.deb Если в процессе установки появится ошибка, что нет необходимых пакетов, то запускаем команду: |apt-get install -f или apt-get --fix-broken install или aptitude -f install| после этого нужно выполнить установку пакета повторно. ===== Удаление пакета ===== dpkg -r ИМЯ_ПАКЕТА.deb ====== Установка пакетов из unstable ====== :!: При установке пакетов из ''unstable'' легко сломать зависимости и вернутся обратно будет невозможно! - Нужно создать файл: deb http://ftp.ru.debian.org/debian unstable main contrib non-free deb-src http://ftp.ru.debian.org/debian unstable main contrib non-free - Чтобы система не обновляла все пакеты из ''unstable'', надо указать основную версию в файле: APT::Default-Release "stretch"; - Выполнить [[#обновление списка пакетов и самих пакетов]] Чтобы поставить пакет нужно выполнить [[#установка пакета из определённого репозитория|установку с указанием репозитория]] ''unstable'' Пример: apt-get -t unstable install ИМЯ_ПАКЕТА ---- [[http://drumrock.ru/translations/debian-apt-part-2-installing-unreleased-software/|Debian APT Часть 2: Установка не-релизов ПО]] **[[https://maxpoletaev.ru/blog/unstable-packages-in-debian|Выборочная установка пакетов из нестабильной ветки в Debian]]** ====== Удаление старых ядер ====== FIXME [[https://sysadmin.pm/remove-old-kernels-debian-ubuntu/|Удаление старых ядер в Debian и Ubuntu - Записки сисадмина]] ====== APT Preferences ====== FIXME Файл ''/etc/apt/preferences'' изначально отсутствует с системе. https://wiki.debian.org/ru/AptPreferences [[https://www.linux.org.ru/forum/general/13491131/page1|linux.org.ru: Проблема после обновления на Debian9]] ====== Ссылки ====== **[[https://tracker.debian.org/|Debian Package Tracker]]** [[http://linuxoid.in/Полезные_репозитории_для_Debian|Полезные репозитории для Debian]] **[[https://debgen.simplylinux.ch/|Debian Sources List Generator]]** [[https://www.debian.org/releases/proposed-updates.ru.html|Механизм "предложенных обновлений"]] [[http://achlab.ru/ach/tag/apt-key-time-out/|apt-key через прокси]] [[https://sysadmin.ru/articles/ustanovka-deb-paketa-so-vsemi-zavisimostyami|Установка deb пакета со всеми зависимостями]] [[https://www.debian.org/doc/debian-policy/index.html|Debian Policy Manual]] [[https://serveradmin.ru/nastrojka-repozitoriev-v-debian/|Настройка репозиториев в Debian | serveradmin.ru]] {{tag>Debian Debian_Package_Tool}}