,

Top 10 Commands with explanation of “dpkg” command

Posted by

Limited Time Offer!

For Less Than the Cost of a Starbucks Coffee, Access All DevOpsSchool Videos on YouTube Unlimitedly.
Master DevOps, SRE, DevSecOps Skills!

Enroll Now

The dpkg (Debian Package Manager) command is used in Debian-based Linux distributions (such as Ubuntu, Debian, and Kali Linux) for installing, removing, and managing .deb packages. Unlike apt, dpkg does not resolve dependencies automatically but provides more low-level package control.


1. Install a .deb Package

sudo dpkg -i package.deb

โœ” What it does:

  • -i โ†’ Installs the .deb package.
  • Does not handle missing dependencies.

๐Ÿ“Œ Example:

sudo dpkg -i google-chrome-stable_current_amd64.deb

๐Ÿ“Œ If dependencies are missing, fix them using:

sudo apt-get install -f

๐Ÿ’ก Use when manually installing .deb files.


2. Remove a Package

sudo dpkg -r package-name

โœ” What it does:

  • -r โ†’ Removes a package but keeps its configuration files.

๐Ÿ“Œ Example:

sudo dpkg -r google-chrome-stable

๐Ÿ“Œ To remove configuration files as well, use -P:

sudo dpkg -P google-chrome-stable

๐Ÿ’ก Use -r for uninstalling but keeping settings. Use -P to erase everything.


3. List Installed Packages

dpkg -l

โœ” What it does:

  • -l โ†’ Lists all installed packages.

๐Ÿ“Œ Example Output:

ii  google-chrome-stable  95.0.4638.69-1 amd64
ii  git                   2.34.1         amd64

๐Ÿ“Œ To check if a specific package is installed:

dpkg -l | grep chrome

๐Ÿ’ก Helpful when checking for installed packages before updating or removing them.


4. Get Information About a Package

dpkg -s package-name

โœ” What it does:

  • -s โ†’ Shows detailed information about an installed package.

๐Ÿ“Œ Example:

dpkg -s git

๐Ÿ“Œ Output Example:

Package: git
Status: install ok installed
Version: 2.34.1
Architecture: amd64
Description: Distributed version control system

๐Ÿ’ก Useful for checking version, status, and description.


5. List Files Installed by a Package

dpkg -L package-name

โœ” What it does:

  • -L โ†’ Lists all files installed by a package.

๐Ÿ“Œ Example:

dpkg -L apache2

๐Ÿ“Œ Sample Output:

/.
/etc/apache2
/etc/apache2/apache2.conf
/usr/sbin/apache2
/usr/lib/apache2

๐Ÿ’ก Helpful for knowing where a package installs its files.


6. Find the Package That Owns a File

dpkg -S /path/to/file

โœ” What it does:

  • -S โ†’ Finds which installed package a specific file belongs to.

๐Ÿ“Œ Example:

dpkg -S /usr/bin/git

๐Ÿ“Œ Output:

git: /usr/bin/git

๐Ÿ’ก Useful for identifying which package installed a file.


7. Reconfigure a Package

sudo dpkg-reconfigure package-name

โœ” What it does:

  • Reconfigures a package after installation.
  • Used to reset settings or fix issues.

๐Ÿ“Œ Example:

sudo dpkg-reconfigure tzdata

๐Ÿ“Œ Allows you to select the correct timezone again. ๐Ÿ’ก Great for reconfiguring system-wide settings.


8. Extract .deb Package Without Installing

dpkg-deb -x package.deb output-directory/

โœ” What it does:

  • -x โ†’ Extracts package contents without installing.

๐Ÿ“Œ Example:

dpkg-deb -x google-chrome-stable_current_amd64.deb chrome-files/

๐Ÿ’ก Useful for inspecting package files before installation.


9. Check if a Package is Installed

dpkg -l | grep package-name

โœ” What it does:

  • Searches for a package in the installed package list.

๐Ÿ“Œ Example:

dpkg -l | grep firefox

๐Ÿ“Œ Output:

ii  firefox  96.0+build1-0ubuntu amd64

๐Ÿ’ก Useful for verifying if a package is already installed.


10. Fix Broken Packages

sudo dpkg --configure -a

โœ” What it does:

  • Completes installation for partially installed packages.

๐Ÿ“Œ Example Error:

dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem.

๐Ÿ“Œ Fix it with:

sudo dpkg --configure -a

๐Ÿ’ก Run this if package installation was interrupted.


Final Thoughts

  • dpkg is low-level and does not resolve dependencies automatically (use apt for that).
  • Itโ€™s useful for managing .deb files manually, checking installation details, and fixing issues.
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x