我想知道我的 Ubuntu Server 10.10 的软件更新如何工作。
我被推荐使用apt-get install
来安装新软件和apt-get update
更新生产使用的 Ubuntu Server 的软件。因为这些软件包是针对 Ubuntu 测试的,而不是下载源代码并在机器上编译软件。
但是在我的 Ubuntu Server 10.10 上,我无法使用 获得最新的稳定版 PostgreSQL (9) 或最新的稳定版 Nginx (8) apt-get install
。那么这是如何工作的呢,这些软件会在我稍后运行时更新吗?apt-get update
还是我必须稍后apt-get install
再次运行,或者我必须等待下一个版本的 Ubuntu 才能获得它们?
补丁和安全更新是否以相同的方式管理?或者它们可以自动更新吗?如果有这样的设置,我如何检查我的系统正在使用什么?
答案1
供您参考,sudo apt-get update
不会更新软件。它仅更新列表APT 包管理器使用它来跟踪软件已安装在系统和软件上可用的对于 Ubuntu 系统存储库。
更新到最新版本的正确步骤在存储库中是运行sudo apt-get update
更新可用软件列表,然后sudo apt-get upgrade
实际安装新版本的软件包。
值得注意的是,存储库中的版本可能略有过时:这通常是因为这是 Canonical 为 Ubuntu 版本支持的唯一版本,或者是因为还没有人将新版本上传到存储库。欢迎您手动安装更新的软件或使用个人软件包存档 (PPA)。
答案2
Ubuntu 有一项政策,即(通常)只有 Ubuntu 存储库(您通过 访问)中的程序的小型安全修复才会更新apt-get
。
这是为了确保生产环境的最大稳定性 - 这对于服务器来说尤其重要。这意味着在 Ubuntu Server 11.04 发布之前,您不会看到 PostgreSQL 和 Nginx 等软件的版本更新。
您可以在 Ubuntu wiki 上找到有关稳定版本更新。
答案3
使用 apt-get 您将仅收到 Ubuntu 团队支持的最新版本。如果这不是您想要的版本,您也不会在此版本中收到它,因为版本中不会有主要版本升级。
因此,您要么等待新的 Ubuntu 版本并希望他们升级您的软件包,要么自己手动构建和安装。同时还会失去自动更新。
你也可以尝试在 Debian 不稳定分支中找到最新版本,或者等待 Ubuntu 实现向后移植对于特立独行的人来说。