7 Useful Linux Commands to Install and Manage Software
Last updated on February 20, 2025
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.
Table of Contents
- Package Managers For your Distribution
- Package Management Tools
- snap – For self-contained applications
- flatpak – For desktop applications
- pip – A package installer for Python
- make – To install software from source code
- cURL – For installing scripts through the CLI
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 upgradeNow, 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:
- 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.
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.
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 removeflatpak – For desktop applications
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 uninstallFlatpak 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 listPip also allows you to create virtual environments, which lets you install packages in isolated environments without affecting your system, something wonderful for Python devs.
make – To install software from source code
Always Forgetting Linux Commands?
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 installMost 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.
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 rust, you can use:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shNote: 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.
More Tips & Tricks
Linux
- NEW Compress or Extract Files in Terminal
- 25 Basic Linux Commands For Beginners
- How to use 'APT'
- Change Login Background (Mint 22)
- Free Linux Manuals
- Linux Commands from A-Z: free downloadable PDF
- Linux Distros & where to get them
- How to Install Linux Mint
- Dual Booting Windows & Linux
Raspberry Pi
- NEW Raspberry Pi NAS
- Dual Boot the Pi
- NVMe SDD on a Pi
- Clone your Pi SD Card
Free Ebooks
- Crochet
- Knitting
- Loom Knitting
- Cross Stitch
- Windows Manuals
- Linux Manuals
- Raspberry Pi
- Lua
- HTML, CSS & JS
Handy Tools

Learning Linux


Watch the Series.

Watch the Series.
It's FOSS RSS
- This Bachelor's Thesis lets You Build Your Own Kindle Alternative eBook Reader
- New Arch Installer Update Adds U2F Authentication and Bluetooth Support
- wget Removed from Ubuntu Server 25.10 Default Install (And No, It's Not Because of Rust)
- NordVPN Takes on Phone Scammers with Scam Call Protection Feature
- Arch Linux Users at Risk Again as AUR Hit by Another RAT
- Say Goodbye to Microsoft Authenticator! Proton Just Introduced a Solid Alternative
- CISCO Giften AGNTCY Project to Linux Foundation to Standardize AI Agent Communication
- Hands-On with Onlook: The AI-Powered Visual Editor That Blends Code and Design
- Best Linux Laptop of 2025? TUXEDO InfinityBook Pro 15 (Gen10) Launches
- Latest Linux Kernel 6.16 is all Focused on AMD, Intel, and NVIDIA
- How Does OpenMandriva Lx 'Rock' Stack Against Fedora? My Thoughts
- Mastodon Wants Funding and Won't Mind Nudging You for Donation
- Irony? AI-focused Open Source Code Editor Zed Lets You Disable All AI Features
- I Tried Proton's Lumo AI, a Private Alternative to ChatGPT
- Someone Slipped a RAT into Arch Linux!