Gentoo Linux インストールされているパッケージを表示する
Gentoo Linux の場合、インストールされているパッケージに関する情報を表示するには、というソフトウェアが必要ですEquery
。
Equery
は、一般的な操作を簡素化するために使用されるツールですPortage
。
さらに、パッケージの依存関係、メタデータ、およびインストールされたファイルを表示できます。
インストールする方法:
Equery
app-portage/gentoolkit
パッケージを使用してインストールされるツールセットの一部です。
root # emerge --ask app-portage/gentoolkit
equery
インストールやその他のツールの詳細については、 Gentoolkit の記事を参照してください。
使い方:
導入:
equery
equery
モジュール システムに基づいて、システムにインストールされているソフトウェア パッケージに関する有用な情報を表示するツールです。
各モジュールには省略名が付いています。
たとえば、 run はequery l gcc
run と同じですequery list gcc
。
--help
options( )を呼び出すと、equery --help
グローバル オプションが出力され、使用可能なすべてのモジュールがその短縮名とともにリストされます。
モジュール名を末尾 ( equery --help module
) に追加すると、その特定のモジュールのヘルプ情報が表示されます。
この実装では、man equery
利用可能なすべてのモジュールとオプションの詳細な説明と、いくつかの有用な例も提供します。
以下は、ほとんどのモジュールで利用できる機能のリストです。
user $ equery --quiet list gcc
sys-devel/gcc-4.3.2-r3
user $ equery --quiet list sys-devel/gcc
sys-devel/gcc-4.3.2-r3
user $ equery --quiet list '>=sys-devel/gcc-4'
sys-devel/gcc-4.3.2-r3
同様emerge
に、equery
パッケージ名の一部が理解できません:
user $ equery check zilla
!!! No package found matching zilla
とは異なりemerge
、同様のワイルドカードをequery
カテゴリ名またはパッケージ名で使用できます。shell
user $ equery check '*zilla*'
- Checking www-client/mozilla-firefox-3.0.14 ...
90 out of 90 files passed
user $ equery check 'www-c*/*'
- Checking www-client/links-2.2 ...
30 out of 30 files passed
- Checking www-client/mozilla-firefox-3.0.14 ...
90 out of 90 files passed
ほとんどのequery
モジュールは複数の入力を受け入れます。
user $ equery hasuse sse sse2
- Searching for USE flag sse ...
[IP-] [ ] media-libs/flac-1.2.1-r3 (0)
[IP-] [ ] media-libs/speex-1.2_beta3_p2 (0)
- Searching for USE flag sse2 ...
[IP-] [ ] dev-libs/openssl-0.9.8k (0)
[IP-] [ ] x11-libs/pixman-0.16.0 (0)
一部のモジュールでは完全な正規表現も使用できます。
user $ equery -q list --portage-tree --full-regex '[kr]?flickr.*'
dev-dotnet/flickrnet-bin-2.2
dev-ruby/flickr-1.0.2-r1
dev-ruby/flickr-1.0.2-r2
dev-ruby/rflickr-20060201
media-gfx/kflickr-0.6
[...]
注:
ワイルドカードのサポートは、equery
の古いオプションの多くを置き換えます。例えば、
コレクション内のすべてのパッケージに対して操作を実行するには、
'*'
(アスタリスク) を使用します。カテゴリ内のすべてのパッケージに対して操作を実行するには、 を使用します
'category-name/*'
。
警告:特殊文字
を使用する場合、shell
たとえば、アスタリスク、大なり記号、小なり記号などです。引用符で囲むことを忘れないでください。
さまざまなequery
モジュールについては、このドキュメントの次のセクションで簡単に説明します。
関数:
equery
の全機能を確認するには、パラメータを指定せずに実行してください。
user $ equery
Gentoo package query tool
Usage: equery [global-options] module-name [module-options]
modules (short name)
(b)elongs list what package FILES belong to
(c)hanges list changelog entries for ATOM
chec(k) verify checksums and timestamps for PKG
(d)epends list all packages directly depending on ATOM
dep(g)raph display a tree of all dependencies for PKG
(f)iles list all files installed by PKG
h(a)s list all packages for matching ENVIRONMENT data stored in /var/db/pkg
(h)asuse list all packages that have USE flag
ke(y)words display keywords for specified PKG
(l)ist list package matching PKG
(m)eta display metadata about PKG
(s)ize display total size of all files owned by PKG
(u)ses display USE flags for PKG
(w)hich print full path to ebuild for PKG
コマンドエイリアス ( Aliases
)
equery
使用される一般的な方法は、コマンド エイリアス( ) を作成することですaliases
。
bash
これらのエイリアス ( ) は、使用時に ファイル内にaliases
配置できます 。~/.bashrc
書類 ~/.bashrc
alias eqf='equery f'
alias equ='equery u'
alias eqh='equery h'
alias eqa='equery a'
alias eqb='equery b'
alias eql='equery l'
alias eqd='equery d'
alias eqg='equery g'
alias eqc='equery c'
alias eqk='equery k'
alias eqm='equery m'
alias eqy='equery y'
alias eqs='equery s'
alias eqw='equery w'
ファイルがどのパッケージからのものかを検索します: belongs
( b
)
user $ equery belongs -e /usr/bin/glxgears
- Searching for /usr/bin/glxgears ...
x11-apps/mesa-progs-7.5.1 (/usr/bin/glxgears)
belongs
-f
正規表現に一致するファイルを検索するオプションを使用できます。
-e
このオプションは、一致が見つかった後に検索を停止します。これは、システム上のファイルが 2 つのパッケージによって所有されるべきではないため、安全な操作です。
belongs
( ) の短縮バージョンも使用できますb
。
たとえば、equery
それが属するパッケージを一覧表示するには、次のようにします。
user $ equery b equery
- Searching for equery ...
app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib/python-exec/python2.7/equery)
app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python3.3/site-packages/gentoolkit/test/equery)
app-portage/gentoolkit-0.3.0.8-r2 (/usr/bin/equery -> ../lib/python-exec/python-exec2)
app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python2.7/site-packages/gentoolkit/equery)
app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib/python-exec/python3.3/equery)
app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python2.7/site-packages/gentoolkit/test/equery)
app-portage/gentoolkit-0.3.0.8-r2 (/usr/lib64/python3.3/site-packages/gentoolkit/equery)
エントリの表示ChangeLog
: changes
( c
)
changes
ユーザーは、パッケージの指定されたバージョンまたはバージョンの範囲のエントリを表示できますChangeLog
。
これを実行した後emerge --sync
、Portage
アップグレードが間もなく行われることを示すメッセージが出力されると想像してください。
何が変更されたかを確認するには、次のコマンドを使用できます。
user $ equery changes portage
*portage-2.1.6.13 (03 May 2009)
03 May 2009; Zac Medico <[email protected]> +portage-2.1.6.13.ebuild:
2.1.6.13 bump. This fixes bug #268398 (document econf automatic die)
and bug #267104 (handle insufficient space interaction with userfetch).
Bug #268228 tracks all bugs fixed since 2.1.6.11.
パッケージの整合性を確認します: check
( k
)
場合によっては、パッケージの整合性をチェックすると便利です。
equery
値とタイムスタンプを確認するMD5
ことで、パッケージが破損、置換、または削除されたかどうかを確認できます。
user $ equery check gentoolkit
- Checking app-portage/gentoolkit-0.3.0_rc7 ...
71 out of 71 files passed
このパッケージに依存するすべてのパッケージをリストします: depends
( d
)
なぜ特定のパッケージがシステムにインストールされているのか疑問に思ったことはありますか?
equery
どのパッケージがそれを依存関係としてリストしているかを知ることができます depends
。
このオプションには間接的な依存関係を含めます -D
。
なぜ特定のパッケージがシステムにインストールされているのか疑問に思ったことはありますか?
equery
このパッケージに依存するパッケージをリストするために使用しますdepends
。
-D
[間接的な依存関係を表示] オプションを使用します。
user $ equery depends pygtk
- Searching for pygtk ...
app-admin/pessulus-2.24.0 (>=dev-python/pygtk-2.6.0)
app-editors/gedit-2.24.3 (python ? >=dev-python/pygtk-2.12)
dev-libs/libgweather-2.24.3 (python ? >=dev-python/pygtk-2)
dev-python/gnome-python-base-2.22.3 (>=dev-python/pygtk-2.10.3)
dev-python/gnome-python-desktop-base-2.24.1 (>=dev-python/pygtk-2.10.3)
[...]
2 番目の例では、直接依存するudev
パッケージをすべてリストします。
user $ equery d udev
sys-auth/consolekit-0.4.5_p20120320 (acl ? >=sys-fs/udev-146-r1)
sys-fs/cryptsetup-1.4.1 (>=sys-fs/udev-124)
(>=sys-fs/udev-182[static-libs])
(<=sys-fs/udev-171-r6)
sys-fs/lvm2-2.02.88 (>=sys-fs/udev-151-r4)
virtual/dev-manager-0 (sys-fs/udev)
x11-libs/cairo-1.10.2-r2 (drm ? >=sys-fs/udev-136)
補足:この出力には、フラグによって制御されるオプションの依存関係が
含まれます。USE
つまり、上記
(acl ? >=sys-fs/udev-146-r1)
ではacl
USE
、フラグが有効になっていない場合でも
USE
。
USE
フラグがアクティブな場合、パッケージは単なる依存関係になります。
依存関係グラフを取得: depgraph
( g
)
depgraph
対照的に、特定のパッケージのすべての依存関係が(そのパッケージに依存する ebuild ではなく)depends
検索されます。ebuild
依存関係が見つかると、パッケージの依存関係が再帰的に検索されます。
オプションを使用して--depth
ツリーの深さを制御します。
user $ equery depgraph mozilla-firefox
- Searching for mozilla-firefox ...
- dependency graph for www-client/mozilla-firefox-2.0.0.19:
`-- www-client/mozilla-firefox-2.0.0.19 `-- virtual/jre-1.6.0 (virtual/jre) [java]
`-- virtual/jdk-1.6.0 (virtual/jdk-1.6.0*) `-- dev-java/icedtea6-bin (unable to resolve: package masked or removed)
`-- dev-java/sun-jdk-1.6.0.15 `-- dev-java/java-sdk-docs-1.6.0.10 [doc]
`-- app-arch/unzip-6.0-r1 `-- app-arch/bzip2-1.0.5-r1 [bzip2]
`-- sys-libs/glibc-2.9_p20081201-r2 `-- sys-devel/gettext-0.17 [nls]
`-- virtual/libiconv-0 (virtual/libiconv)
[...]
set の場合java
USE
、jre
それは直接的な依存関係とjdk
間接的な依存関係であることに注意してください。
パッケージによってインストールされたファイルをリストします: files
( f
)
equery
モジュールを使用するとfiles
、インストールされているすべてのファイルを一覧表示できますebuild
。
--tree
読みやすい目次レイアウトを作成してください。
--filter
特定の種類のファイルを指定するには、「検索」を使用します。
たとえば、実行可能ファイルがインストールされている場所を見つけるには を使用し--filter=cmd
、構成ファイルの場所をすばやく見つけるには を使用してみてください--filter=conf
。
user $ equery files --tree gentoolkit
* Searching for gentoolkit ...
* Contents of app-portage/gentoolkit-0.3.0_rc7:
/etc
> /eclean
+ distfiles.exclude
+ packages.exclude
> /env.d
+ 99gentoolkit-env
> /revdep-rebuild
+ 99revdep-rebuild
/usr
> /bin
+ eclean
+ eclean-dist -> eclean
+ eclean-pkg -> eclean
+ epkginfo
+ equery
+ eread
+ euse
+ glsa-check
+ revdep-rebuild
> /lib
> /python2.6
> /site-packages
> /gentoolkit
+ gentoolkit-0.3.0_rc7-py2.6.egg-info
+ __init__.py
> /equery
+ __init__.py
+ belongs.py
+ changes.py
+ check.py
+ depends.py
+ depgraph.py
+ files.py
[...]
インストールされているすべてのファイルをリストする別の例media-sound/ncmpcpp
:
user $ equery f ncmpcpp
- Searching for ncmpcpp ...
- Contents of media-sound/ncmpcpp-0.5.10:
/usr
/usr/bin
/usr/bin/ncmpcpp
/usr/share
/usr/share/bash-completion
/usr/share/bash-completion/ncmpcpp
/usr/share/doc
/usr/share/doc/ncmpcpp-0.5.10
/usr/share/doc/ncmpcpp-0.5.10/AUTHORS.bz2
/usr/share/doc/ncmpcpp-0.5.10/NEWS.bz2
/usr/share/doc/ncmpcpp-0.5.10/config.bz2
/usr/share/doc/ncmpcpp-0.5.10/keys.bz2
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/ncmpcpp.1.bz2
equery
man page
他のモジュールとコマンドラインパラメータの説明については、 ( )を参照してくださいman equery
。
USE
特定のフラグを持つパッケージを探します: hasuse
( h
)
hasuse
指定されたフラグを持つUSE
パッケージを検索するために使用できます。
hasuse
フラグが有効かどうかは示されません。
クエリフラグをオプションとして含むリストを出力するだけですebuild
。
この種の情報を取得するためのヒントの詳細については、equery
マニュアル ページの「例」セクションを参照してくださいhasuse
。
user $ equery hasuse qt3 qt4
- Searching for USE flag qt3 ...
[IP-] [ ] app-crypt/pinentry-0.7.5 (0)
[IP-] [ ] net-dns/avahi-0.6.24-r2 (0)
[IP-] [ ] net-wireless/wpa_supplicant-0.6.9 (0)
- Searching for USE flag qt4 ...
[IP-] [ ] net-dns/avahi-0.6.24-r2 (0)
[IP-] [ ] net-wireless/wpa_supplicant-0.6.9 (0)
パッケージのリスト: list
( l
)
list
は、インストールされているパッケージをPortage
ツリーまたはにリストするためのシンプルですが強力なモジュールです。overlay
user $ equery list '*'
- Searching for * ...
[IP-] [ ] app-admin/eselect-1.2.3 (0)
[IP-] [ ] app-admin/eselect-ctags-1.10 (0)
[IP-] [ ] app-admin/eselect-esd-20060719 (0)
[IP-] [ ] app-admin/eselect-fontconfig-1.0 (0)
[IP-] [ ] app-admin/eselect-opengl-1.0.8-r1 (0)
[IP-] [ ] app-admin/eselect-python-20090824 (0)
[IP-] [ ] app-admin/eselect-ruby-20081227 (0)
[IP-] [ ] app-admin/eselect-vi-1.1.5 (0)
[IP-] [ ] app-admin/perl-cleaner-1.05 (0)
[IP-] [ ] app-admin/pessulus-2.24.0 (0)
[IP-] [ ] app-admin/python-updater-0.7 (0)
[IP-] [ ] app-admin/sudo-1.7.2_p1 (0)
[...]
標準クエリは、指定されたパッケージ名でインストールされているパッケージを検索します。
'*'
表示コレクション内のすべてのパッケージを渡します。
I
一番左のフィールドでは、上記のすべてのパッケージが(インストールされた) ツリーとP
(ortage) ツリーであることがわかります。
マスクされていない (2 番目のフィールドは空白)、デフォルトslot
(0) でロードされます。
ローカル オプションを使用して、Portage
ツリーoverlays
内のパッケージを検索します。
user $ equery list -po vim
- Searching for vim ...
[-P-] [ ] app-editors/vim-7.0.235 (0)
[-P-] [ ~] app-editors/vim-7.0.243 (0)
[-P-] [ ] app-editors/vim-7.1.123 (0)
[-P-] [ ~] app-editors/vim-7.1.330 (0)
[-P-] [ ] app-editors/vim-7.2 (0)
[-P-] [ ~] app-editors/vim-7.2.108 (0)
[IP-] [ ] app-editors/vim-7.2.182 (0)
[-P-] [ ~] app-editors/vim-7.2.238 (0)
[-P-] [ ~] app-editors/vim-7.2.264 (0)
インストールされているバージョンが表示されます7.2.182
が、overlay
には使用可能なバージョンがありません。
ユーザーは、 2 番目のフィールドのキーワードを使用して、~
どのバージョンがブロックされているかを確認できます。
パッケージのメタデータを表示: meta
( m
)
Portage ツリー内の各パッケージは、そのメンテナなどに関する少なくともいくつかのメタデータを提供します。
有用な情報の量は、パッケージ管理者が情報を提供する方法を決定するかどうかによって異なります。
オプションはありません。meta
いくつかの基本的な役立つ情報が返されます。
user $ equery meta gnucash
- app-office/gnucash [gentoo]
Maintainer: [email protected] (Torsten Veller)
Upstream: None specified
Location: /usr/portage/app-office/gnucash
Keywords: 2.2.9-r1:0: alpha amd64 ppc sparc x86
Keywords: 2.2.9-r2:0:
Keywords: 2.3.8:0:
Keywords: 2.3.10:0: ~alpha ~amd64 ~ppc ~sparc ~x86
一部のメンテナは、非常に役立つパッケージに関する追加情報を提供しています。
user $ equery meta --description emacs
- app-editors/emacs
GNU Emacs is an extensible, customizable text editor - and more. At its core
is an interpreter for Emacs Lisp, a dialect of the Lisp programming language
with extensions to support text editing. The features of GNU Emacs include:
- Content-sensitive editing modes, including syntax coloring, for a wide
variety of file types including plain text, source code, and HTML.
- Complete built-in documentation, including a tutorial for new users.
- Support for many languages and their scripts, including all the European
"Latin" scripts, Russian, Greek, Japanese, Chinese, Korean, Thai,
Vietnamese, Lao, Ethiopian, and some Indian scripts.
- Highly customizable, using Emacs Lisp code or a graphical customization
interface.
- A large number of extensions that add other functionality, including a
project planner, mail and news reader, debugger interface, calendar, and
more. Many of these extensions are distributed with GNU Emacs; others are
available separately.
パッケージのサイズを確認してください: size
( s
)
特定のパッケージがどれくらいのスペースを占めるか考えたことはありますか?
パッケージは複数のディレクトリにファイルを配置できるため、通常のdu -hc
コマンドでは正しい番号が得られない場合があります。
心配しないでください、equery
それはできます!
user $equery size openoffice-bin
* app-office/openoffice-bin-3.1.1
Total files : 4624
Total size : 361.38 MiB
size
使用されている合計スペースを人間が判読できる単位で印刷するオプションを使用します。
パッケージに含まれるファイルの総数をリストします。
合計サイズをバイト単位で取得するには、 を使用します--bytes
。
各パッケージのフラグをリストしますUSE
: uses
( u
)
equery
このuses
モジュールは、特定のパッケージで使用できるフラグUSE
と、現在有効になっているフラグに関する情報を提供できます。
user $ equery uses gst-plugins-meta
* Searching for gst-plugins-meta ...
[ Legend : U - flag is set in make.conf ]
[ : I - package is installed with flag ]
[ Colors : set, unset ]
* Found these USE flags for media-plugins/gst-plugins-meta-0.10-r2:
U I
+ + X : Adds support for X11
- - a52 : Enables support for decoding ATSC A/52 streams used in DVD
+ + alsa : Adds support for media-libs/alsa-lib (Advanced Linux Sound
Architecture)
- - dvb : Adds support for DVB (Digital Video Broadcasting)
+ + dvd : Adds support for DVDs
+ + esd : Adds support for media-sound/esound (Enlightened Sound Daemon)
+ + ffmpeg : Enable ffmpeg-based audio/video codec support
+ + flac : Adds support for FLAC: Free Lossless Audio Codec
- - mad : Adds support for mad (high-quality mp3 decoder library and cli
frontend)
+ + mpeg : Adds libmpeg3 support to various packages
- - mythtv : Support for retrieval from media-tv/mythtv backend
+ + ogg : Adds support for the Ogg container format (commonly used by
Vorbis, Theora and flac)
- - oss : Adds support for OSS (Open Sound System)
+ + theora : Adds support for the Theora Video Compression Codec
+ + vorbis : Adds support for the OggVorbis audio codec
- - xv : Adds in optional support for the Xvideo extension (an X API for
video playback)
ここのgstreamer
プラグインmeta-package
では多くのフラグが有効になっていますUSE
。
しかし、他にも利用可能なフラグがあることがわかりますUSE
。
フラグの詳細についてはUSE
、「」の章を参照してGentoo Handbook
くださいUSE Flags
。
ebuild
パスを見つけます: which
( w
)
which
は、ユーザーがファイル パスをすばやく見つけるのに役立つ単純なスクリプトですebuild
。
which
バージョン管理されていないパッケージ名が渡された場合、ebuild
インストール可能な最新バージョンへのパスが返されます。
つまり、入力するとemerge example/package
returnPortage
が使用されますebuild
。
which
また、バージョン管理されたパッケージを受け入れて、その ebuild へのパスを取得します。
user $ equery which gnome
/usr/portage/gnome-base/gnome/gnome-2.26.3.ebuild
最後に、上記の関数で答えが見つからない場合は、equery
次のようなプログラムを使用して手動で検索してみてwhich
ください。cat
less
grep
ebuild
user $ grep HOMEPAGE $(equery which gentoolkit)
HOMEPAGE="http://www.gentoo.org/proj/en/portage/tools/index.xml"
警告:
現在、パイプ経由で送信された場合、equery
出力の形式が変更されることに注意してください。パイプ形式はツールによる解析を容易にすることを目的としていますが、
--no-pipe
オプションを追加することでオフにすることができます。使用するスクリプトを作成する
equery
ときは、この動作に注意してください。
こちらも参照
Q_applets
-で書かれたC
小型で高速なPortage
補助ツールセット。eix
Portage
- バイナリ キャッシュ、ローカルツリー、および.txt を検索および比較するoverlays
ためのユーティリティ のセット。Gentoolkit
- システム管理を簡素化するツールのセットGentoo
。