Назад | Перейти на главную страницу

Ошибка apt-get dist-upgrade в пакетах mssql-tools и msodbcsql17, ubuntu 16.04

Я, как всегда, регулярно обновлял пакеты, и что-то сломалось, даже не могу очистить пакеты из-за сломанных зависимостей. Сервер - 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 отмечает здесь несовместимость:

https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server