Can't install SQL Server command-line tools on Ubuntu due to `unmet dependencies` - sql

After sucessfully installing Sql Server Following the docs, Failed to install SQL Server command-line tools on Ubuntu 20.04. Efforts led to below commands and results:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
OK
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
deb [arch=amd64] https://packages.microsoft.com/ubuntu/18.04/prod bionic main
sudo apt-get update
Hit:1 http://dl.google.com/linux/chrome/deb stable InRelease
Get:2 http://security.ubuntu.com/ubuntu focal-security InRelease [107 kB]
Hit:3 http://x.archive.ubuntu.com/ubuntu focal InRelease
Hit:4 http://x.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:5 http://x.archive.ubuntu.com/ubuntu focal-backports InRelease
Hit:6 ... packages . microsoft . com/ubuntu/18.04/mssql-server-2019 bionic InRelease
Hit:7 ... packages . microsoft . com/ubuntu/20.04/prod focal InRelease
Hit:8 ... download . gocd . org InRelease
Hit:9 ... packages . microsoft . com/ubuntu/18.04/prod bionic InRelease
Get:10 ... security . ubuntu . com/ubuntu focal-security/main amd64 DEP-11 Metadata [21.3 kB]
Get:11 ... security . ubuntu . com/ubuntu focal-security/universe amd64 DEP-11 Metadata [31.5 kB]
Fetched 160 kB in 17s (9,288 B/s)
Reading package lists... Done
sudo apt-get install mssql-tools unixodbc-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
mssql-tools is already the newest version (17.5.2.1-1).
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
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 it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I tried following the dependency failure tree to install unmet dependencies manually but in the final step failed to install:
sudo apt-get install multiarch-support
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package multiarch-support is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'multiarch-support' has no installation candidate
How would you solve these issues to finally install the Command line?

Using:
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
Instead of:
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
Solves the issue, The docs are out dated or maybe Ubuntu 20.04 is not officially supported yet...
Also I wasn't able to use curl https://... (Don't know why always peer closed my connection!) so I manually downloaded the link and paste the result to /etc/apt/sources.list.d/msprod.list

Related

Error when installing Google Cloud SDK on Ubuntu, how to fix?

I'm attempting to set up Google Cloud SDK CLI to manage some compute resources, and I'm just following a guide for this part. I ran this command and it installed lots of stuff successfully but ran into the problem below. Can anyone suggest a solution or how to debug?
$ sudo apt-get update && sudo apt-get install google-cloud-sdk
[sudo] password for #######:
Hit:1 http://archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://archive.ubuntu.com/ubuntu focal-updates InRelease [111 kB]
Get:3 http://security.ubuntu.com/ubuntu focal-security InRelease [107 kB]
Get:4 http://archive.ubuntu.com/ubuntu focal-backports InRelease [98.3 kB]
Get:5 https://packages.cloud.google.com/apt cloud-sdk InRelease [6349 B]
Ign:6 http://packages.cloud.google.com/apt cloud-sdk-focal InRelease
Err:7 http://packages.cloud.google.com/apt cloud-sdk-focal Release
404 Not Found [IP: 216.58.204.238 80]
Get:8 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [255 kB]
Get:9 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 c-n-f Metadata [7492 B]
Get:10 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [132 kB]
Get:11 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 c-n-f Metadata [4732 B]
Reading package lists... Done
E: The repository 'http://packages.cloud.google.com/apt cloud-sdk-focal 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.
I had the same issue with Ubuntu 20. The solution is to install using snap.
snap install google-cloud-sdk --classic
Make sure you have --classic at the end, otherwise you'll get this error:
error: This revision of snap "google-cloud-sdk" was published using classic confinement and thus
may perform arbitrary system changes outside of the security sandbox that snaps are usually
confined to, which may put your system at risk.
If you understand and want to proceed, repeat the command including --classic.
Looks like the problem is in not updated documentation on Google. I used this for creating Docker image but I believe it solved normal installation too:
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 467B942D3A79BD29
RUN apt-get update && apt-get install -y apt-transport-https ca-certificates curl gnupg
RUN echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | \
tee -a /etc/apt/sources.list.d/google-cloud-sdk.list && curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | \
apt-key --keyring /usr/share/keyrings/cloud.google.gpg add - && apt-get update -y && apt-get install google-cloud-cli -y
keep attention on http://packages.cloud.google.com/apt cloud-sdk main. In Google website is http://packages.cloud.google.com/apt cloud-cli main so seems like name of package has been changed from cloud-cli to cloud-sdk.
In my case the solution was to install the earlier 18.04 LTS version of Ubuntu (uninstalling 20.04). Having done this the Google Cloud Compute SDK install steps worked successfully.
I found a similar problem / solution described here:
https://forums.fast.ai/t/platform-gcp/27375/716
I don't think it's possible to get gcloud on Ubuntu 20.04.3 with apt, at least not a recent version. I was tempted to get the latest through snap:
sudo snap install google-cloud-sdk --classic
But I can't think of a good reason for "arbitrary system changes outside of the security sandbox". By the way, there's the same warning for node so it's not that uncommon. Nonetheless, I prefer to run it in a container, which by the way, I also do for Node.js.
If you already run docker or podman, this could be another option. See an example shell session below, where I get version 360.0.0. I went for slim for now, because the default is around 1GB, but there are plenty of tags to choose.
docker pull google/cloud-sdk:360.0.0-slim
# run a dummy tail so the container does not exit
docker run --name gcloud -d google/cloud-sdk:360.0.0-slim tail -f /dev/null
# now get a shell into it
docker exec -ti gcloud /bin/bash
root#ff77152a65ee:/# gcloud --version
Google Cloud SDK 360.0.0
alpha 2021.10.04
beta 2021.10.04
bq 2.0.71
core 2021.10.04
gsutil 5.3
Alternatively, for a container that will stop when you exit the shell:
docker run -ti google/cloud-sdk:360.0.0-slim /bin/bash
There's detailed documentation on the official google cloud-sdk docker hub overview page.
I have the following on my ~/.bashrc for quick access into a "gcloud shell":
alias gcloudshell='docker start gcloud && docker exec -ti gcloud /bin/bash'
Note that it can be used multiple times, even if the container is already running.

How to install mod_mono on Debian 10

I want to run ASP.NET MVC application in Debian 10 with Apache.
I have installed latest mono from mono Debian 10 repository using apt.
Trying to install mod_modo using
apt install libapache2-mod-mono
throws error
> Reading package lists... Done Building dependency tree Reading state
> information... Done Some packages could not be installed. This may
> mean that you have requested an impossible situation or if you are
> using the unstable distribution that some required packages have not
> yet been created or been moved out of Incoming. The following
> information may help to resolve the situation:
>
> The following packages have unmet dependencies: libapache2-mod-mono :
> Depends: mono-apache-server (< 4.6) but 4.7.1-0xamarin2+debian10b1 is
> to be installed or
> mono-apache-server4 (< 4.6) but 4.7.1-0xamarin2+debian10b1 is to be installed or
> mono-apache-server2 (< 4.6) but it is not installable
> E: Unable to correct problems, you have held broken
> packages.
How to install mod_mono on Debian 10 ?
/etc/apache2/mods-available contans mod_mono.
Maybe it is sufficient to enable it in apache to get it work ?
/etc/sources.list contains:
deb http://ftp.debian.org/debian buster main contrib non-free
deb http://ftp.debian.org/debian buster-updates main contrib non-free
deb http://security.debian.org buster/updates main contrib non-free
/etc/apt/sources.list.d contains two files:
mono-official-stable-list:
deb https://download.mono-project.com/repo/debian stable-buster main
and pgdg.list:
deb http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main
#deb-src http://apt.postgresql.org/pub/repos/apt/ buster-pgdg main
Update
I tried commands from GAD3R answer.
apt install libapache2-mod-mono
still fails. Error message is a bit different:
Hit:1 http://security.debian.org buster/updates InRelease
Hit:2 http://ftp.debian.org/debian buster InRelease
Hit:3 http://ftp.debian.org/debian buster-updates InRelease
Hit:4 http://apt.postgresql.org/pub/repos/apt buster-pgdg InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
7 packages can be upgraded. Run 'apt list --upgradable' to see them.
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libapache2-mod-mono : Depends: mono-apache-server (< 4.4) but 4.7.1-0xamarin2+debian10b1 is to be installed or
mono-apache-server4 (< 4.4) but 4.7.1-0xamarin2+debian10b1 is to be installed
E: Unable to correct problems, you have held broken packages.
Install libapache2-mod-mono from the official debian repository.
sudo rm /etc/apt/sources.list.d/mono-official-stable.list
Then run :
sudo apt update
sudo apt purge mono.
sudo apt autoremove
sudo apt install libapache2-mod-mono
please file a bug report to mono dev team on github.

Do repositories for mesos available on xenial?

I am not able to install mesos and marathon on ubuntu 16.04. I have added the official repository provided by mesosphere. Do repositories available for mesos on xenial?
Following my distributions details.
root#sandipd-ThinkPad-E450:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.1 LTS
Release: 16.04
Codename: xenial
root#sandipd-ThinkPad-E450:~#
Trying to install but it gives following error.
root#sandipd-ThinkPad-E450:~# apt-get install mesosphere
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package mesosphere
I have added following repositories from mesosphere website.
echo "deb http://repos.mesosphere.com/${DISTRO} ${CODENAME} main" |
sudo tee /etc/apt/sources.list.d/mesosphere.list
Use apt-get install mesos marathon. Dont use meta packages mesosphere. Thanks.

How can i get rid of "apache2 : Depends: perl but it is not going to be installed" in ubuntu 14.04 desktop?

This is the error message i have at console when running
$sudo apt-get install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
apache2 : Depends: perl but it is not going to be installed
Depends: apache2-bin (= 2.4.7-1ubuntu4) but it is not going to be installed
Depends: apache2-data (= 2.4.7-1ubuntu4) but 2.4.7-1ubuntu4.13 is to be installed
E: Unable to correct problems, you have held broken packages.
Output of update
$sudo apt-get update
Hit http://ppa.launchpad.net trusty InRelease
Ign http://in.archive.ubuntu.com trusty InRelease
Hit http://in.archive.ubuntu.com trusty Release.gpg
Hit http://ppa.launchpad.net trusty/main amd64 Packages
Hit http://in.archive.ubuntu.com trusty Release
Hit http://ppa.launchpad.net trusty/main i386 Packages
Hit http://ppa.launchpad.net trusty/main Translation-en
Hit http://in.archive.ubuntu.com trusty/main amd64 Packages
Hit http://in.archive.ubuntu.com trusty/main i386 Packages
Hit http://in.archive.ubuntu.com trusty/main Translation-en
Ign http://in.archive.ubuntu.com trusty/main Translation-en_IN
Reading package lists... Done
I have done recently
sudo rm -rf /var/lib/apt/lists/*
sudo rm /etc/apt/sources.list
Later i gone to
sudo -i software-properties-gtk
and checked the canonical checkbox then,
sudo apt-get update this command i executed.
can any one help me to install apache in my ubuntu!
try using sudo apt-get -f install to force the install.
You may need to go back and forth between sudo apt-get update and sudo apt-get -f install to slowly get all the packages installed.
Also try cleaning the cache and configuring any packages that are not configured yet.
sudo apt-get clean
sudo dpkg --configure -a
Hopefully that will get you where you need to be.

Unable to install kernel source in kali Debian OS

I have some issue my OS and I don't know how to handle, I have googled allot but no success, here is my problem.
I want to install Linux headers in my Kali Debian OS. I have used following commands,
$ apt-get install linux-headers-$(uname -r)
it's output,
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
linux-headers-3.18.0-kali3-amd64 : Depends: gcc-4.7 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
After I have entered following command,
$ apt-get install gcc-4.7
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
gcc-4.7 : Depends: gcc-4.7-base (= 4.7.2-5) but it is not going to be installed
Depends: cpp-4.7 (= 4.7.2-5) but it is not going to be installed
Depends: libitm1 (>= 4.7.2-5) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
I have tried some other commands as well, including following commands,
sudo apt-get -f install
sudo dpkg --configure -a
sudo apt-get -f install
sudo apt-get -u dist-upgrade
sudo apt-get -o Debug::pkgProblemResolver=yes dist-upgrade
As well as following aptitude command,
sudo aptitude install linux-headers-$(uname -r)
my system information,
$ cat /proc/version
Linux version 3.18.0-kali3-amd64 (debian-kernel#lists.debian.org) (gcc version 4.7.2 (Debian 4.7.2-5) ) #1 SMP Debian 3.18.6-1~kali2 (2015-03-02)
$ uname -mrs
Linux 3.18.0-kali3-amd64 x86_64
$ lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Kali Linux 2.0~alpha1
Release: Kali Linux 2.0~alpha1
Codename: n/a
Please guide me what's going wrong Why I am stuck with this issue, thanks.
I share what I found and works for me.
My version:
# lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Kali Linux 1.1.0
Release: 1.1.0
Codename: moto
My source list (/etc/apt/sources.list):
# Line commented out by installer because it failed to verify:
deb http://security.kali.org/ kali/updates main contrib non-free
# Line commented out by installer because it failed to verify:
deb-src http://security.kali.org/ kali/updates main contrib non-free
## Regular repositories
deb http://http.kali.org/kali kali main non-free contrib
deb http://security.kali.org/kali-security kali/updates main contrib non-free
## Source repositories
deb-src http://http.kali.org/kali kali main non-free contrib
deb-src http://security.kali.org/kali-security kali/updates main contrib non-free
and does the following:
# apt-get clean
# apt-get update
# apt-get install linux-headers-$(uname -r)
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
linux-headers-3.18.0-kali3-common linux-kbuild-3.18
The following NEW packages will be installed:
linux-headers-3.18.0-kali3-amd64 linux-headers-3.18.0-kali3-common linux-kbuild-3.18
0 upgraded, 3 newly installed, 0 to remove and 112 not upgraded.
Need to get 5,269 kB of archives.
After this operation, 34.7 MB of additional disk space will be used.
Do you want to continue [Y/n]?
I comment you that I had that problem because I realize mistakenly "distribution upgrade" to alpha version of Kali.
Hope this help.