7 Useful Linux Commands to Install and Manage Software
Linux is an operating system that can do so many things that it can initially feel overwhelming, especially when managing software. There are a lot of commands, and it’s unclear which does what, but don’t worry, I’m here to explain and make things easier for you.
The most useful Linux commands for installing and managing software include tools designed for package installation, updates, and removals, whether they come by default in the distribution, are cross-platform or allow source code compilation.
In this article, we’ll explore seven essential commands that make managing software on Linux easier. It doesn’t matter if you are a beginner, or if you are looking to improve your skills, these tools will help you handle packages like an expert.
If you need help with Linux, I’ve got something that can help you right away!
Download my free Linux commands cheat sheet – it’s a quick reference guide with all the essential commands you’ll need to get things done on your system. Click here to get it for free!
Package Managers For your Distribution
A package manager is a tool that simplifies installing, updating, and removing software on your system. It connects to online repositories, retrieves the necessary files, resolves dependencies, and ensures smooth software installation.

Let’s talk about the most popular of the list first. On more than one occasion, you’ve likely come across this package manager in some tutorial, and of course, it is the preferred option for any Debian/Ubuntu-based distribution, yes, we are talking about APT.
Some of the key commands of APT we can mention are:
- Install software:
sudo apt install - Remove software:
sudo apt remove - Update your system:
sudo apt update && sudo apt upgrade

Now, we can talk about other package managers in case you use another distribution, because remember, it depends on the system you use. Although there are different ones, each one has a similar functionality:
Grab This Cheat Sheet!
I've compiled the must-know commands in a simple PDF for quick reference.
Download now
You might also like: Don’t waste money — read this guide before picking your Raspberry Pi.
- DNF – For Fedora, CentOS, and RHEL-based systems.
- zypper – For openSUSE distributions.
- pacman – For Arch Linux and its derivatives.
Each package manager uses a slightly different syntax, but the basic actions like installing, removing, and updating software are similar.
Related: How to Set Up Automatic Updates on Linux (Keep Your System Safe)

If you’re new to the Linux command line, this article will give you the most important Linux commands to know, plus a free downloadable cheat sheet to keep handy.
Package Management Tools
Package management tools are used for handling software installation through package files rather than repositories. They’re useful when internet access is limited or when you’re working with custom software packages unavailable in standard repositories.

For Debian-based systems, .deb files are the standard package format. Using the dpkg tool, you can manually install or remove these packages without internet access.
- Install a package:
sudo dpkg -i <package>.deb - Remove a package:
sudo dpkg -r <package>
For RHEL-based distributions (like Fedora and CentOS), .rpm files are the equivalent. The dnf tool allows manual installation, inspection, and removal of these packages.
Grab This Cheat Sheet!
I've compiled the must-know commands in a simple PDF for quick reference.
Download now
In both cases, these tools offer a solution for installing packages that aren’t available in standard repositories, making them essential when a package manager from the previous section isn’t an option.
snap – For self-contained applications
Snap is a cross-platform package manager that comes preinstalled on some distributions like Ubuntu, Manjaro, and ZorinOS, but it can also be added to almost any Linux system.

One of Snap’s advantages is its built-in store and optional GUI, making software installation easy even for beginners. But it is also possible to use the CLI to install software like any package manager.
- Install:
sudo snap install - Update:
sudo snap refresh - Remove:
sudo snap remove
You can find more information about installing and using Snap here. Now, if you are using a Debian/Ubuntu-based distribution, and have doubts about whether to use snap or apt, we have a comparison that can help you choose.
flatpak – For desktop applications
Grab This Cheat Sheet!
I've compiled the must-know commands in a simple PDF for quick reference.
Download now
Flatpak is a package manager compatible with all distributions, similar to what we saw before, isn’t it? Well, the difference between them lies in their ideology and operation. Flatpak is open-source and decentralized.

You can also use flatpak in a GUI natively in programs like Gnome Software and Discover that come by default in desktop environments like KDE and GNOME. But you can also use it with commands without any problem:
- Install a software:
flatpak install - Run an installed software:
flatpak run - Remove a software:
flatpak uninstall
Flatpak is a great alternative when you encounter software compatibility issues with other package managers, as it often provides better support for certain applications. Oh, and of course, if you want something flexible and if open source is your philosophy, then flatpak will fit for you.
pip – A package installer for Python
If you work with Python, pip is an essential tool for managing libraries and dependencies. It simplifies installing, updating, and removing Python packages, making it a must-have for developers.

Key Commands:
- Install:
pip install - Uninstall:
pip uninstall - List installed packages:
pip list
Pip also allows you to create virtual environments, which lets you install packages in isolated environments without affecting your system, something wonderful for Python devs. If you’re working on Python projects, check out our detailed guide on how to use pip effectively.
make – To install software from source code
Grab This Cheat Sheet!
I've compiled the must-know commands in a simple PDF for quick reference.
Download now
Now, let’s go to a more manual tool. Make is a tool that helps you compile and install software through source code. It automates the build process by reading instructions from a “Makefile“, which contains the machine steps required to compile and link the software.

Steps to build software from source code:
- Prepare the software:
./configure - Compile:
make - Install:
make install
Most of the time, you’ll use make when working with open-source projects from platforms like GitHub. Each project has different requirements and may need additional dependencies before compiling. Always read the project’s documentation before proceeding.
Note: This method is recommended for experienced Linux users, because troubleshooting is often required when dealing with compilation errors.
If you prefer watching videos instead of reading tutorials, you’ll love the RaspberryTips Community. I post a new lesson every month (only for members), and you can unlock them all with a 7-day trial for $1.
cURL – For installing scripts through the CLI
Finally, we have cURL, a tool primarily used for downloading files rather than installing software. It can also serve as an indirect method for software installation since it retrieves scripts that can be executed on the same command line.

One common use case is fetching installation scripts and piping them to bash for execution. While this method is not always recommended due to security concerns, some official documentation provides quick installations in this way.
For example, to install the Rust programming language, you can use:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Note: Be careful when using this method! Always check the source where you are getting the script from, as it may contain malicious or dangerous content if it is not a trusted site.
Each of these tools provides a different way to install and manage software, whether through a distribution’s package manager, universal package solutions, or manual source compilation.
Whenever you're ready, here are other ways I can help you:
Master Linux Commands: Overwhelmed with Linux commands? This book is your essential guide to mastering the terminal. It includes practical tips, real-world examples, and a bonus cheat sheet to keep by your side.
The RaspberryTips Community: Need help with Linux or want to chat with people who actually get it? Join the RaspberryTips Community and get access to private forums, exclusive lessons, and direct support (try it for just $1).
You can also find all my recommendations for tools and hardware on this page.
