DebianまたはUbuntuにパッケージをインストールする前に、複数の依存関係が存在するかどうかを確認します


8

次のコマンドを実行することで、パッケージをDebianまたはUbuntuにインストールするために必要な複数の依存関係がリポジトリに存在するかどうかを確認できることはすでに知っています。

apt policy first-package second-package ... last-package  

このコマンドは、各パッケージが現在インストールされているかどうかも通知します。

私の質問は、現在インストールしていないサポート対象バージョンのDebianまたはUbuntuに複数の依存パッケージが存在するかどうかをすばやく確認する方法です。そのOSが現在インストールされていないため、依存関係パッケージがローカルとオフラインに存在するかどうかを確認できませんが、必要な依存関係パッケージが端末からデフォルトのリポジトリに存在するかどうかを確認したいと思います。

この情報の用途の1つは、Ubuntuにインストールされているアプリケーションが最新バージョンのUbuntuにもインストールできるかどうかを確認してから、最新バージョンのUbuntuをインストールするか、既存のOSを最新バージョンにアップグレードすることです。

回答:


10

このための理想的なツールはです。これはrmadison、依存関係がほとんどない単純なPerlスクリプト(URIモジュールおよびwgetまたはcurl)であるため、ほぼどこでも実行できます。DebianとUbuntuでホストされているMadisonサービスに問い合わせて、パッケージの可用性を判断します。

rmadison gcc-7

さまざまなDebianスイートで利用可能なGCC 7のバージョンを通知します。

rmadison -u ubuntu gcc-7

Ubuntuでも同じです。

出力を特定のバージョンに制限できます。

rmadison -u ubuntu -s bionic gcc-7

@karelは、後のパラメータ-uがパッケージ名ではなく、ディストリビューション(またはおそらくリポジトリ)の名前であることを示しています
GnP

あなたは正しい、それは欠けていたubuntu、それは私のサンプルファイルで動作します。実際、これは私のスクリプトよりもうまく機能します。これは、サポート終了のリリースであるパッケージの結果も正確に返すためです。
karel

3

rmadisonは、DebianとUbuntuの両方のパッケージを同時に検索できます。また、End Of Life(12.04)と未リリース(18.10)の両方のUbuntuバージョンのパッケージも検索します。これらは素晴らしい機能ですが、rmadisonは私のコンピューターで部分的なキーワード検索を行うことができません。検索しているパッケージ名全体を思い出せないことがあります。私はその一部しか覚えていません。次の手順もこの状況で機能します。それ以外の場合はsudo apt-get install devscripts、UbuntuおよびDebianのコマンドでインストールできるrmadisonを使用します。

  1. Open-multiple-URLs-in-Firefox.shという名前の複数のパッケージが存在するかどうかを照会するシェルスクリプトを作成します。スクリプトには次のコードが含まれています。

    #!/bin/bash
    while read line; do
        firefox --new-tab "https://packages.ubuntu.com/$line"
    done < packages.txt
  2. スクリプトを実行可能にします。

    chmod +x Open-multiple-URLs-in-Firefox.sh
  3. 必要なすべての依存パッケージの名前を含むpackages.txtという名前のファイルを作成します。各パッケージは別々の行にあります。packages.txtをOpen-multiple-URLs-in-Firefox.shと同じディレクトリに保存します。

  4. スクリプトを実行します。

    ./Open-multiple-URLs-in-Firefox.sh  

必要な各依存​​パッケージに関する情報を含むWebページは、Firefoxの個別のタブで開きます。

Debianで複数のパッケージを検索するにhttps://packages.ubuntu.com/は、シェルスクリプトを次のように置き換えます。https://packages.debian.org/search?keywords=


このコマンドは、1つまたは2つのパッケージのみを検索する場合に使用する、上記のシェルスクリプトのより簡単な代替手段です。

firefox --new-tab https://packages.ubuntu.com/first-package https://packages.ubuntu.com/next-package https://packages.ubuntu.com/last-package
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.