新しいubuntu14.04マシンにpuppetをインストールしようとしていますが、次のエラーが発生します
一部のパッケージをインストールできませんでした。これは、不可能な状況を要求したか、不安定なディストリビューションを使用していて、必要なパッケージがまだ作成されていないか、受信から移動されていないことを意味している可能性があります。次の情報は、状況の解決に役立つ場合があります。
The following packages have unmet dependencies:
puppet : Depends: puppet-common (= 3.7.0-1puppetlabs1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
私は指示に従いました ここ そして以下をしました
$ wget https://apt.puppetlabs.com/puppetlabs-release-trusty.deb
$ Sudo dpkg -i puppetlabs-release-trusty.deb
$ Sudo apt-get update
私も試しました
apt-get install Ruby
apt-get -f install
uncommenting the 'devel' sources in puppetlabs.list
どんな助けでも本当にありがたいです。
編集1
欠落している「puppet-common」パッケージをインストールしようとすると、「facter」が欠落しているという同様のメッセージが表示されます。
puppet-common : Depends: facter (>= 1.7.0) but it is not going to be installed
それをインストールしようとすると、
facter : Depends: virt-what but it is not installable
編集2これは私のソースがどのように見えるかです
/etc/apt/sources.list
deb http://ports.ubuntu.com/ubuntu-ports/ trusty main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ trusty main restricted
deb http://ports.ubuntu.com/ubuntu-ports/ trusty-updates main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ trusty-updates main restricted
deb http://ports.ubuntu.com/ubuntu-ports/ trusty-security main restricted
deb-src http://ports.ubuntu.com/ubuntu-ports/ trusty-security main restricted
/etc/apt/sources.list.d/puppetlabs.list
deb http://apt.puppetlabs.com trusty main
deb-src http://apt.puppetlabs.com trusty main
deb http://apt.puppetlabs.com trusty dependencies
deb-src http://apt.puppetlabs.com trusty dependencies
deb http://apt.puppetlabs.com trusty devel
deb-src http://apt.puppetlabs.com trusty devel
編集3apt-getupdateの出力を以下で見つけてください
Ign http://apt.puppetlabs.com trusty InRelease
Hit http://apt.puppetlabs.com trusty Release.gpg
Hit http://apt.puppetlabs.com trusty Release
Ign http://ports.ubuntu.com trusty InRelease
Hit http://apt.puppetlabs.com trusty/main Sources
Ign http://ports.ubuntu.com trusty-updates InRelease
Hit http://apt.puppetlabs.com trusty/dependencies Sources
Ign http://ports.ubuntu.com trusty-security InRelease
Hit http://apt.puppetlabs.com trusty/devel Sources
Hit http://apt.puppetlabs.com trusty/main armhf Packages
Hit http://ports.ubuntu.com trusty Release.gpg
Hit http://apt.puppetlabs.com trusty/dependencies armhf Packages
Hit http://apt.puppetlabs.com trusty/devel armhf Packages
Hit http://ports.ubuntu.com trusty-updates Release.gpg
Hit http://ports.ubuntu.com trusty-security Release.gpg
Hit http://ports.ubuntu.com trusty Release
Hit http://ports.ubuntu.com trusty-updates Release
Hit http://ports.ubuntu.com trusty-security Release
Hit http://ports.ubuntu.com trusty/main Sources
Hit http://ports.ubuntu.com trusty/restricted Sources
Hit http://ports.ubuntu.com trusty/main armhf Packages
Hit http://ports.ubuntu.com trusty/restricted armhf Packages
Hit http://ports.ubuntu.com trusty/main Translation-en
Hit http://ports.ubuntu.com trusty/restricted Translation-en
Hit http://ports.ubuntu.com trusty-updates/main Sources
Hit http://ports.ubuntu.com trusty-updates/restricted Sources
Hit http://ports.ubuntu.com trusty-updates/main armhf Packages
Ign http://apt.puppetlabs.com trusty/dependencies Translation-en_US
Ign http://apt.puppetlabs.com trusty/dependencies Translation-en
Hit http://ports.ubuntu.com trusty-updates/restricted armhf Packages
Ign http://apt.puppetlabs.com trusty/devel Translation-en_US
Hit http://ports.ubuntu.com trusty-updates/main Translation-en
Ign http://apt.puppetlabs.com trusty/devel Translation-en
Ign http://apt.puppetlabs.com trusty/main Translation-en_US
Hit http://ports.ubuntu.com trusty-updates/restricted Translation-en
Ign http://apt.puppetlabs.com trusty/main Translation-en
Hit http://ports.ubuntu.com trusty-security/main Sources
Hit http://ports.ubuntu.com trusty-security/restricted Sources
Hit http://ports.ubuntu.com trusty-security/main armhf Packages
Hit http://ports.ubuntu.com trusty-security/restricted armhf Packages
Hit http://ports.ubuntu.com trusty-security/main Translation-en
Hit http://ports.ubuntu.com trusty-security/restricted Translation-en
Ign http://ports.ubuntu.com trusty/main Translation-en_US
Ign http://ports.ubuntu.com trusty/restricted Translation-en_US
答えは、私が予想していたよりもはるかに単純であることが判明しました。
ターミナルで入力しました
software-properties-gtk
「UbuntuSoftware」の下で、すべてのソースにチェックマークを付けました。その後、アップデートを行って再度インストールしてみたところ、うまくいきました!
有用な提案をありがとうピーターHorvath。
簡単な答えは次のとおりです。
apt-get -f install
コマンドを実行すると、必要なものがダウンロードおよびインストールされます。
DpkgベースのOSでのパッケージのインストールには、次の3つのステップがあります。
Debianパッケージは、実際には次の標準化されたコレクションです。1。インストールスクリプト2.その依存関係に関する情報3.すべてのファイルを含む実際のtar.xzアーカイブ。
パッケージのファイルはすでにファイルシステムにコピーされていますが、構成はコピーされていません。したがって、プログラムはおそらく機能しませんが、(1)と(2)はすでに発生しています!
これにより、dpkg -l
コマンドを実行したかどうかを確認できます(おそらく非常に長いリストが表示されます。おそらくdpkg -l|more
の方が適しています)。パッケージisはすでにインストールされていますが、「破損」状態です。これは、apt-get -f install
コマンドで修正できます。このコマンドは、パッケージとインストールされている.dpkgリポジトリの両方で利用可能な依存関係情報を収集し、修正する方法を見つけますすべて。
その主な目標は、不足しているパッケージを必要な順序で検索、ダウンロード、およびインストールすることです。しかし、それが不可能な場合は、アンインストールすることさえあります。彼が何をしたいのかがわかります。それが実行できる場合(そしてほとんどの場合:実行可能)、最終的にはすべてが正常に機能するシステムが得られます。
Extension#1:エラーメッセージは、このpuppetパッケージがpuppet-commonという名前の別のパッケージに依存していることを示しています。このパッケージはおそらくデフォルトのリポジトリにはありませんが、おそらくpuppetパッケージのURLの隣にあります。これが原因であり、aptがそれを見つけてシステムにインストールできない理由です。ただし、修正も非常に簡単です。必要なpuppet-commonパッケージもダウンロードし、それもインストールします。
Extension#2:そこにある説明を読みましたが、どういうわけか最初のステップを逃したとほぼ確信しています。 /etc/apt/sources.list
ファイルでpuppetlabsリポジトリのURLを見つける必要がありますか?そうでない場合は、手順1(puppetlabsリポジトリをaptにインポートする)を再度実行します。何か問題がある場合は、sources.list
を質問にコピーしてください。さらに先に進みます。