MyTetra Share
Делитесь знаниями!
Как узнать из какого репозитария был установлен пакет с заданным именем?
Время создания: 03.06.2025 12:30
Текстовые метки: linux, debian, пакет, deb, установлен, указанное, заданное, имя, репозитарий, место
Раздел: Компьютер - Linux - Инсталляция программ - Пакетный менеджер APT: apt-get и прочее
Запись: xintrea/mytetra_syncro/master/base/1748943018ulovoqqgqr/text.html на raw.github.com

В Debian Linux можно определить источник установки пакета (репозиторий) несколькими способами.



Просмотр через apt-cache policy (рекомендуемый способ)


Можно воспользоваться командой:



apt-cache policy <имя_пакета>



Пример вывода:



postgresql:

Установлен: 14+238.pgdg110+1

Кандидат: 14+238.pgdg110+1

Таблица версий:

*** 14+238.pgdg110+1 500

500 http://apt.postgresql.org/pub/repos/apt bullseye-pgdg/main amd64 Packages

100 /var/lib/dpkg/status



Здесь видно, что пакет установлен из репозитория http://apt.postgresql.org/pub/repos/apt.



Просмотр через apt show


Эта команда так же может помочь, и ее очень легко запомнить (часть с grep не обязательна):



apt show <имя_пакета> | grep 'APT-Sources'



Выведет строку с URL репозитория. Если не делать grep, по-сути можно увидеть скомпонованную информацию о пакете: часть будет взята из файла Packages или Packages.gz репозитария, часть будет расчитана из других источников. Строка APT-Sources является рассчитываемой, и указывает на репозитарий, откуда произошла установка.



Просмотр через файлы /var/lib/apt/lists/


Команда:



grep -l "Package: <имя_пакета>" /var/lib/apt/lists/* | xargs ls -la



Покажет, из какого закешированного файла репозитория берется пакет. В имени кешированного файла видно название репозитария.


Так же в этом разделе:
 
MyTetra Share v.0.67
Яндекс индекс цитирования