Чаще всего побеждает тот, кого не принимали всерьез (Эразм Роттердамский).

Как найти пакеты по определенному файлу на Ubuntu

2 мин для чтения
FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
25 апреля 2018
Как найти пакеты по определенному файлу на Ubuntu

Это руководство поможет вам определить пакет, который владеет/предоставляет конкретный файл в вашей системе Ubuntu. Все команды этой статьи были протестированы на Ubuntu 18.04 и Ubuntu 16.04 Desktop и Server edition.

Иногда необходимо знать пакет, который добавляет файлы в вашей системе, обычно это важно для целей мониторинга и безопасности, например, для предотвращения руткитов и любой формы вторжения на ваш Linux-сервер.

Ниже приведен список команд, которые пригодятся для этой задачи.

Использование dpkg

dpkg – это инструмент управления пакетами Debian, используемый для установки, удаления, обновления и управления пакетами Debian. Вы можете использовать инструмент управления пакетами dpkg для идентификации пакета, который предоставляет файл. Возможны следующие варианты:

-S, — search: они используются для поиска имени файла из установленных пакетов.

В качестве примера давайте попробуем идентифицировать пакет, который предоставляет файл /etc/updatedb.conf.

# dpkg -S /etc/updatedb.conf
mlocate: /etc/updatedb.conf

 

Как видно, файл был записан в файловую систему с помощью пакета mlocate.

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

# dpkg -S /bin/sync
coreutils: /bin/sync

 

Если вы не знаете абсолютный путь к команде, вы можете использовать команду which, чтобы найти ее на лету.

# dpkg -S `which ping`
iputils-ping: /bin/ping

 

или

# dpkg -S $(which ping)
iputils-ping: /bin/ping

Использование apt-file

Apt-file – это инструмент командной строки Debian, который можно использовать для поиска файлов в пакетах для системы управления пакетами APT. Если вы попытаетесь выполнить команду, когда она не установлена, она попросит вас установить ее.

# apt-file search vim
The program 'apt-file' is currently not installed. You can install it by typing:
apt install apt-file

 

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

# apt-file update

 

Используйте синтаксис:

# apt-file search <file>

 

Например: Чтобы найти пакет, создавший файл /etc/nginx/nginx.conf , используйте команду:

# apt-file search /etc/nginx/nginx.conf 
nginx-common: /etc/nginx/nginx.conf

 

Из вывода видно, что файл был создан путем установки пакета nginx-common.

Использование веб-интерфейса Ubuntu Packages

Третий способ – использовать веб-интерфейс поиска Ubuntu Packages, доступный на странице пакетов Ubuntu (https://packages.ubuntu.com/) . Введите ключевое слово и нажмите на поле поиска.

Как найти пакеты по определенному файлу на Ubuntu

Вывод

Две команды apt-file и dpkg достаточны для поиска файла из пакета на Ubuntu и всех дистрибутивов Linux на базе Debian. Это может помочь вам найти пакет для повторной установки, если он поврежден из файла или отслеживает неизвестные файлы в вашей файловой системе.

 

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Просмотров: 40

Если статья понравилась, то поделитесь ей в социальных сетях:

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close