Поиск по сайту:

Как составить список установленных пакетов, принадлежащих определенной группе в Linux

Некоторое время назад мы опубликовали статью, в которой описывалось, как найти установленные приложения по установленному размеру в Linux. Сегодня мы увидим, как составить список установленных пакетов, принадлежащих к определенной группе. Как вы, возможно, уже знаете, во всех дистрибутивах Linux есть возможность установки группы пакетов одновременно. Это то, что мы называем группой пакетов. Скажем, например, группа пакетов «mate-desktop» установит все пакеты, связанные со средой рабочего стола MATE. В двух словах, группа пакетов — это набор пакетов, которые служат общей цели.

В этом кратком руководстве описывается, как составить список установленных пакетов, принадлежащих определенной группе в Linux.

Список установленных пакетов, принадлежащих определенной группе в Linux

Прежде чем тестировать эти команды, приведенные ниже, убедитесь, что вы установили несколько групп пакетов в свой компьютер Linux.

В Arch Linux и его производных:

В Arch Linux и его производных, таких как Antergos, Manjaro Linux, следующая команда отображает, что установленные пакеты принадлежат группе пакетов MATE.

sudo pacman -Qg mate

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

mate caja
mate marco
mate mate-backgrounds
mate mate-control-center
mate mate-desktop
mate mate-icon-theme
mate mate-menus
mate mate-notification-daemon
mate mate-panel
mate mate-polkit
mate mate-session-manager
mate mate-settings-daemon
mate mate-themes
mate mate-user-guide

Аналогично, следующая команда отображает, что установленные пакеты принадлежат группе пакетов LXDE.

sudo pacman -Qg lxde

Обратите внимание, что приведенные выше команды будут отображать только установленные пакеты из группы пакетов. Чтобы просмотреть список всех пакетов, принадлежащих группе, запустите:

sudo pacman -Sg lxde

Более подробную информацию можно найти на страницах руководства.

man pacman

В системах на базе RPM, таких как RHEL, CentOS, Fedora:

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

yum groups info "Web Server"

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

Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: centos.excellmedia.net
 * epel: mirror.vinahost.vn
 * extras: centos.excellmedia.net
 * updates: centos.excellmedia.net

Group: Web Server
 Group-Id: web-server
 Description: Allows the system to act as a web server, and run Perl and Python web applications.
 Mandatory Packages:
 =httpd
 Default Packages:
 =crypto-utils
 =httpd-manual
 =mod_fcgid
 =mod_ssl
 Optional Packages:
 Pound
 certmonger
 cherokee
 libmemcached
 memcached
 mod_auth_kerb
 mod_auth_mellon
 mod_auth_openidc
 mod_fcgid
 mod_nss
 mod_revocator
 mod_security
 mod_security_crs
 moin
 perl-CGI
 perl-CGI-Session
 plone
 python-memcached
 squid
 zope

Как вы видите в приведенном выше выводе, пакеты отмечены разными символами.

  • "=" : пакет установлен и установлен как часть группы пакетов.
  • " + " : пакет не установлен, но он будет установлен при следующем обновлении yum или обновлении группы yum.
  • <div>" - ": пакет не установлен и не будет установлен как часть группы пакетов.
  • <div>нет символа: пакет установлен, но установлен вне группы пакетов. Это означает, что команда yum group удалить не удалит эти пакеты.
  • Более подробную информацию можно найти на страницах руководства.

    man yum

    В системах Debian, Ubuntu:

    В системах на базе DEB группы пакетов называются «задачами». Задачи представляют собой заранее определенные коллекции программного обеспечения.

    Чтобы просмотреть список доступных задач, запустите:

    $ tasksel --list-task

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

    u manual Manual package selection
    u kubuntu-live Kubuntu live CD
    u lubuntu-live Lubuntu live CD
    u ubuntu-gnome-live Ubuntu GNOME live CD
    u ubuntu-live Ubuntu live CD
    u ubuntu-mate-live Ubuntu MATE Live CD
    u ubuntustudio-dvd-live Ubuntu Studio live DVD
    u ubuntustudio-live Ubuntu Studio live CD
    u xubuntu-live Xubuntu live CD
    u cloud-image Ubuntu Cloud Image (instance)
    u dns-server DNS server
    u edubuntu-desktop-gnome Edubuntu desktop
    u kubuntu-desktop Kubuntu desktop
    u kubuntu-full Kubuntu full
    u lamp-server LAMP server
    u lubuntu-core Lubuntu minimal installation
    u lubuntu-desktop Lubuntu Desktop
    u mail-server Mail server
    u mythbuntu-backend-master Mythbuntu master backend
    u mythbuntu-backend-slave Mythbuntu slave backend
    u mythbuntu-desktop Mythbuntu additional roles
    u mythbuntu-frontend Mythbuntu frontend
    u postgresql-server PostgreSQL database
    u samba-server Samba file server
    u tomcat-server Tomcat Java server
    u ubuntu-desktop Ubuntu desktop
    u ubuntu-gnome-desktop Ubuntu GNOME desktop
    u ubuntu-mate-cloudtop Ubuntu MATE cloudtop
    u ubuntu-mate-core Ubuntu MATE minimal installation
    u ubuntu-mate-desktop Ubuntu MATE desktop
    u ubuntu-usb Ubuntu desktop USB
    u ubuntustudio-audio Audio recording and editing suite
    u ubuntustudio-desktop Ubuntu Studio desktop
    u ubuntustudio-desktop-core Ubuntu Studio minimal DE installation
    u ubuntustudio-font-meta Large selection of font packages
    u ubuntustudio-graphics 2D/3D creation and editing suite
    u ubuntustudio-photography Photograph touchup and editing suite
    u ubuntustudio-publishing Publishing applications
    u ubuntustudio-video Video creation and editing suite
    u virt-host Virtual Machine host
    u xubuntu-core Xubuntu minimal installation
    u xubuntu-desktop Xubuntu desktop
    i openssh-server OpenSSH server
    i server Basic Ubuntu server

    Здесь буквы 'u' и 'i' обозначают неустановленные/неустановленные и установленные задачи. Как вы видите в приведенном выше выводе, у меня есть две установленные задачи, а именно «openssh-server» и «server». Теперь вернемся к теме.

    Чтобы просмотреть пакеты, принадлежащие к каким-либо группам пакетов (т.е. задачам), например openssh-server, запустите:

    aptitude show openssh-server

    Эта команда выведет список пакетов, которые будут установлены этой задачей.

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

    Package: openssh-server 
    State: installed
    Automatically installed: no
    Multi-Arch: foreign
    Version: 1:7.2p2-4ubuntu2.1
    Priority: optional
    Section: net
    Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
    Architecture: amd64
    Uncompressed Size: 912 k
    Depends: libaudit1 (>= 1:2.2.1), libc6 (>= 2.17), libcomerr2 (>= 1.01),
     libgssapi-krb5-2 (>= 1.12.1+dfsg-2), libkrb5-3 (>= 1.13~alpha1+dfsg),
     libpam0g (>= 0.99.7.1), libselinux1 (>= 1.32), libssl1.0.0 (>= 1.0.2),
     libsystemd0, libwrap0 (>= 7.6-4~), zlib1g (>= 1:1.1.4), debconf (>=
     0.5) | debconf-2.0, init-system-helpers (>= 1.18~), lsb-base (>=
     4.1+Debian11ubuntu7), openssh-client (= 1:7.2p2-4ubuntu2.1),
     libpam-runtime (>= 0.76-14), libpam-modules (>= 0.72-9), adduser (>=
     3.9), dpkg (>= 1.9.0), procps, openssh-sftp-server
    Recommends: xauth, ncurses-term, ssh-import-id
    Suggests: ssh-askpass, rssh, molly-guard, ufw, monkeysphere
    Conflicts: sftp, ssh-socks, ssh2, openssh-server:i386
    Replaces: ssh, ssh:i386, ssh-krb5, ssh-krb5:i386
    Provides: openssh-server:i386 (= 1:7.2p2-4ubuntu2.1), ssh-server,
     ssh-server:i386
    Provided by: openssh-server:i386 (1:7.2p2-4), openssh-server:i386
     (1:7.2p2-4ubuntu2.1)
    Description: secure shell (SSH) server, for secure access from remote machines
     This is the portable version of OpenSSH, a free implementation of the Secure
     Shell protocol as specified by the IETF secsh working group. 
    [...]

    Более подробную информацию можно найти на страницах руководства:

    man apt

    В SUSE/openSUSE:

    В дистрибутивах SUSE/openSUSE группа программ называется шаблонами.

    Чтобы узнать, какие пакеты относятся к шаблону, используйте «if» или «info», как показано ниже:

    zypper if -t pattern <pattern_name>

    Или,

    zypper pattern-info <pattern_name>

    Скажем, например, следующая команда отображает, что пакеты принадлежат шаблону lamp_server.

    zypper pattern-info lamp_server

    Более подробную информацию можно найти на страницах руководства:

    man zupper

    И это все на данный момент. Теперь вы знаете, что пакеты принадлежат группе пакетов. Скоро я буду здесь с еще одним полезным руководством. Если вы найдете это руководство полезным, поделитесь им в своих социальных сетях.

    Ваше здоровье!

    Статьи по данной тематике