Fixing error Failed to mount cd: devices when installing SQL Server tools on SUSE Linux Server

By:   |   Comments   |   Related: > SQL Server on Linux


In a previous tip I explained the process to install SQL Server Agent on a SUSE Linux server.  In this tip, I will show how to fix an error you might face when installing the SQL Server tools or SQL Server on a SUSE Linux server.


As I discussed in my last couple of tips, SQL Server vNext does not install the sqlcmd and BCP utilities during the SQL Server installation on Linux servers, but we need the sqlcmd utility to make a database connection from Linux based servers.  In this tip I will show how to install these tools to make database connections to SQL Server on SUSE Linux. 

Unfortunately, while installing the SQL Server tools, I faced the below error which I fixed and was able to install the SQL Server tools successfully.

Failed to mount cd:///?devices=/dev/disk/by-id/ata-Vmware_Virtual_SATA_CDRW_Drive_01000000000000000001 
on /var/adm/mount/AP_0xDGCZO0: Mounting media failed (mount: No medium found on /dev/sr1)

I will explain the method to rectify this issue and install your software successfully. This is not a SQL Server specific error so you can get it while installing any software/tool on SUSE Linux.

Fixing this Issue

Before going ahead, you need to have a SUSE Linux server with SQL Server vNext installed on that machine. Now let's start the SQL Server tools installation on SUSE Linux box.

Step 1:

I connected to the target SUSE Linux server using PuTTY as shown in the below screen shot. I entered the login name as manvendra followed by the password to make a successful connection.

connect using PUTTY to SUSE Linux

Step 2:

You can see that I have made a successful connection to this SUSE Linux server where I installed SQL Server. Now let's check and verify the SQL Server installation on this machine. Run the below command to check the mssql-server service. Now I will check and validate whether SQL Server is installed on this Linux machine or not by checking this service. We can see the service status is shown as enabled and active (i.e. running) which is highlighted in green which means SQL Server is installed and running fine on this server.

#check the status of mssql-server service.
systemctl status mssql-server
Check mssql-server service

Step 3:

Next we will install the SQL Server tools on this server. Before going ahead we can verify whether the tools are installed on this machine or not. You can type sqlcmd and press enter, if you will get details about this utility that means this tool is already on the server. I did this and you can see sqlcmd is not recognized by SUSE Linux, so the next step is to install it on this machine.

Check sqlcmd utility

The first step is to add the SQL Server repository to the zypper. This repository will be used to install the SQL Server tools on this machine.  Use the command below to add the SQL Server repository to zypper:

#Add repository to Zypper.
sudo zypper addrepo -fc 
Add repository to zypper

You can see that the command has been executed successfully. Now execute the below command to refresh the keys.

sudo zypper --gpg-auto-import-keys refresh
import and refresh keys

Next check the list of repositories by running the below zypper command.

#Get the list of repositories
zypper lr
zypper lr

Step 4:

Now our next step is to install the SQL Server tools with the unixODBC developer package on this box by using this zypper command.

#Install MSSQL tools
sudo zypper install mssql-tools unixODBC-devel
install SQL Server tools

Once execution has started, it will read the package list followed by checking the dependencies. It will display the name of target packages which will be installed along with this installation. Now it will ask you to choose yes or no to proceed with the installation. Type y to choose yes. Once you enter y and press enter the download process for all required packages should begin.  Unfortunately, we received the error below after entering y as shown in the below picture.

install SQL Server tools error

The prompt suggests you insert the correct medium for the given repository and type y to proceed or n to cancel. I typed n to cancel this setup because the installation medium is already in the package repository as we have checked in the above steps. Once you enter no to cancel the operation you will be get the below error details.

install SQL Server tools error

Step 5:

I researched this issue and found the solution. The solution is to disable the given repository "SLES12-SP2-12.2-0". We can see its status is shown as "Enabled" in the 4th image of step 3. We need to open the software repositories window on the SUSE Linux server to get this done.

I logged into the SUSE Linux server locally in GUI mode and clicked on "Applications" as shown in the below screenshot. Once you click on the "Applications" button you will get a number of options to choose. Click on the "Terminal" option to launch the Administrator settings window.


Step 6:

Once you click on the  "Terminal" option, it will ask you to enter the root password. Enter the root password and press the Continue button to proceed.

root password for Terminal

Step 7:

Once your root password is authenticated, the "Administrator Settings" window will appear on your screen as shown in the below image. You can see there is shortcut for software repositories in first row of this window. Click on this option to launch the software repositories.

Administrator Settings

Step 8:

Once you click on "Software Repositories", a window name "YaST2" will appear on your screen as shown in the below image. YaST is a powerful installation and configuration tool for SUSE Linux. You can see all the software devices and their details in this window.

Yast2 screen

Step 9:

Now click on 3rd line as shown in the above image. This is where we are getting the error about the CD. If you look at the error image it is saying to insert medium for "SLES12-SP2-12.2-0" and the error details contain the same path and device details which is highlighted in the red box below.

Yast2 screen

Step 10:

You can see this repository/device is marked as enabled in the above image. This has to be unchecked and disabled to fix this issue. Please uncheck the "Enabled" as shown below to proceed.

uncheck enabled in Yast2 screen

Click the OK button to apply this change and close this window. If you do not click on the OK button then you will get the below error while installing the SQL Server tools.

System management is locked by the application with pid 50217 (/usr/lib/YaST2/bin/y2base). 
Close this application before trying again. 

Step 11:

Now go ahead and install the SQL Server Tools again. This time you will be able to install it successfully as shown in the below image.

install SQL tools

Step 12:

Once the SQL Server Tools are installed you can validate the installation by running sqlcmd in at the command prompt. If sqlcmd displays the details for the utility that means this has been installed successfully.

#check sqlcmd utility.

We can see that now sqlcmd command is recognized by the SUSE Linux server and the output of this command shows that sqlcmd is installed and ready for use.

sqlcmd validation
Next Steps

sql server categories

sql server webinars

subscribe to mssqltips

sql server tutorials

sql server white papers

next tip

About the author
MSSQLTips author Manvendra Singh Manvendra Singh has over 5 years of experience with SQL Server and has focused on Database Mirroring, Replication, Log Shipping, etc.

This author pledges the content of this article is based on professional experience and not AI generated.

View all my tips

Comments For This Article

get free sql tips
agree to terms