Debianにいくつかのプログラムをインストールしようとしましたが、Linuxを初めて使用したので、いくつかの問題。build-essentialを次のコマンドでインストールしようとすると、
sudo apt-get install build-essential
または他の同様のコマンドが表示されます。 「インストール候補」はありません
このような他の質問で答えを検索しましたが、解決策が見つかりません。
コメント
回答
次のエラーE: Package "build-essential" has no installation candidateは、sources.list<にmainリポジトリがないことを意味します。 / div>
build-essentialパッケージは、 main リポジトリ。
最初に、sources.listを編集する必要があります:
sudo apt edit-sources
次の行を追加します( sources.listと mainおよびcontrib コンポーネント):
deb http://httpredir.debian.org/debian jessie main contrib deb-src http://httpredir.debian.org/debian jessie main contrib deb http://httpredir.debian.org/debian jessie-updates main contrib deb-src http://httpredir.debian.org/debian jessie-updates main contrib deb http://security.debian.org/ jessie/updates main contrib deb-src http://security.debian.org/ jessie/updates main contrib
次のコマンドを保存して実行し、build-essentialパッケージをインストールします。
sudo apt update sudo apt upgrade sudo apt install build-essential
コメント
- わかりましたが、ドッカーコンテナでこれを行うにはどうすればよいですか?
- ソースを編集しようとしましたが、エラーが発生します:apt-edit:コマンドが見つかりません
回答
Aptが利用可能なパッケージを認識するためには、/etc/apt/sources.listで有効な構成が必要であり(通常、これはディストリビューションのインストール時に正しく初期化されます)、正常にダウンロードする必要があります。構成されたネットワークロケーションからのPackagesファイル。一般的なエラーシナリオには、
- 廃止された構成が含まれます。サポートされなくなったディストリビューションを使用しようとすると、
/etc/apt/sources.listで一度修正されたURLが機能しなくなります。症状は、サーバー全体がなくなった場合の「ファイルが見つかりません」エラーまたは「ホストへのルートがありません」です。 - Aptが
Packages同様の症状のファイル。他の場所からAptで構成された場所に接続できる場合は、プロキシを使用する必要がありますか? - 通常、数分または数時間後に自動的に解消される一時的なサーバーエラー。
-
apt-get updateの実行に失敗しました。Packagesファイルのローカルコピーが古すぎる場合、サーバー上のアーカイブに存在しなくなったパッケージバージョンを指します。
あまり一般的ではありませんが考えられる問題の原因は、構成ファイルを誤ってザッピングすること(バックアップから復元しますか?ディストリビューションの一般的なデフォルトを教えてくれるように十分な情報を質問に含めますか?)、物理的な接続の問題(インターフェイスが起動していてcurlなどでGoogleなどに接続できますか?)およびローカルディスクの問題(破損したPackagesファイル?ディスクは読み取り専用ですか? )。 DVDからインストールした場合は、DVDのみがパッケージソースとしてAptで構成されている可能性もあります。
トラブルシューティングの詳細については、エラーメッセージやその他の症状が特定に役立ちます。エラーですが、このレベルでシステムを理解するだけで、自分でシステムを診断できる場合がよくあります。
通常のApt出力から構成URLがはっきりと表示されないのは、ちょっとした煩わしさです。構成は次のようになります。
deb http://example.net/path distribution section another
そしてApt自体がいくつかの部分を埋めて、サーバー上の1つ以上のPackagesファイルへの完全なURLパスを構築します。 --print-urisオプションを使用すると、フェッチしようとしているものを正確に確認できます。
sudo apt-get updateを実行するには、パッケージリストがない可能性があります