Package versions track software releases and updates in Linux distributions. Understanding version management is crucial for maintaining system stability, security, and compatibility when installing, upgrading, or troubleshooting software packages.
Key Concepts
- Version Number: Identifies specific software release (e.g., 2.4.1)
- Package Repository: Central storage for software packages
- Dependencies: Required packages for software to function
- Upgrade vs Update: Upgrade changes versions, update refreshes package lists
- Semantic Versioning: MAJOR.MINOR.PATCH format
- Release Channels: Stable, testing, unstable package streams
Command Syntax
Debian/Ubuntu (APT)
apt list [options] [package-name]
apt-cache [command] [package-name]
Red Hat/CentOS (YUM/DNF)
yum list [options] [package-name]
dnf list [options] [package-name]
Common Options
APT Options
--installed - Show only installed packages
--upgradable - Show packages with available upgrades
--all-versions - Show all available versions
YUM/DNF Options
installed - List installed packages
available - Show available packages
updates - Show packages with updates
Practical Examples
Example 1: Check installed package version
|
|
Shows currently installed version of nginx
Example 2: View available versions
|
|
Displays all available versions in repositories
Example 3: Check specific package info
|
|
Shows comprehensive package details and version
Example 4: Find upgradable packages
|
|
Lists packages with newer versions available
Use Cases
- Security Updates: Check for patches and security fixes
- Compatibility Planning: Ensure software versions work together
- System Auditing: Document installed software versions
- Rollback Planning: Know current versions before upgrades
- Dependency Resolution: Verify required package versions
Related Commands
dpkg -l - List installed packages (Debian)
rpm -qa - Query all installed packages (Red Hat)
apt-cache search - Search for packages
yum search - Search package repositories
apt upgrade - Upgrade installed packages
yum update - Update system packages
Tips & Troubleshooting
- Hold packages to prevent unwanted updates:
apt-mark hold package-name - Check package sources if versions seem outdated:
cat /etc/apt/sources.list - Clear package cache if getting stale information:
apt updateoryum clean all - Version conflicts: Use
apt-cache dependsto check dependencies - Pin specific versions in
/etc/apt/preferencesfor critical stability - Always backup before major version upgrades
- Test upgrades in non-production environments first