Caio Favero
Caio Favero

Reputation: 2318

Amazon Linux: "apt-get: command not found"

I'm trying to install an Apache server on my AWS instance. However, it seems that it doesn't have the apt package installed.

I googled and all I found was some broken links to this package. I am using PuTTY on a Windows machine if that information helps.

I currently have low to none experience in Linux environments.

I am running the following version of Linux:

Linux ip-172-31-37-96 3.14.48-33.39.amzn1.x86_64 #1 SMP Tue Jul 14 23:43:07 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

How can I fix this problem?

Upvotes: 191

Views: 1015201

Answers (12)

ceejayoz
ceejayoz

Reputation: 180126

If you're using Amazon Linux it's CentOS-based, which is RedHat-based. RH-based installs use yum not apt-get. Something like yum search httpd should show you the available Apache packages - you likely want yum install httpd24.

Note: Amazon Linux 2 has diverged from CentOS since the writing of this answer, but still uses yum.

Upvotes: 385

CodingEra
CodingEra

Reputation: 1827

There can be two issues:

  1. Your are trying the command on a machine that does not support the apt-get command because apt-get is only suitable for Linux-based Ubuntu machines; for Mac, try the apt-get equivalent such as Homebrew (executable brew)

  2. The other issue can be that your installation was not completed properly, so:

The short answer

Reinstall Ubuntu from a live CD or USB stick.

The long version:

The long version would be a waste of your time: your system will never be clean, but if you insist you could try:

Copying everything (missing), except for the /home folder, from the live CD or USB to your hard disk drive.

Or

Do a reinstall or repair over the broken system again with the live CD or USB stick.

Or

Download the .deb file for apt-get and install as explained in the previous posts.

I would definitely go for a fresh new install as there are so many things to do and so little time.

Upvotes: 2

Vijay
Vijay

Reputation: 187

Use YUM with sudo for Amazon Linux 2 AMI (HVM), SSD Volume Type.

Example: Try to install WSGI with Apache at an AWS instance:

sudo yum install python3-pip apache2 libapache2-mod-wsgi-py3

Upvotes: 2

Sweet Chilly Philly
Sweet Chilly Philly

Reputation: 3219

This answer is for complete AWS beginners:

I had this issue, but it was because I was trying to run a command from a tutorial inside my Mac computer. I actually needed to SSH into my AWS machine, and then run the same command there. Ta Da, it worked:

Enter image description here

Click this button in your EC2 instance, to be able to copy the SSH command. Set up your SSH keys ("Amazon EC2 key pairs and Linux instances") and then you can SSH into your machine.

Once here, you can run your sudo apt-get command.

Upvotes: 2

0xC0DEGURU
0xC0DEGURU

Reputation: 1792

For an openSUSE Linux distribution:

sudo zypper install <package>

For example:

sudo zypper install git

Upvotes: 0

abcd_win
abcd_win

Reputation: 107

This is one of the commands which you can run to install apt-get:

wget http://security.ubuntu.com/ubuntu/pool/main/a/apt/apt_1.4_amd64.deb

Upvotes: 0

cmthakur
cmthakur

Reputation: 2356

I faced the same issue regarding apt-get: command not found. Here are the steps how I resolved it on Ubuntu 16.04 (Xenial Xerus):

  • Search the appropriate version of apt from here (apt_1.6.13_amd64.deb for Ubuntu 16.04)

  • Download the apt.deb

wget http://security.ubuntu.com/ubuntu/pool/main/a/apt/apt_1.6.13_amd64.deb

  • Install the apt.deb package

sudo dpkg -i apt_1.6.13_amd64.deb

Now we can easily run

sudo apt-get install htop

Upvotes: 5

Vishrant
Vishrant

Reputation: 16688

Check the Linux distribution. apt-get works in a Debian-based distribution whereas yum works in a Fedora-based distribution.

Ref: How to know the distribution name. Execute command cat /etc/*-release

It is also possible your system administrator does not permit you (or did not put you in the group of users who have sudo permissions) to execute apt-get, but if you have sudo access, try to execute with sudo apt-get <package_name> if Debian or yum install <package_name> if you are using Fedora.

Upvotes: 7

Kapil R
Kapil R

Reputation: 329

Try to install your application by using a YUM command:

yum install application_name

Upvotes: 32

DejaVuSansMono
DejaVuSansMono

Reputation: 797

You need to manually download the APT .deb package. Then run dpkg and it should install.

Upvotes: 0

Hemanth Vatti
Hemanth Vatti

Reputation: 85

Try running

sudo amazon-linux-extras install nginx1

Nginx is also available on Amazon Linux Extras.

Upvotes: 0

Nik
Nik

Reputation: 3225

apt–get: command not found

For Debian based Linux distributions:

Try to use sudo apt install <package> instead of the usual sudo apt-get install <package>

From man apt

apt provides a high-level commandline interface for the package management system. It is intended as an end user interface and enables some options better suited for interactive usage by default compared to more specialized APT tools like apt-get(8) and apt-cache(8).

Upvotes: 1

Related Questions