5.4 Как определить, какому пакету принадлежит файл
Если вы хотите установить пакет и не можете найти его название с помощью
, но знаете имя программы этого пакета или имя любого
другого файла из этого пакета, то для поиска имени пакета вы можете
воспользоваться программой . Используется она примерно
так:
$ apt-file search имя-файла
Работает она примерно также как и dpkg -S, но будет показывать
также и неустановленные пакеты, которые содержат указанный файл. Команда может
применяться также для поиска заголовочных файлов, которые могут потребоваться
при компиляции программ, хотя в данном случае более
хорош, см. .
Также вы может посмотреть список файлов в пакете командой:
$ apt-file list имя-пакета
хранит базу данных, в которой отслеживает какие файлы
содержат пакеты также, как это делает auto-apt и ему нужно ее обновлять. Это
делается так:
# apt-file update
По умолчанию, использует базу данных
, см. .
Короткий ответ:
Вот файл , который используйте для решения, который должна выбрать версия, которая это, если существует много версий единственного packge. С этим любой пакет, который прибывает из локального репозитория, будет иметь приоритет по другим пакетам.
Package: * Pin: origin "" Pin-Priority: 1001
Это не будет управлять версией, но исходным предпочтением, если оба пакета будут иметь ту же версию. Если необходимо присвоить самый высокий приоритет для той же версии пакета в локальном repo, перечислите их наверху к файл>
Ответьте на исходный вопрос:
Нет никакого способа присвоить самый высокий приоритет локальному репозиторию без использования файл. необходимо поместить их в вершину «sources.list», если Вы хотите присвоить самый высокий приоритет своему локальному repo.
Сводный ответ на этот вопрос:
Используя файл, необходимо поместить строку локального репозитория наверху этого файла. как ниже одного.
deb cdrom:/ precise main restricted deb file:/media/Main/Precise-Debs-New / deb file:/media/Main/Linux-Software/Ubuntu/Precise / deb http://archive.ubuntu.com/ubuntu precise main universe restricted multiverse deb-src http://archive.ubuntu.com/ubuntu precise universe main multiverse restricted #Added by software-properties # deb cdrom:/ precise main multiverse restricted universe # deb cdrom:/ precise main restricted # deb http://archive.canonical.com/ubuntu precise partner # deb-src http://archive.canonical.com/ubuntu precise partner # deb http://extras.ubuntu.com/ubuntu precise main # deb-src http://extras.ubuntu.com/ubuntu precise main
И да, «apt_preference» не имеет никакого отношения к экземплярам выбора пакетов с той же версией. Точка здесь, Вы не можете использовать файл для принуждения для выбирания/использования a файл от Вашего локального репозитория путем присвоения самого высокого приоритета локальному. Тот файл (предпочтение) используется для выбора определенной версии, не определенного экземпляра (.deb файл) той же версии. Для последнего случая необходимо использовать файл с вышеупомянутым методом.
Утилита dpkg
— это низкоуровневая программа управления пакетами, единственная полезная её функция для обычного пользователя — это прямая установка пакета из deb-файла (хотя, эту же операцию можно выполнить через Центр программного обеспечения). Выполняется она командой
sudo dpkg -i имя_пакета.deb
Для того, чтобы команда успешно выполнилась, в системе должны присутствовать все зависимости устанавливаемого пакета, поскольку не умеет их разрешать и скачивать что-либо из репозиториев. Можно так же ставить несколько пакетов за раз, передавая их все как аргументы команде . Больше я пожалуй ничего про рассказывать не буду, да и вряд ли вам как-либо ещё понадобится использовать эту утилиту.
Устройство репозитория
Пример записи в файле Packages для пакета :
Package: abiword Priority: optional Section: gnome Installed-Size: 7808 Maintainer: Ubuntu Core Developers <[email protected]> Original-Maintainer: Masayuki Hatta (mhatta) <[email protected]> Architecture: i386 Version: 2.6.6-0ubuntu1 Replaces: abiword-gnome Provides: abiword-gnome Depends: libaiksaurus-1.2-0c2a (>= 1.2.1+dev-0.12), libaiksaurusgtk-1.2-0c2a (>= 1.2.1+dev-0.12), libart-2.0-2 (>= 2.3.18), libatk1.0-0 (>= 1.20.0), libc6 (>= 2.7), libcairo2 (>= 1.2.4), libenchant1c2a (>= 1.4.2), libexpat1 (>= 1.95.8), libfontconfig1 (>= 2.4.0), libfreetype6 (>= 2.3.5), libfribidi0 (>= 0.10.9), libgcc1 (>= 1:4.1.1), libglade2-0 (>= 1:2.6.1), libglib2.0-0 (>= 2.18.0), libgnomecanvas2-0 (>= 2.11.1), libgnomeprint2.2-0 (>= 2.17.0), libgnomeprintui2.2-0 (>= 2.17.0), libgsf-1-114 (>= 1.14.11), libgtk2.0-0 (>= 2.15.0), libice6 (>= 1:1.0.0), libidn11 (>= 0.5.18), libjpeg62, libloudmouth1-0 (>= 1.1.4-2), libncurses5 (>= 5.6+20071006-3), libots0, libpango1.0-0 (>= 1.22.0), libpng12-0 (>= 1.2.13-4), libpopt0 (>= 1.14), libreadline5 (>= 5.2), librsvg2-2 (>= 2.22.3), libsm6, libstdc++6 (>= 4.2.1), libwmf0.2-7 (>= 0.2.8.4), libwpd8c2a, libwpg-0.1-1, libwv-1.2-3 (>= 1.2.4), libx11-6, libxft2 (>> 2.1.1), libxml2 (>= 2.6.27), zlib1g (>= 1:1.1.4), abiword-common (>= 2.6.6-0ubuntu1), gsfonts Recommends: abiword-plugin-grammar, abiword-plugin-mathview, abiword-help, aspell-en | aspell-dictionary, poppler-utils Suggests: abiword-plugin-goffice Conflicts: abiword-gnome Filename: pool/main/a/abiword/abiword_2.6.6-0ubuntu1_i386.deb Size: 2969028 MD5sum: f70817557ecbf4183b498fd98051ec03 SHA1: 8c666220527fe78328b5f94fec93fd62eddd332f SHA256: 47de1dcf28866a33c0e4baefadb2d29ff9046ba4e4ae6e600801e5e3a6ec40c7 Description: efficient, featureful word processor with collaboration AbiWord is a full-featured, efficient word processing application. It is suitable for a wide variety of word processing tasks, and is extensible with a variety of plugins. . This package includes many of the available import/export plugins allowing AbiWord to interact with ODT, WordPerfect, and other formats. It also includes tools plugins, offering live collaboration with AbiWord users on Linux and Windows (using TCP or Jabber/XMPP), web translation and dictionary support, and more. . Additional plugins that require significant amounts of extra software to function are in the various abiword-plugin-* packages. Homepage: http://www.abisource.com/ Bugs: https://bugs.launchpad.net/ubuntu/+filebug Origin: Ubuntu Task: xubuntu-desktop
Файлов Packages.gz может быть несколько (например, по одному для каждой архитектуры). Файл Release содержит описание репозитория в целом и ссылки на различные Packages.gz
Общая же схема работы выглядит примерно так:
- Пользовательский компьютер подключается к репозиторию, и при наличии защиты, проверяет его истинность (см. главу ).
- Читает файл Release, находит и скачивает необходимые Packages.gz
- На основе скачанных Packages.gz обновляет локальную базу данных пакетов.
- Теперь пользовательский компьютер «знает» где находится тот или иной пакет и при необходимости легко может его скачать и установить.
Просматриваем список установленных пакетов в Ubuntu
В Ubuntu присутствует и графический интерфейс, реализованный по умолчанию на оболочке Gnome, а также есть привычный «Терминал», через который осуществляется управление всей системой. Через два этих составляющих доступен просмотр перечня добавленных компонентов. Выбор оптимального способа зависит только от самого пользователя.
Способ 1: Терминал
В первую очередь внимание хотелось бы обратить именно на консоль, поскольку присутствующие в ней стандартные утилиты позволяют задействовать всю функциональность по максимуму. Что же касается отображения списка всех объектов, выполняется это достаточно легко:
- Откройте меню и запустите «Терминал». Делается это также зажатием горячей клавиши Ctrl + Alt + T.
Используйте стандартную команду с аргументом , чтобы вывести на экран все пакеты.
С помощью колесика мышки перемещайтесь по списку, просматривая все найденные файлы и библиотеки.
Добавьте к dpkg -l еще одну команду, чтобы осуществить поиск определенного значения по таблице. Выглядит строка так: , где java — имя необходимого для поиска пакета.
Найденные подходящие результаты будут подсвечены красным цветом.
Используйте , чтобы получить информацию обо всех файлах, установленных через этот пакет (apache2 — название пакета для поиска).
Появится список всех файлов с их расположением в системе.
Если вы хотите узнать, каким пакетом был добавлен определенный файл, следует ввести , где /etc/host.conf — сам файл.
К сожалению, не всем удобно использовать консоль, а также это не всегда требуется. Именно поэтому следует привести альтернативный вариант отображения списка присутствующих в системе пакетов.
Способ 2: Графический интерфейс
Конечно, графический интерфейс в Ubuntu не позволяет в полной мере проводить те же операции, которые доступны в консоли, однако визуализация кнопок и утилит значительно упрощает выполнение задачи особенно для неопытных юзеров. Сначала советуем обратиться в меню. Здесь присутствует несколько вкладок, а также сортировка на показ всех программ или только популярных. Поиск требуемого пакета может производиться через соответствующую строку.
Менеджер приложений
Подробнее: Установка Менеджера приложений в Ubuntu
- Откройте меню и запустите необходимый инструмент, нажав на его иконку.
Перейдите во вкладку «Установлено», чтобы отсеять тот софт, которого еще не имеется на компьютере.
Здесь вы видите названия ПО, краткое описание, размер и кнопку, позволяющую провести быстрое удаление.
Нажмите на название программы, чтобы перейти на ее страницу в Менеджере. Здесь осуществляется знакомство с возможностями софта, его запуск и деинсталляция.
Как видите, работа в «Менеджере приложений» проходит достаточно просто, однако функциональность этого инструмента все еще ограничена, поэтому на помощь придет более расширенный вариант.
Менеджер пакетов Synaptic
Установка дополнительного менеджера пакетов Synaptic позволит получать детальнейшую информацию обо всех добавленных программах и компонентах. Для начала все же придется воспользоваться консолью:
- Запустите «Терминал» и введите команду для установки Synaptic из официального репозитория.
Укажите свой пароль для рут-доступа.
Подтвердите добавление новых файлов.
По завершении инсталляции запустите инструмент через команду .
Интерфейс разделен на несколько панелей с различными разделами и фильтрами. Слева выбирайте подходящую категорию, а справа в таблице смотрите все установленные пакеты и подробную информацию о каждом из них.
Присутствует и функция поиска, позволяющая сразу же отыскать требуемые данные.
Ни одним из приведенных методов вам не удастся найти пакет, во время инсталляции которого произошли определенные ошибки, поэтому внимательно следите за появляющимися уведомлениями и всплывающими окнами во время распаковки. Если же все попытки завершились провалом, значит искомый пакет отсутствует в системе или имеет другое наименование. Сверьте название с тем, что указано на официальном сайте, и попробуйте переустановить программу.
Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.
Просмотр информации о пакетах
1. Список установленных пакетов:
yum list —installed
2. Получение зависимостей для пакета:
yum deplist <имя пакета>
Например:
yum deplist nginx
* покажет, какие пакеты или библиотеки необходимы для установки nginx. Дополнительно, могут быть указаны пакеты, которые нужны для удовлетворения зависимостей.
3. Посмотреть список файлов внутри установочного пакета.
Мы можем посмотреть данный список для уже установленного пакета:
rpm -ql <имя установленного пакета>
Например:
rpm -ql nginx
Или из установочного файла:
rpm -qlp <путь до RPM-пакета>
Например:
rpm -qlp nginx.rpm
4. Посмотреть, какой пакет предоставляет определенный файл:
yum provides audit-libs-python
В данном примере мы получим ответ:
audit-libs-python-2.8.5-4.el7.x86_64 : Python bindings for libaudit
Repo : base
Это значит, что audit-libs-python содержится в пакете audit-libs-python-2.8.5-4.el7.x86_64, который в свою очередь, находится в репозитории base.
Можно также выполнять поиск по маске:
yum provides audit-libs-*
Подключение репозиториев Debian из закрытой сети
В ситуации, когда репозиторий Debian доступен через прокси (зеркало), а сервер ключей при этом недоступен, ключи репозитория можно отдельно получить с сервера keys.gnupg.net (или с сервера keyserver.ubuntu.com).Сервер ключей обеспечивает поиск ключа по отпечатку ключа, и предоставляет возможность сохранить ключ в обычный текстовый файл. Сохранённые файлы ключей следует скопировать на компьютер, на котором должна выполняться установка пакетов, и установить ключи из скопированного файла:
sudo apt-key add ИМЯ_ФАЙЛА_С_КЛЮЧОМ |
Сценарий создания собственного простого репозитория
Данный сценарий позволяет создать собственный репозиторий из произвольного набора ранее скачанных пакетов формата deb (двоичных пакетов Debian). Сценарий позволяет указать в качестве аргумента вызова код дистрибутива (orel, smolensk и т.д.) для создания репозитория, если никакая версия не указана — то используется код текущей системы. Репозиторий создаётся в текущем каталоге. Дополнительно после завершения создания репозитория в текущем каталоге создаётся файл со строкой-ссылкой на созданный репозиторий для списка источников пакетов.
Порядок применения:
-
Установить необходимые для создания репозитория пакеты, если они не были установлены ранее:
sudo apt install dpkg-dev apt-utils
-
Создать каталог, в котором будет размещён репозиторий, и перейти в этот каталог, например:
sudo mkdir /opt/repo
cd /opt/repo
-
Сохранить сценарий в файле с именем, например, create-flat-repo:
#!/bin/bash
CODENAME=»${1:-`sed -n «s/^DISTRIB_CODENAME=//p» /etc/lsb-release`}»if ; then echo «Имя дистрибутива не определено, укажите вручную как аргумент команды» exit 1else echo «Имя дистрибутива определено как \»$CODENAME\»»fi
V=1.0
ARCH=$(dpkg-architecture -q DEB_BUILD_ARCH)
mkdir -p dists/$CODENAME/main/binary-$ARCH
dpkg-scanpackages -a $ARCH . > dists/$CODENAME/main/binary-$ARCH/Packages
echo -e «Origin: Debian\nSuite: unstable\nCodename: $CODENAME\nVersion: $V\nArchitectures: $ARCH\nComponents: main» > dists/$CODENAME/Releaseapt-ftparchive release . >> dists/$CODENAME/Release
dpath=$(readlink -f .)
echo deb file:$dpath $CODENAME main > $CODENAME.list#echo deb file:$dpath $CODENAME main > /etc/apt/sources.list.d/$CODENAME.list
-
Разрешить выполнение созданного файла:
sudo chmod +x create-flat-repo
-
Скопировать (загрузить) в текущий каталог пакеты .deb, которые предполагается включить в создаваемый репозиторий;
-
Выполнить сценарий:
sudo ./create-flat-repo
-
По необходимости переместить или скопировать созданный файл .list в каталог списков источников пакетов /etc/apt/sources.list.d/ и обновить списки пакетов:
sudo cp *.list /etc/apt/sources.list.d/
sudo apt update
После выполнения указанных операций установку пакетов из созданного репозитория можно будет выполнять стандартной командой:
sudo apt install имя_пакета |
Давайте посмотрим это с примером:
У меня есть версия precise , но я отключил это для демонстрации
Вот файл , который используйте для решения, который должна выбрать версия, которая это, если существует много версий единственного packge. (В этом примере, имеет несколько версий.
Package: * Pin: origin "" Pin-Priority: 1001
Этот файл говорит устанавливать от локального репозитория для всех пакетов, которые имеют несколько версий, существует в другом репозитории.
Другими словами, если у меня есть пакет с версией в моем локальном репозитории и этом том же пакете существует в репозитории Precise со старшей версией, сказать , предпочтет версию от локального репозитория, т.е. версию .
Вот мой файл
deb http://archive.ubuntu.com/ubuntu precise main universe restricted multiverse deb-src http://archive.ubuntu.com/ubuntu precise universe main multiverse restricted #Added by software-properties deb http://security.ubuntu.com/ubuntu/ precise-security universe main multiverse restricted deb http://archive.ubuntu.com/ubuntu precise-updates universe main multiverse restricted deb http://archive.ubuntu.com/ubuntu precise-backports universe main multiverse restricted # deb http://archive.canonical.com/ubuntu precise partner #deb-src http://archive.canonical.com/ubuntu precise partner # deb http://extras.ubuntu.com/ubuntu precise main # deb-src http://extras.ubuntu.com/ubuntu precise main deb file:/media/Main/Linux-Software/Ubuntu/Oneiric / #this is oneiric repository. deb file:/media/Main/Linux-Software/Ubuntu/Natty/natty / deb file:/media/Main/Linux-Software/Ubuntu/Natty/kubuntu / deb file:/media/Main/Linux-Software/Ubuntu/Natty/natty_new /
Хотя, я перечислил репозиторий precise ранее в файле, он не вызывает выбрать пакет из того репозитория. Как описано в руководстве
Так, вывод команды был как ожидалось как ниже
anwar@edubuntu-lenovo:/etc/apt$ apt-cache policy compiz-fusion-plugins-extra compiz-fusion-plugins-extra: Installed: (none) Candidate: 0.9.5.94-0ubuntu1 / **selecting lower versions for priority** / Version table: 0.9.7.0~bzr9-0ubuntu6 0 500 http://archive.ubuntu.com/ubuntu/ precise/universe i386 Packages 0.9.5.94-0ubuntu1 0 1001 file:/media/Main/Linux-Software/Ubuntu/Oneiric/ Packages 0.9.4-0ubuntu3 0 1001 file:/media/Main/Linux-Software/Ubuntu/Natty/natty/ Packages
Здесь, новая версия , (который находится в локальном репозитории), нет , который находится в репозитории конспектов. хотя конспекты каждый был перечислен сначала в файл.
Выполнение в качестве примера попытка установить после установки самого высокого приоритета к локальному репозиторию.
3.4 Обновление пакетов
Обновления пакетов — это конек системы APT. Это может быть сделано одной
командой: apt-get upgrade. Вы можете использовать эту команду для
обновления пакетов в том же самом дистрибутиве, равно как и при обновлении
существующего дистрибутива до нового, хотя для последнего действия
предназначена команда apt-get dist-upgrade; см. подробности в
разделе .
Эту команду полезно запускать с опцией -u. Эта опция заставляет
APT показывать полный список пакетов, предназначенных для обновления. Без нее
вы будете обновляться вслепую. APT последние версии каждого из пакетов и
установит их в правильном порядке
Поэтому очень важно запустить перед этим
apt-get update. См
раздел . Вот пример:
@[/] # apt-get -u upgrade Reading Package Lists... Done Building Dependency Tree... Done The following packages have been kept back cpp gcc lilo The following packages will be upgraded adduser ae apt autoconf debhelper dpkg-dev esound esound-common ftp indent ipchains isapnptools libaudiofile-dev libaudiofile0 libesd0 libesd0-dev libgtk1.2 libgtk1.2-dev liblockfile1 libnewt0 liborbit-dev liborbit0 libstdc++2.10-glibc2.2 libtiff3g libtiff3g-dev modconf orbit procps psmisc 29 packages upgraded, 0 newly installed, 0 to remove and 3 not upgraded. Need to get 5055B/5055kB of archives. After unpacking 1161kB will be used. Do you want to continue? [Y/n]
Процесс очень прост
Обратите внимание, что в первых строках
apt-get говорит, что некоторые пакеты были kept back.
Это означает, что новые версии некоторых пакетов не будут установлены по
некоторым причинам. Возможными причинами могут быть битые зависимости (пакет,
от которого он зависит не доступен для скачивания) или новые зависимости (пакет
последней версии зависит от новых пакетов).
В первом случае прозрачного решения не существует. Для второго случая, должна
помочь команда apt-get install для указанного в вопросе пакета,
так ка это приведет к скачиванию зависимости. Даже более прозрачное решение
сосотоит в использовании dist-upgrade. См. раздел .
Репозитории
Команда yum/dnf использует репозитории для своей работы
Очень важно понять, как с ними работать в системе. Конфиги репозиториев CentOS описывают пути, по которым система может брать установочные файлы для пакетов, а также правила работы с самими репозиториями
Примеры команд для управления репозиториями
1. Просмотр репозиториев.
Список включенных репозиториев:
yum repolist
Список включенных и отключенных репозиториев:
yum repolist all
Также мы можем получить подробное описание для каждого включенного репозитория:
yum repolist -v
Список отключенных репозиториев можно посмотреть отдельно командой:
yum repolist disabled
2. Добавление репозитория командой.
Для добавления репозитория мы можем воспользоваться командой yum-config-manager, для этого сначала нужно установить yum-utils:
yum install yum-utils
Теперь вводим:
yum-config-manager —add-repo <репозиторий>
Например:
yum-config-manager —add-repo https://yum.mariadb.org/10.5/centos8-amd64
* на основе ссылки https://yum.mariadb.org/10.5/centos8-amd64 будет добавлен репозиторий.
3. Добавление репозитория через файл.
Также мы можем создать конфигурационный файл с описанием репозитория. Все файлы находятся в каталоге /etc/yum.repos.d. Например, создадим файл с добавлением репозитория mariadb:
vi /etc/yum.repos.d/mariadb.repo
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/centos8-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
enabled=1
* где:
- name — произвольное имя репозитория.
- baseurl — путь, по которому система может забирать пакеты из репозитория.
- gpgkey — путь до открытого gpg-ключа. Нужен для проверки цифровой подписи пакетов.
- gpgcheck — нужно ли проверять цифровую подпись пакетов.
- enabled — опция включает или выключает репозиторий.
4. Временное включение и отключение репозиториев во время операций (на примере репозитория EPEL).
Отключить во время обновления:
yum update —disablerepo=epel
Включить во время обновления:
yum update —enablerepo=epel
Отключить во время установки:
yum install —disablerepo=epel
Включить во время установки:
yum install —enablerepo=epel
5. Постоянное отключение/включение репозиториев.
Мы можем отключить наш репозиторий командой:
yum-config-manager —disable <имя репозитория>
* для выполнения данной команды мы должны установить в систему пакет yum-utils.
Например:
yum-config-manager —disable yum.mariadb.org_10.5_centos8-amd64
Разрешить репозиторий можно той же командой с опцией —enable:
yum-config-manager —enable yum.mariadb.org_10.5_centos8-amd64
Также мы можем выполнить настройку в конфигурационном файле, например:
vi /etc/yum.repos.d/mariadb.repo
Находим:
enabled=1
… и меняем на:
enabled=0
* в данном примере 1 разрешает репозиторий, а 0 запрещает.
6. Настройка опций.
Наши репозитории настраиваются с помощью опций, которые перечислены в конфигурационном файле. Мы можем также их задавать командой:
yum-config-manager —save —setopt=<имя репозитория>.<имя опции>=<значение>
Например:
yum-config-manager —save —setopt=mariadb.module_hotfixes=1
Обслуживание
1. Удалить кэш для списков пакетов в репозиториях, а также загруженные исходники для пакетов:
yum clean —enablerepo=* all
Также мы можем удалить кэш только для определенных репозиториев, например:
yum clean all —disablerepo=»*» —enablerepo=»epel,nginx-thirdparty»
* обязательно, сначала должен следовать disablerepo, после enablerepo.
2. Сформировать кэш списков пакетов в репозиториях:
yum makecache
dnf: Red Hat / CentOS / Fedora и производные
Наконец, в дистрибутивах на основе Fedora yum или dnf будут использоваться. Чтобы отменить обновление пакета и вернуться к предыдущей версии с пониженной версией, вы можете использовать следующие команды:
В этом случае первым делом нужно будет увидеть предыдущие версии пакета, который вы пытаетесь установить в репозитории DNF. В нашем примере вы можете использовать эту команду для получения списка:
sudo dnf --showduplicates list firefox
Теперь, когда вы внимательно посмотрите на имя версия, которую вы хотите установить, вам просто нужно скопировать его из данных, выданных в выводе предыдущей команды, и вставить в следующую. Например:
<pre>sudo dnf install firefox-57.3.fc28</pre>
Вы также можете использовать снимки или снимки вернуться к предыдущим версиям. Для этого вы можете использовать следующие команды, которые они будут делать, соответственно, получать историю, затем получать информацию о транзакции из истории с ее идентификатором (что вы хотите в вашем случае), а затем возвращаться к статусу этой транзакции с указанием идентификатора (в нашем примере 32):
sudo dnf history sudo dnf history info 32 sudo dnf history undo 32
Я надеюсь, что это руководство помогло вам решить проблемы, которые новая версия программного пакета вызвала у вас в вашем любимом дистрибутиве. Вы уже знаете, что можете оставить свой комментарии с вопросами или предложениями…
Архив репозиториев для старых версий
В официальном репозитории Debian располагаются пакеты для текущего релиза (stable), для прошлого релиза (oldstable) и для будущего релиза (testing). Для всех старых релизов репозитории отправляются в архив — http://archive.debian.org/debian/, который заморожен. Обновлений к релизам из архива больше нет. Но если вам по какой-то причине нужен репозиторий для старой версии Debian, вы можете им воспользоваться.
Ниже представляю готовые настройки репозиториев для прошлых версий.
Debian 9 stretch
Репозитории Debian 9 stretch пока еще находятся в основных репозиториях:
deb http://deb.debian.org/debian stretch main deb-src http://deb.debian.org/debian stretch main deb http://deb.debian.org/debian-security/ stretch/updates main deb-src http://deb.debian.org/debian-security/ stretch/updates main deb http://deb.debian.org/debian stretch/updates main deb-src http://deb.debian.org/debian stretch/updates main
В скором времени они тоже переедут в архив. Случится это в июне 2022 года, когда кончится период длительной поддержки. Тогда их можно будет подключить по следующим адресам:
deb http://archive.debian.org/debian/ stretch main non-free contrib deb-src http://archive.debian.org/debian/ stretch main non-free contrib deb http://archive.debian.org/debian-security/ stretch/updates main contrib deb-src http://archive.debian.org/debian-security/ stretch/updates main contrib
Debian 8 jessie
Репозитории Debian 8 jessie:
deb http://archive.debian.org/debian/ jessie main non-free contrib deb-src http://archive.debian.org/debian/ jessie main non-free contrib deb http://archive.debian.org/debian-security/ jessie/updates main contrib deb-src http://archive.debian.org/debian-security/ jessie/updates main contrib
Debian 7 wheezy
Репозитории Debian 7 wheezy:
deb http://archive.debian.org/debian/ wheezy main non-free contrib deb-src http://archive.debian.org/debian/ wheezy main non-free contrib deb http://archive.debian.org/debian-security/ wheezy/updates main contrib deb-src http://archive.debian.org/debian-security/ wheezy/updates main contrib
Debian 6 squeeze
Репозитории Debian 6 squeeze:
deb http://archive.debian.org/debian/ squeeze main non-free contrib deb-src http://archive.debian.org/debian/ squeeze main non-free contrib deb http://archive.debian.org/debian-security/ squeeze/updates main contrib deb-src http://archive.debian.org/debian-security/ squeeze/updates main contrib