dpkg / apt研究ノート

私はdpkgとaptコマンドをよく使いますが、使い方を忘れがちなので、普段使っているコマンドをメモしておいてください。

1.プログラム(コマンド)がどのパッケージに属しているかを確認します

          [コマンド1:]ここでコマンド名

                            コマンド1を使用して、プログラムのパスを表示します。プログラムが属するパッケージが含まれる場合もあります。

           [コマンド2:] dpkg-Sコマンドパス

                            コマンド2を使用して、プログラムがどのパッケージに属しているかを確認します。出力情報が多い場合があります。grepを使用して情報をフィルタリングできます。apt-fileコマンドも利用できます。システムにこのコマンドがない場合は、次の2つのコマンドを使用してインストールします。

                           sudo apt-get install -y apt-file

                           apt-fileの更新

                          次に実行します

                          apt-filesearchコマンドパス

          [コマンド3:] dpkg -s package

                            コマンド3を使用して、パッケージ情報を表示します。

           [コマンド4:] dpkg-Lパッケージ

                            コマンド4を使用して、パッケージに含まれているファイルを確認します。

        例:

2.ライブラリが属するパッケージを表示します

        [コマンド1:] dpkg-Sライブラリパス

                            コマンド1を使用して、プログラムがどのパッケージに属しているかを確認します。出力情報が多い場合があります。grepを使用して情報をフィルタリングできます。apt-fileコマンドも利用できます。システムにこのコマンドがない場合は、次の2つのコマンドを使用してインストールします。

                           sudo apt-get install -y apt-file

                           apt-fileの更新

                          次に実行します

                          apt-ファイル検索ライブラリパス

          [コマンド2:] dpkg -s package

                            コマンド2を使用して、パッケージ情報を表示します。

           [コマンド3:] dpkg-Lパッケージ

                            コマンド3を使用して、パッケージに含まれているファイルを確認します。

        例:

 

************************************************** ************************************************** *********

                                                                    2020.5.5アップデート

************************************************** ************************************************** *********

1.インストールパッケージのバージョンをaptviewします。

1. apt-cachemadisonインストールパッケージ

#apt-cache madison libstdc ++ 6-8-dbg
libstdc ++ 6-8-dbg | 8.4.0-1ubuntu1〜18.04 | http://us.archive.ubuntu.com/ubuntu bionic-updates / universeamd64パッケージ
libstdc ++ 6-8-dbg | 8.4.0-1ubuntu1〜18.04 | http://security.ubuntu.com/ubuntu bionic-security / universeamd64パッケージ
libstdc ++ 6-8-dbg | 8-20180414-1ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic / universeamd64パッケージ
     gcc-8 | 8-20180414-1ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic / mainソース
     gcc-8 | 8.4.0-1ubuntu1〜18.04 | http://us.archive.ubuntu.com/ubuntu bionic-updates / mainソース
     gcc-8 | 8.4.0-1ubuntu1〜18.04 | http://security.ubuntu.com/ubuntu bionic-security / main出典

2. apt-cacheポリシー安装包
#apt-cacheポリシーlibstdc ++ 6-8-dbg
libstdc ++ 6-8-dbg:
  インストール済み:8.4.0-1ubuntu1〜18.04
  候補:8.4.0-1ubuntu1〜18.04
  バージョンテーブル:
 *** 8.4.0-1ubuntu1〜18.04 500500
        http://us.archive.ubuntu.com/ubuntu bionic -updates / universeamd64パッケージ500http //security.ubuntu.com/ubuntu bionic
        -security / universe amd64パッケージ
        100 / var / lib / dpkg / status
     8-20180414-1ubuntu2 500500
        http://us.archive.ubuntu.com/ubuntu bionic / universeamd64パッケージ

 

3. apt-get install -sインストールパッケージ名(このコマンドは、インストール中にインストールされるソフトウェアのリストのみをシミュレートし、各ソフトウェアのバージョン数はリストしません)

4. apt-getソースインストールパッケージ名(このコマンドは、インストールパッケージに対応するソースコードをインストールします。apt-cachemadisonは、ダウンロードするソースパッケージを表示します)

5. apt-getinstallインストールパッケージname = version(バージョンは、上記の赤でマークされた8.4.00-1ubuntu1〜18.04など、apt-cache madisonによって表示される2行目です)

6. apt-cache searchインストールパッケージ名(正規表現が利用可能)

7. apt-cacheshowインストールパッケージ名

************************************************** ************

場合:

libstdc ++。soダイナミックライブラリのデバッグパッケージを見つけて、ソースコードをインストールします

1.ライブラリのパスを表示します。cat/ proc / $ pid / mapsを介してプログラムによってロードされたlibstdc ++。soライブラリの絶対パスを表示できます。

/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25

2. libstdc ++。so.6.0.25が属するインストールパッケージを確認します

root @ ubuntu:〜$ dpkg -S /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
libstdc ++ 6:amd64:/ usr / lib / x86_64-linux-gnu / libstdc ++。so.6.0 .25

3. libstdc ++ 6のデバッグパッケージを見つけます(多くの場合、名前にdbgが含まれています)

apt-cache search libstdc ++。* | grep dbg

現時点では多くのパッケージがリストされています

比如:libstdc ++ 6-5-dbg libstdc ++ 6-7-dbg libstdc ++ 6-8-dbg等

运行aptlist libstdc ++ 6
リスト...完了
libstdc ++ 6 / bionic-updates、bionic-security、now 8.4.0-1ubuntu1〜18.04 amd64 [インストール済み]

システムはlibstdc ++ 6-8-dbgに対応している必要があります

4. libstdc ++ 6-8-dbgをインストールします

apt install libstdc ++ 6-8-dbg

5.インストールされたファイルを表示します

root @ ubuntu#dpkg -L libstdc ++ 6-8-dbg
/。
/ usr
/ usr / lib
/ usr / lib / debug
/usr/lib/debug/.build-id
/usr/lib/debug/.build-id/f2
/usr/lib/debug/.build-id/f2/ 119a44a99758114620c8e9d8e243d7094f77f6.debug
/ usr / lib / x86_64-linux-gnu
/ usr / lib / x86_64-linux-gnu / debug
/usr/lib/x86_64-linux-gnu/debug/libstdc++.a
/ usr / lib / x86_64-linux- GNU /デバッグ/のlibstdc ++。so.6.0.25
/usr/lib/x86_64-linux-gnu/debug/libstdc++fs.a
を/ usr / share
は、/ usr / share / doc
を/ usr / share / GDB
を/ usr / share / gdb / auto-load
/ usr / share / gdb / auto-load / usr
/ usr / share / gdb / auto-load / usr / lib
/ usr / share / gdb / auto-load / usr / lib / x86_64-linux -gnu
/ usr / share / gdb / auto-load / usr / lib / x86_64-linux-gnu / debug
/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/debug/libstdc++.so.6.0 .25-gdb.py
/usr/lib/x86_64-linux-gnu/debug/libstdc++.so
/usr/lib/x86_64-linux-gnu/debug/libstdc++.so.6
/ usr / share / doc / libstdc ++ 6-8-dbg

/usr/lib/x86_64-linux-gnu/debug/libstdc++.so.6.0.25が表示されます。これには、デバッグ情報が含まれています。

root @ ubuntu:#ファイル/usr/lib/x86_64-linux-gnu/debug/libstdc++.so.6.0.25
/usr/lib/x86_64-linux-gnu/debug/libstdc++.so.6.0.25:ELF 64-ビットLSB共有オブジェクト、x86-64、バージョン1(GNU / Linux)、動的にリンク、BuildID [sha1] = da4d52027095b0e48b6c1c12e00f78542e4221f8、debug_infoあり、削除されていない

6. gcc-8に対応する対応するソースファイル情報を表示します(libstdc ++ 6-8-dbgとlibstdc ++ 6は同じに対応します)

root @ ubuntu:/ home / kehao#apt-cache madison libstdc ++ 6-8-dbg
libstdc ++ 6-8-dbg | 8.4.0-1ubuntu1〜18.04 | http://us.archive.ubuntu.com/ubuntu bionic-updates / universeamd64パッケージ
libstdc ++ 6-8-dbg | 8.4.0-1ubuntu1〜18.04 | http://security.ubuntu.com/ubuntu bionic-security / universeamd64パッケージ
libstdc ++ 6-8-dbg | 8-20180414-1ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic / universeamd64パッケージ
     gcc-8 | 8-20180414-1ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic / mainソース
     gcc-8 | 8.4.0-1ubuntu1〜18.04 | http://us.archive.ubuntu.com/ubuntu bionic-updates / mainソース
     gcc-8 | 8.4.0-1ubuntu1〜18.04 | http://security.ubuntu.com/ubuntu bionic-security / main Sources
root @ ubuntu:/ home / kehao#apt-cache madison libstdc ++ 6
libstdc ++ 6 | 8.4.0-1ubuntu1〜18.04 | http://us.archive.ubuntu.com/ubuntu bionic-updates / mainamd64パッケージ
libstdc ++ 6 | 8.4.0-1ubuntu1〜18.04 | http://security.ubuntu.com/ubuntu bionic-security / mainamd64パッケージ
libstdc ++ 6 | 8-20180414-1ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic / mainamd64パッケージ
     gcc-8 | 8-20180414-1ubuntu2 | http://us.archive.ubuntu.com/ubuntu bionic / mainソース
     gcc-8 | 8.4.0-1ubuntu1〜18.04 | http://us.archive.ubuntu.com/ubuntu bionic-updates / mainソース
     gcc-8 | 8.4.0-1ubuntu1〜18.04 | http://security.ubuntu.com/ubuntu bionic-security / main出典

7.ソースコードをダウンロードします

apt source libstdc ++ 6-8-dbg
 

 

 

 

おすすめ

転載: blog.csdn.net/kh815/article/details/85061996