LWM-Linux/03 - Package and Process Management/Package Management with apt-get (Debian Based).md

102 lines
2.5 KiB
Markdown

# Package Management with apt-get (Debian-Based Systems)
### 1. Introduction to apt-get
apt-get is a command-line tool for handling packages in Debian-based Linux distributions. It's part of the APT (Advanced Package Tool) system, which manages software installation, upgrade, and removal.
### 2. Updating Package Lists
Before installing or upgrading packages, it's important to update your local package lists:
`sudo apt-get update`
This command synchronizes your package lists with the repositories.
### 3. Upgrading Installed Packages
To upgrade all installed packages to their latest versions:
`sudo apt-get upgrade`
For a more aggressive upgrade that might remove obsolete packages:
`sudo apt-get dist-upgrade`
### 4. Installing Packages
To install a new package:
`sudo apt-get install package_name`
You can install multiple packages at once:
`sudo apt-get install package1 package2 package3`
### 5. Removing Packages
To remove a package:
`sudo apt-get remove package_name`
To remove the package along with its configuration files:
`sudo apt-get purge package_name`
### 6. Searching for Packages
To search for a package:
`apt-cache search keyword`
### 7. Displaying Package Information
To show detailed information about a package:
`apt-cache show package_name`
### 8. Cleaning Up
To remove unnecessary packages:
`sudo apt-get autoremove`
To clear out the local repository of retrieved package files:
`sudo apt-get clean`
### 9. Handling Dependencies
apt-get automatically handles dependencies. When you install a package, it will also install any required dependencies.
### 10. Working with Package Sources
Package sources are defined in `/etc/apt/sources.list` and in files under `/etc/apt/sources.list.d/`. You may need to edit these to add or remove repositories.
### 11. Holding Packages
To prevent a package from being automatically upgraded:
`sudo apt-mark hold package_name`
To remove the hold:
`sudo apt-mark unhold package_name`
### 12. Simulating Operations
You can simulate operations without actually performing them using the `-s` flag:
`sudo apt-get -s install package_name`
This is useful for seeing what would happen without making any changes.
### 13. Troubleshooting
If you encounter issues, you can try:
- Updating package lists: `sudo apt-get update`
- Fixing broken dependencies: `sudo apt-get -f install`
- Reconfiguring packages: `sudo dpkg-reconfigure package_name`
Remember to always be cautious when using sudo, as these commands can affect your system's stability if used incorrectly.