在 ubuntu 中安装 ms-sql 时发生包冲突。包裹破损

Package conflict while installing ms-sql in ubuntu. Broken packages

我正在尝试在 Ubuntu 20.04 中安装 ms sql。即使我已经按照 this 指南在 20.04 中成功安装了它,但有时我多次遇到这个问题,但不确定为什么会这样。

当我尝试运行跟随逗号时

curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list

sudo apt-get install mssql-tools unixodbc-dev

我最终遇到以下错误:

The following packages have unmet dependencies:

mssql-tools : Depends: msodbcsql17 (>= 17.3.0.0) but it is not going to be installed

unixodbc-dev : Depends: unixodbc (= 2.3.7)

Depends: odbcinst1debian2 (= 2.3.7) but 2.3.6-0.1build1 is to be inst

E: Unable to correct problems, you have held broken packages.

sudo apt-cache policy <package> 显示可用于这些软件包的多个版本。 我尝试为依赖项安装正确的版本,但当我再次 运行 sudo apt-get install mssql-tools unixodbc-dev 时没有帮助。

当我检查 msprod.list 文件时,它看起来像 'https://packages.microsoft.com/config/ubuntu/18.04/prod' 尾部的 .list 丢失了,所以我添加了那个(不确定我是否应该这样做)。然后我已经安装了所有东西。

现在,当我执行 sudo apt update 时,它以以下错误结束:

E: The repository 'https://packages.microsoft.com/ubuntu/18.04/prod.list bionic Release' does not have a Release file.

N: Updating from such a repository can't be done securely, and is therefore disabled by default.

N: See apt-secure(8) manpage for repository creation and user configuration details.

我真的不明白发生了什么,也不知道我必须做些什么才能让事情以最简单的方式工作。

进行如下操作:

apt install mssql-tools unixodbc-dev odbcinst1debian2 msodbcsql17 unixodbc libodbc1

apt-get 安装关心包冲突的东西。

如果你只使用apt,它会强制安装包,而不注意安装是否产生冲突。