Я, как всегда, регулярно обновлял пакеты, и что-то сломалось, даже не могу очистить пакеты из-за сломанных зависимостей. Сервер - Ubuntu 16.04 в Azure. Мы используем MySQL на этом сервере, так что этот пакет может быть просто вещью Azure?
Выход ниже:
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
mssql-tools : Depends: msodbcsql17 (>= 17.0.0.1) but it is not installed
Depends: msodbcsql17 (< 17.1.0.0) but it is not installed
E: Unmet dependencies. Try using -f.
И когда я выполняю apt-get -f install, как это было рекомендовано в большинстве случаев, вывод будет следующим:
apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following additional packages will be installed:
msodbcsql17
The following NEW packages will be installed:
msodbcsql17
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
6 not fully installed or removed.
Need to get 3,760 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 https://packages.microsoft.com/ubuntu/16.04/prod xenial/main amd64 msodbcsql17 amd64 17.0.1.1-1 [3,760 kB]
Fetched 3,760 kB in 0s (15.1 MB/s)
Preconfiguring packages ...
(Reading database ... 153677 files and directories currently installed.)
Preparing to unpack .../msodbcsql17_17.0.1.1-1_amd64.deb ...
Unpacking msodbcsql17 (17.0.1.1-1) ...
dpkg: error processing archive /var/cache/apt/archives/msodbcsql17_17.0.1.1-1_amd64.deb (--unpack):
trying to overwrite '/usr/lib/libmsodbcsql-17.so', which is also in package msodbcsql 17.0.1.1-1
Errors were encountered while processing:
/var/cache/apt/archives/msodbcsql17_17.0.1.1-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Я попытался выполнить документацию и удалить сам драйвер, как указано: https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server
Поэтому я хочу либо исправить это, либо полностью удалить и вернуть версию 13.1.9.2-1 для mssql-tools. Из-за того, что apt-get теперь ошибается и не может ничего установить на этот сервер.
заранее спасибо
Новый пакет msodbcsql17 некорректно конфликтует с v17 старого пакета msodbcsql. Вы не можете установить оба. Вы можете установить старую версию msodbcsql v13. Что касается меня, я просто хотел новый, поэтому я сделал:
$ sudo dpkg -P msodbcsql
очистить конфликтующий пакет вручную, что должен делать новый msodbcsql17, но это не так. После этого вы можете запустить:
$ sudo apt -f установить
и завершите установку всех ожидающих пакетов.
Microsoft отмечает здесь несовместимость: