我正在尝试在ubuntu 16中安装postgresql10。
已成功使用apt repo尝试。(使用apt-get)
我的意图是在ubuntu 16中安装postgresql10并防止其apt-upgrade(使用mark-hold)
但是即使我们持有postgresql软件包,这也会导致依赖项升级。因此,我正在考虑进行make install postgresql。
如果我进行安装,则postgresql是否会apt-upgrade更新postgresql和依赖关系?如果我按照这种方法,我可以安全地进行apt-update吗?
如果卸载由软件包管理器安装的所有PostgreSQL软件,从源安装的PostgreSQL将不会自动升级。
但是,PostgreSQL依赖的软件将被升级。如果Ubuntu具有良好的软件包管理,这应该不是问题。
防止PostgreSQL被更新是一个非常糟糕的主意。
如果拥有postgresql
的版本,则程序包管理应知道它需要某些版本的依赖项。只要满足版本要求,它就可以更新依赖项。如果需要更新某些被postgresql
软件包锁定为较早版本的依赖项,它将报告问题。
如果您从源代码构建并安装postgresql-10
,则apt
当然不会更新此本地安装。
要构建它,您可能需要一些开发库,这些开发库引用相应的系统库。可能将使用动态链接的库来构建它,因此apt
以后可能会更新依赖关系(即postgresql
所需的库和相应的开发库)。
这可能会更成问题,因为您的apt
不知道您在本地安装了postgresql
的版本,该版本可能取决于依赖关系的特定版本。
防止apt
更新与postgresql
相关的任何内容的唯一方法是,如果其构建过程允许静态链接所有库。