使用dpkg手动安装软件包是否会阻止将来的升级路径?


13

我管理的私有网络由于客户的安全策略而没有Internet连接。该网络仅安装了一个Ubuntu 10.04 LTS Server(很快还会安装多个),我一直在尝试使用软件对其进行自定义-但是,由于缺少Internet连接,我不得不手动使用dpkg安装软件包。

这是否会阻止我在可用的Ubuntu Server(LTS)升级到新版本,因为我安装的软件包不在当前发行版CD上,因此它们也不太可能出现在较新的发行版中。


3
旁注:由于还会有更多Ubuntu服务器,也许您可​​能需要考虑使用本地存储库?
andol 2010年

3
为什么这个社区Wiki?
内森·奥斯曼

@乔治·爱迪生-为什么不呢?

1
@詹姆斯:因为没有人获得声望。来自CW问题。
内森·奥斯曼

Answers:


17

不会。使用dpkg从官方存储库安装软件包不会给您带来任何麻烦。

实际上,从技术角度来看,通过dpkg安装软件包与运行run并没有什么不同sudo apt-get install package。同样的事情也会发生。

使用dpkg安装软件包的唯一问题是,您必须确保以正确的顺序安装了依赖项。如果没有,您可能会发现软件包数据库已损坏。

我知道这是根据个人经验而发生的...


您以正确的顺序安装是什么意思?如果一个lib具有3个依赖项a,b和c,那么它们是否需要按特定顺序安装?为什么?
levesque 2010年

@JCL:因为某些依赖项可能相互依赖。
内森·奥斯曼

2
软件包数据库不会被破坏...但是它表示由于缺少依赖项,仅对软件包进行了解包(未配置)。损坏将意味着损坏,并且dpkg将不再起作用。在您提到的情况下,它仍然可以工作,您可以使用dpkg安装缺少的依赖项(甚至apt-get -f install)来完成安装。
拉斐尔·赫尔佐格(RaphaëlHertzog)2010年

@说唱:是的,会的。这实际上发生在我身上。是的,之后dpkg不起作用。
内森·奥斯曼

2
恐怕您遇到的问题与您描述的特定操作无关。肯定发生了其他事情。意外的电源故障,文件系统损坏或以错误的顺序安装软件包不会破坏dpkg数据库。我是dpkg的维护者,如果确实是这样,我们将看到很多相关的错误报告。
拉斐尔·赫尔佐格(RaphaëlHertzog)2010年

3

出于完整性考虑:升级时,如果不再支持您的软件包,或者与较新的软件包不兼容(依赖项损坏等),则升级过程将询问您是否要删除那些软件包。我不确定如果不卸载它们会发生什么-可能它们不再起作用了。

无论如何,您都可以升级。



1

考虑到您很快将添加更多服务器来建立本地存储库,这可能是一个更好的主意。这样,您可以将存储库添加到每个服务器的apt源中,然后将它们全部指向本地存储库,该存储库只是真实ubuntu存储库的镜像。

然后,当需要安装或升级软件包时,只需使用标准的ubuntu工具即可处理此操作。另一个好处是,您只需要每隔一段时间使用一对DVD或硬盘驱动器更新集中的本地存储库,即可将其带入封闭环境并与存储库的目录同步。然后,每台服务器都会向您发出警报,提醒您已安装的软件包在本地存储库中具有可用的升级...,这意味着您无需维护许多管理员。允许工具执行工具擅长的事情。

Ubuntu英国播客背后的团队之一,Abuntu传播者Alan Pope写了一篇帖子,介绍如何创建应该提供帮助的ubuntu官方存储库镜像。你可以在这里找到它。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.