我正在构建一个脚本来自动将 .net core 辅助服务应用程序部署为systemd
service unit
/ daemon
。
我想仔细检查:单独使用dpkg
,除了先删除然后安装之外,没有其他方法可以升级/更新软件包 - 这是正确的吗?
我读到dpkg
-i 如果已经安装了软件包,则会升级该软件包,但是如果检查依赖于.deb
文件名,那么它对我没有帮助,因为.deb
文件名包含其中的版本并且版本会递增,这意味着新版本.deb
文件名永远不会是当前安装的文件名。
那么要走的路是先删除再安装吗?这就是我目前正在做的方式。删除包可以通过包名称进行。想仔细检查是否没有快捷方式。
答案1
dpkg -i
如果已经安装了软件包,则将升级该软件包,无需先删除它。使用包中包含的元数据检查包(例如安装后显示的包名称dpkg -l
),而不是文件名。