<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Как проверить установлен ли пакет в Linux: команды для Ubuntu, CentOS и Arch]]></title><description><![CDATA[<p dir="auto">Проверка, установлен ли пакет в Linux, - это базовая задача для любого администратора. Часто нужно быстро узнать, есть ли нужный софт, чтобы не тратить время на установку. Эти команды помогут избежать ошибок и сэкономить минуты работы.</p>
<p dir="auto">В разных дистрибутивах менеджеры пакетов отличаются, но принципы похожи. Вы разберетесь с <strong>dpkg</strong> для Ubuntu, <strong>rpm</strong> для CentOS и другими. Это решит проблемы вроде ‘пакет не найден’ или дублирующих установок.</p>
<h2>Команды для Debian/Ubuntu</h2>
<p dir="auto">В Ubuntu и других системах на базе Debian основной инструмент - <strong>dpkg</strong> и <strong>apt</strong>. Они хранят информацию обо всех пакетах и позволяют быстро проверить статус. Например, если вы разрабатываете скрипт и хотите убедиться, что <strong>gcc</strong> на месте, эти команды выдадут точный ответ с версией.</p>
<p dir="auto"><strong>dpkg -s</strong> покажет статус пакета: ‘installed’ значит все ок, иначе - нет. Альтернатива <strong>dpkg-query -l</strong> с фильтром через <strong>grep</strong> удобна для поиска по ключевому слову. А <strong>apt list --installed</strong> выведет полный список с версиями, что полезно для аудита системы. Такие методы работают стабильно даже на старых версиях Ubuntu.</p>
<p dir="auto">Вот основные команды для проверки:</p>
<ul>
<li><code>dpkg -s firefox</code> - статус конкретного пакета с деталями.</li>
<li><code>dpkg-query -l | grep gcc</code> - поиск по имени среди установленных.</li>
<li><code>apt list --installed | grep nginx</code> - список через apt с фильтром.</li>
</ul>
<p dir="auto"><em>Важно: если вывод пустой, пакет не установлен.</em></p>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Команда</th>
<th>Описание</th>
<th>Пример вывода</th>
</tr>
</thead>
<tbody>
<tr>
<td>dpkg -s &lt;пакет&gt;</td>
<td>Статус и версия</td>
<td>installed: firefox 1.0-1</td>
</tr>
<tr>
<td>dpkg-query -l &lt;пакет&gt;</td>
<td>Список с описанием</td>
<td>ii gcc 4:9.3.0</td>
</tr>
<tr>
<td>apt list --installed</td>
<td>grep &lt;пакет&gt;</td>
<td>Установленные пакеты</td>
<td>nginx/jammy,now 1.18.0</td>
</tr>
</tbody>
</table>
<h2>Проверка в RPM-системах: CentOS, Fedora, RHEL</h2>
<p dir="auto">В дистрибутивах вроде CentOS или Fedora используется <strong>rpm</strong> и его наследники <strong>yum</strong> или <strong>dnf</strong>. Эти менеджеры проверяют пакеты по базе RPM. Представьте: сервер на RHEL, нужно срочно проверить <strong>chromium</strong> - rpm справится мгновенно.</p>
<p dir="auto"><strong>rpm -q</strong> - простая команда для статуса, добавьте <strong>-i</strong> для полной информации. <strong>dnf list installed</strong> удобнее для новых систем, как Fedora, и поддерживает grep. Это критично при миграциях или обновлениях, когда версии пакетов меняются. Вывод покажет дату установки в некоторых случаях.</p>
<p dir="auto">Полезные варианты:</p>
<ul>
<li><code>rpm -q chromium</code> - базовая проверка.</li>
<li><code>rpm -qi gcc</code> - детальная инфа с зависимостями.</li>
<li><code>dnf list installed | grep httpd</code> - для dnf-систем.</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Менеджер</th>
<th>Команда</th>
<th>Подходит для</th>
</tr>
</thead>
<tbody>
<tr>
<td>rpm</td>
<td>rpm -qa</td>
<td>grep &lt;пакет&gt;</td>
<td>CentOS, RHEL</td>
</tr>
<tr>
<td>yum</td>
<td>yum list installed</td>
<td>grep &lt;пакет&gt;</td>
<td>Старые RPM</td>
</tr>
<tr>
<td>dnf</td>
<td>dnf list installed</td>
<td>grep &lt;пакет&gt;</td>
<td>Fedora, новые RHEL</td>
</tr>
</tbody>
</table>
<h2>Arch Linux и другие: Pacman, Zypper</h2>
<p dir="auto">Arch и производные вроде Manjaro полагаются на <strong>pacman</strong>, а SUSE - на <strong>zypper</strong>. Эти менеджеры тоже имеют встроенные опции для проверки. Например, в Manjaro <strong>pacman -Q</strong> быстро сканирует базу, показывая версию.</p>
<p dir="auto"><strong>pacman -Q | grep &lt;пакет&gt;</strong> фильтрует локальные пакеты. Для <strong>zypper</strong> подойдет <strong>zypper search --installed-only</strong>. Такие команды полезны в минималистичных дистрибутивах, где нет лишнего софта. Они помогают поддерживать систему чистой без автозаполнения.</p>
<p dir="auto">Список команд:</p>
<ul>
<li><code>pacman -Q | grep vlc</code> - в Arch/Manjaro.</li>
<li><code>zypper search --installed-only docker</code> - для openSUSE.</li>
<li><code>pacman -Qi &lt;пакет&gt;</code> - полная информация.</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Дистрибутив</th>
<th>Команда</th>
<th>Фильтр</th>
</tr>
</thead>
<tbody>
<tr>
<td>Arch</td>
<td>pacman -Q</td>
<td>grep &lt;пакет&gt;</td>
<td>Локальные пакеты</td>
</tr>
<tr>
<td>SUSE</td>
<td>zypper se --installed-only &lt;пакет&gt;</td>
<td>Только установленные</td>
</tr>
</tbody>
</table>
<h2>Расширенные приемы для опытных</h2>
<p dir="auto">Иногда базовых команд мало: нужно файлы пакета или историю установки. <strong>dpkg -L</strong> покажет все файлы от пакета в Debian. В RPM это <strong>rpm -ql</strong>. Логи вроде /var/log/dpkg.log хранят даты установки.</p>
<p dir="auto">Для скриптов комбинируйте с <strong>grep</strong> и <strong>awk</strong>. Пример: проверка и вывод версии в один проход. Это ускоряет автоматизацию задач DevOps.</p>
<ul>
<li><code>dpkg -L nginx</code> - файлы пакета.</li>
<li><code>rpm -ql httpd</code> - аналог для RPM.</li>
<li><code>zgrep 'installed' /var/log/dpkg.log* | grep php</code> - история.</li>
</ul>
<h2>Когда команды подводят</h2>
<p dir="auto">Команды проверяют только локальную базу, а не доступные обновления. Если пакет удален с правами root или через chroot, результат может быть неверным. Подумайте о <strong>apt-mark showmanual</strong> для пользовательских пакетов или комбинации с поиском в репозиториях.</p>
<p dir="auto">В контейнерах вроде Docker база пакетов изолирована - проверяйте внутри. Это оставляет пространство для скриптов с fallback-логикой, если стандартные методы не сработали.</p>
]]></description><link>https://forum.exlends.ru/topic/945/kak-proverit-ustanovlen-li-paket-v-linux-komandy-dlya-ubuntu-centos-i-arch</link><generator>RSS for Node</generator><lastBuildDate>Wed, 20 May 2026 06:37:08 GMT</lastBuildDate><atom:link href="https://forum.exlends.ru/topic/945.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 03 Mar 2026 06:10:17 GMT</pubDate><ttl>60</ttl></channel></rss>