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
を実行するには、パッケージリストがない可能性があります