How to install a .bin file using SSH on Ubuntu/CentOS Print

  • 72

.bin files are self-extracting Linux binary installers, commonly used for distributing server software such as Java, database servers, and commercial applications. This guide covers the complete process from downloading the file through to a successful installation.

Step 1: Get the .bin file onto your server

If you need to download the .bin file directly to your server, use wget or curl rather than uploading it from your computer:

wget https://example.com/path/to/installer.bin

Or with curl:

curl -O https://example.com/path/to/installer.bin

If you already have the file locally, upload it to your server via SFTP using FileZilla or WinSCP before continuing.

Step 2: Navigate to the file location

cd /path/to/your/file

For example, if you downloaded the file to your home directory:

cd ~

Confirm the file is there:

ls -lh *.bin

Step 3: Make the file executable

chmod +x installer.bin

Replace installer.bin with the actual filename. Without this step, Linux will refuse to run the file and return a "Permission denied" error.

Step 4: Run the installer

./installer.bin

The installation script will start. Many installers are interactive and will ask you to accept a licence agreement, choose an installation directory, and set configuration options. Follow the prompts as they appear.

Running a non-interactive (silent) installation

Some .bin installers support a silent mode for automated installations. Common flags include:

./installer.bin --silent
./installer.bin -q
./installer.bin --nox11

The --nox11 flag is particularly useful on headless servers where there is no graphical display available. Check the installer's documentation for the correct flag, or run ./installer.bin --help to see available options.

Running the installation in the background

For long-running installations, use nohup to keep the process running even if your SSH session disconnects:

nohup ./installer.bin > install.log 2>&1 &

This runs the installer in the background and writes all output to install.log. Monitor progress with:

tail -f install.log

Alternatively, run it inside a Screen session, see our guide: Keeping your SSH session running with Screen.

Troubleshooting

Permission denied

You have not made the file executable, or you need root privileges. Run chmod +x installer.bin first, then try again. If the installer requires root access, prefix with sudo:

sudo ./installer.bin

Cannot execute binary file: Exec format error

The .bin file was compiled for a different processor architecture. If your server is 64-bit (x86_64) and the installer is 32-bit, you may need to install 32-bit compatibility libraries:

# Ubuntu/Debian
sudo apt-get install lib32z1 lib32ncurses5

# CentOS/AlmaLinux/RHEL
sudo dnf install glibc.i686

Missing dependencies or shared libraries

If the installer fails with errors about missing libraries (e.g. error while loading shared libraries), install the required packages. The error message usually names the missing library. Search for the package that provides it:

# Ubuntu/Debian
apt-cache search libname

# CentOS/AlmaLinux
dnf provides libname.so

Installer starts but immediately exits

Try running with --nox11 or --nogui flags if you are on a headless server without a graphical display. Some installers attempt to launch a GUI and fail silently when no display is available.

Verifying the installation

After installation completes, verify it was successful by checking the application's version or status:

# Check if a binary was installed to PATH
which applicationname

# Check the version
applicationname --version

# Check if a service is running
sudo systemctl status servicename

Was this answer helpful?

« Back