Puppet

為什麼更新 puppet ppa 不更新 puppet?

  • September 16, 2013

Ubuntu 12.04 LTS 伺服器木偶 3.1.1

根據 puppet 文件,安裝 puppet 的最佳方法是設置一個包。

http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#for-debian-and-ubuntu

因此對於 ubuntu 12.04,您將執行以下命令:

$ wget http://apt.puppetlabs.com/puppetlabs-release-precise.deb
$ sudo dpkg -i puppetlabs-release-precise.deb
$ sudo apt-get update

我不明白為什麼即使在執行了這些命令並進行了 apt-get 升級之後,puppet 仍然是 3.1.1 版本(而不是更新的 3.3.x)。


我幾乎完全使用 CentOS 伺服器,而且我對 Debian 不是很熟悉。

查看http://apt.puppetlabs.com/pool/precise/main/p/的內容顯示 .deb 文件最後一次更新是在 2013 年 9 月 12 日,這應該意味著該文件是最新的。

$$ $$ puppet_3.3.0-1puppetlabs1_all.deb 2013 年 9 月 12 日 16:37 9.4K

  • 如何判斷我是否安裝了最新的 ppa?
  • 在不從原始碼編譯的情況下安裝最新版本的 puppet 的正確方法是什麼?

更新 我忘了提,我已經執行了 apt-get upgrade

root@gitlab:/tmp# apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have been kept back:
 linux-headers-generic-lts-quantal linux-image-generic-lts-quantal
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.  

root@gitlab:/tmp# apt-get upgrade puppet
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have been kept back:
 linux-headers-generic-lts-quantal linux-image-generic-lts-quantal
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

更新2

木偶 3.1.1。最初是作為我正在執行的 vagrant box 的一部分安裝的

root@gitlab:~# cat /etc/apt/sources.list.d/puppetlabs.list
# Puppetlabs products
deb http://apt.puppetlabs.com precise main
deb-src http://apt.puppetlabs.com precise main

# Puppetlabs dependencies
deb http://apt.puppetlabs.com precise dependencies
deb-src http://apt.puppetlabs.com precise dependencies

root@gitlab:~# puppet --version
3.1.1

更新3

root@gitlab:~# apt-cache policy puppet
puppet:
 Installed: (none)
 Candidate: 3.3.0-1puppetlabs1
 Version table:
3.3.0-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
3.2.4-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
3.2.3-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
3.2.2-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
3.2.1-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
3.1.1-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages

.... truncated for readability

   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
2.7.11-1ubuntu2.4 0
   500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
   500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
2.7.11-1ubuntu2 0
   500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
2.7.11-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
2.6.18-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages
2.6.14-1puppetlabs1 0
   500 http://apt.puppetlabs.com/ precise/main amd64 Packages


root@gitlab:~# puppet --version
3.1.1

apt-get update不等同於yum update您習慣的;您絕對應該閱讀重要係統工具的手冊頁。apt-get update在基於 Debian 的系統上更新軟體包元數據的索引,但不會以任何方式觸及系統上安裝的任何軟體包。您要查找的命令是apt-get upgrade.

您可以通過執行以下命令查看已配置儲存庫中的所有可用版本:

apt-cache policy puppet

有趣的..

puppet:
 Installed: (none)

這表示您目前版本的 Puppet 根本沒有安裝 via apt。也許它是通過 Vagrant 配置以其他方式設置的?

apt-get install puppet應該放置目前版本,但它可能與安裝的版本衝突,具體取決於它的來源。

引用自:https://serverfault.com/questions/539146