How to Solve “Sub-process /usr/bin/dpkg returned an error code (1)” In Ubuntu

It’s not uncommon to run into an issue of broken packages in Ubuntu and other Debian-based distributions. Sometimes, when you upgrade the system or install a software package, you may encounter the ‘Sub-process /usr/bin/dpkg returned an error code’ error.

The crucial phrase in this error is /usr/bin/dpkg, which points to the dpkg package installer used in Linux. A package installer manages software, updates, and dependencies. If it becomes corrupted, any attempt to install new software can trigger this error message.

For example, a while back, I tried to upgrade to Ubuntu 22.04 and I bumped into the dpkg error as shown below.

Errors were encountered while processing:
google-chrome-stable
E: Sub-process /usr/bin/dpkg returned an error code (1)

This indicates that the google-chrome-stable package is either broken or corrupt. There are a few workarounds to this problem, so don’t throw in the towel yet or discard your system.

Fixing Sub-process /usr/bin/dpkg returned an error code (1)

Let’s address the issue with this broken package error. I’ll walk you through several methods, starting with the simpler ones. These initial steps are straightforward and don’t require much effort.

Method 1: Reconfiguring dpkg Package Database

One of the triggers of this error is a corrupted dpkg package database. This can be caused by the sudden interruption of the installation of a software package. Reconfiguring the database is one way to resolve this issue.

To do this, simply execute the command:

sudo dpkg --configure -a

This reconfigures the unpacked packages that were not installed during the installation process.

Method 2: Force Install the Troublesome Package

Sometimes, errors can occur during the installation of software packages. When such happens, you can force install the package using the -f option as shown.

sudo apt install -f
OR
sudo apt install --fix-broken

The -f option & --fix-broken can be interchangeably used to fix broken dependencies resulting from an interrupted package or cached package download.

Method 3: Remove or Purge the Bad or Corrupted Software Package

If the first two solutions did not fix the problem, you can remove or purge the problematic software package as shown.

sudo apt remove --purge package_name

For example, in my case, purging the Google Chrome package fixed the issue.

sudo apt remove --purge google-chrome-stable

Then invoke the commands below to remove all the old, unused, and unnecessary packages which also frees up space on your hard drive.

sudo apt clean
sudo apt autoremove

Method 4: Remove all the Files Associated with the Package

Lastly, you can manually remove all the files associated with the troublesome package. First, you need to find these files which are located in the /var/lib/dpkg/info directory as shown.

sudo ls -l /var/lib/dpkg/info | grep -i package_name

After listing the files, you can move them to the /tmp directory as shown

sudo mv /var/lib/dpkg/info/package-name.* /tmp

Alternatively, you can use the rm command to manually remove the files.

sudo rm -r /var/lib/dpkg/info/package-name.*

Finally, update the package lists as shown:

$ sudo apt update

You can thereafter give it another shot by reinstalling the software package.

Conclusion

This type of dpkg error points to an issue with the package installer usually caused by the interruption of an installation process or a corrupt dpkg database.

Any of the above-mentioned solutions should fix this error. If you have come this far, then we hope that the issue has been successfully resolved and that you were able to reinstall your software package.

If any of the methods worked for you, please specify which one resolved the issue. If you managed to fix this error using a different method, kindly share it to help others who might be experiencing the same issue.

James Kiarie
This is James, a certified Linux administrator and a tech enthusiast who loves keeping in touch with emerging trends in the tech world. When I'm not running commands on the terminal, I'm taking listening to some cool music. taking a casual stroll or watching a nice movie.

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

Leave a Reply to Leonard Ngowo Cancel reply

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.