Найдите, какой пакет содержит определенный файл в Ubuntu 20.04 LTS

У Ubuntu много пакетов в официальном репозитории пакетов. Очень сложно найти пакет, который нужно установить, если вы не знаете точное имя пакета программного обеспечения/инструмента, который вы пытаетесь установить. Это становится еще сложнее, если вы хотите выяснить, какой пакет установить, чтобы получить конкретный файл (например, /etc/apache2/apache2.conf ) или исполняемый файл (например, /usr /bin/netstat ) в Ubuntu.

В этой статье я покажу вам, как найти точное имя пакета, который предоставляет определенный файл/исполняемый файл в Ubuntu 20.04 LTS. Итак, приступим.

Установка apt-файла:

Вы можете легко найти имя пакета, который предоставляет определенный файл/исполняемый файл в Ubuntu, используя apt-файл . apt-file доступен в официальном репозитории пакетов Ubuntu 20.04 LTS. Таким образом, его очень легко установить.

Сначала обновите кеш репозитория пакетов APT с помощью следующей команды:

$ sudo apt update

Теперь установите apt -file с помощью следующей команды:

$ sudo apt install apt-file

Чтобы подтвердить установку, нажмите Y , а затем нажмите .

apt-файл должен быть установлен.

Теперь команда apt-file должна быть доступна на вашем компьютере с Ubuntu 20.04 LTS, как вы можете видеть на снимке экрана ниже.

$ whereis apt-файл

Обновление apt-файла База данных кэша пакетов:

Как и менеджер пакетов APT, apt-file pack База данных кэша возраста также должна быть в актуальном состоянии.

Вы можете обновить базу данных кэша пакетов apt-файла с помощью следующей команды:

$ sudo apt-file update

apt- кеш файловых пакетов обновляется.

На этом этапе Кэш пакета apt-файла должен быть обновлен.

Теперь, вы готовы искать пакеты с помощью apt-файла.

Поиск пакетов с помощью apt-File:

Допустим, вам нужно скомпилировать какое-то программное обеспечение на вашем Машина Ubuntu 20.04 LTS, и для этого вам понадобится файл библиотеки libpcre.so . Но вы не знаете, какой пакет установить.

Вы можете просто искать пакеты, которые предоставляют файл библиотеки libpcre.so , как показано ниже:

$ apt-file search ‘libpcre.so’

Как видите, в списке перечислены пакеты, которые предоставляют файл библиотеки libpcre.so .

слева (перед двоеточием 🙂 перечислены имена пакетов. справа (после двоеточия 🙂 полный путь к файлу (доступный в пакете слева), который соответствует поисковому запросу ( libpcre.so в данном случае) указан.

Здесь пакет libpcre3-dev предоставляет файл библиотеки libpcre.so , как вы можете видеть на скриншоте ниже. Итак, если вам нужно файл библиотеки libpcre.so , вам нужно будет установить пакет libpcre3-dev на свой компьютер Ubuntu 20.04 LTS.

Если вам известен частичный путь к файлу, который вы ищете, вы также можете использовать это для поиска пакетов с использованием apt-файла.

Например, скажем, вы хотите использовать маршрут e в Ubuntu 20.04 LTS, которая не установлена ​​по умолчанию.

Вы знаете, что route — это команда. Таким образом, он, скорее всего, будет находиться в каталоге bin/.

Вы можете выполнить поиск по имени пакета, который обеспечивает маршрут следующим образом:

$ apt-file search ‘bin/route’

Как видите, команда маршрута (/sbin/route ) предоставляется Пакет net-tools .

По умолчанию поиск с учетом регистра включен. Таким образом, символы верхнего и нижнего регистра различаются при поиске файлов с помощью apt-file. В случае поиска без учета регистра прописные и строчные буквы совпадают.

Например, при поиске с учетом регистра libpcre.so и LibPcre.so не то же самое. Но в случае нечувствительного к регистру поиска libpcre.so и LibPcre.so одинаковы и вернут одинаковый результат.

Как видите, поиск файла LibPcre.so не дал результата.

Вы можете выполнить поиск без учета регистра, используя параметр -i следующим образом:

$ apt-file search -i ‘LibPcre.so’

Как видите, возвращается тот же результат, что и раньше (libpcre.so).

Вы также можете использовать регулярное выражение для поиска имен пакетов, используя путь к файлу/каталогу.

ПРИМЕЧАНИЕ. Регулярное выражение — это отдельная тема. Это выходит за рамки данной статьи. Проверьте другие статьи на LinuxHint, если вы хотите узнать больше о регулярных выражениях..

Например, допустим, вы хотите найти пакет, который предоставляет файл, путь которого заканчивается на bin/route .

Вы можете выполнить поиск по регулярному выражению, используя параметр -x следующим образом:

$ apt-file search -x ‘. * bin/route $ ‘

Здесь $ означает конец файла, а . * означает соответствие чему угодно. Итак, . * Bin/route $ означает соответствие любому пути, который заканчивается на bin/route , неважно, что предшествует этому.

Как видите, указано точное имя пакета.

Вывод содержимого пакета с использованием apt-файла:

Допустим, вы знаете имя пакета (т.е. net-tools). Теперь вы хотите узнать, какие файлы и каталоги предоставляет этот пакет, прежде чем устанавливать его на свой компьютер. Вы можете сделать это с помощью apt-file.

Например, чтобы вывести список файлов и каталогов пакета net-tools , выполните следующую команду:

$ apt-file list net-tools

Как видите, перечислены все файлы и каталоги пакета net-tools .

Вы также можете передать (перенаправить) вывод apt-файла в grep или egrep , чтобы отфильтровать вывод по своему усмотрению.

Например, чтобы узнать, что двоичный/исполняемый файл, который предоставляет пакет net-tools , выполните команды apt-file и grep следующим образом:

$ apt-file list net-tools | grep bin/

Как видите будут перечислены все двоичные/исполняемые файлы, предоставляемые пакетом net-tools .

Таким же образом вы можете проверить, какие файлы конфигурации предоставляет пакет (например, apache2 ).

$ apt-список файлов apache2 | grep etc/

Установка пакетов:

Если у вас есть имя пакета, который предоставляет нужный файл (ы), вы можете установить его с помощью следующей команды:

$ sudo apt install

Здесь замените на имя пакета, который вы хотите установить.

Например, чтобы установить пакет libpcre3-dev , выполните следующую команду:

$ sudo apt install libpcre3-dev

Чтобы подтвердить установку, нажмите Y , а затем нажмите .

libpcre3-dev должен быть установлен, и у вас должен быть доступ к желаемым файлам.

Итак, вот как вы находите, какие пакеты предоставляют нужный вам файл, и устанавливаете его в Ubuntu 20.04 LTS. Спасибо, что прочитали эту статью.

Оцените статью
nanomode.ru
Добавить комментарий