APT, short for Advanced Package Tool is a popular package manager that handles the installation and removals of software on many Linux distribution such as Debian, Ubuntu, etc. Sometimes, you will encounter the following error while trying to run an apt
command :
E: Could not get lock /var/lib/dpkg/lock – open (11 Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?
Code language: PHP (php)
There are many causes to this error, and you will see more of them in recent Ubuntu versions. Because the system is more automated, it can automatically use the APT command to check and update necessary packages. The software that can use the APT command in Ubuntu are:
- Software Center
- Update Manager
- Apt link installer
- The command apt-get or aptitude command line utilities.
- Synaptic Package Manager
This article is going to explain the cause of this problem and how to quickly fix it.
Why does “Unable to lock the administration directory (/var/lib/dpkg/)” happens?
For safety reasons, apt
only allows one installation going at any given time. During the installation and removal of packages, apt
stores its status in /var/lib/dpkg
.
Before any other apt
process begin an operation, it will check the path to see whether the system is busy or not.
Unable to lock the administration directory (/var/lib/dpkg/)
means that there is an operation on the system going underway and your current command cannot proceed.
1. Fastest solution : Restart the computer
Most of the time, the lock on /var/lib/dpkg/
is because the system is updating itself. So if you’re not in the middle of a productivity session and cannot be interrupted, one simple restart could solve the problem.
You can do it right inside the terminal by typing
sudo reboot
2. Safe solution : Wait it out
If you’re not in a hurry, the safest option in this situation is to wait until the current process that are using /var/lib/dpkg
completed. After that, you can proceed with whatever you want. Most of the time, an update takes place in about under 10 minutes (with a decent internet connection).
Curious about what is taking over your system? Type this in the terminal to find out :
ps aux | grep apt
3. Kill the processes that are using /var/lib/dpkg
Find out which process is using /var/lib/dpkg
If two solutions above does not fix the problem, try examining the running process:
ps aux | grep -i apt
The command will look for any apt process running and its name, command so that you can figure out what is happening. Look for something like this :
/usr/lib/apt/apt.systemd.daily update

In this case, apt.systemd.daily
indicates that the system is doing the daily update. No action is required in this situation other than wait for it to finish.
Sometimes, you will see other things comes up in the terminal :
root 2651 0.0 0.0 72948 4312 pts/0 S+ 15:03 0:00 sudo apt-get remove docker -y
Code language: JavaScript (javascript)
The output above means apt
is in the middle of removing docker
but then something happens and it hangs there. Notice 2651
in the output as it is the process ID, you will need this later.
If no apt
process comes up in the terminal output, you need to check for dpkg
processes:
ps aux | grep -i dpkg
Look for something suspicious and remember the PID of the process like mentioned above.
Kill the process that is hanging
Once you’ve obtained the PID of the process that is hanging in the middle of an operation, you could terminate it using the following command
sudo kill <process_id>
Code language: HTML, XML (xml)
If it doesn’t do the trick, then force it to stop by sending -9
option
sudo kill -9 <process_id>
Code language: HTML, XML (xml)
Delete lock files
apt
uses several lock files to store its status
- /var/lib/dpkg/lock
- /var/lib/dpkg/lock-frontend
- /var/lib/apt/lists/lock
- /var/cache/apt/archives/lock
As you’ve ended the process when it wasn’t finished, the lock files doesn’t get cleaned properly so we must do it manually by typing these in the terminal:
sudo rm /var/lib/dpkg/lock
sudo rm /var/lib/dpkg/lock-frontend
sudo rm /var/lib/apt/lists/lock
sudo rm /var/cache/apt/archives/lock
Code language: JavaScript (javascript)
After removing these lock files, the error should be fixed.