I run pamac update --no-aur but got the above message and the update process was stuck there. I have removed /var/lib/pacman/db.lck and tried rebooting, but the same problem happens. It happened after the last update and orphans clean up.
The system is Manjaro with KDE Plasma.
Could you perhaps be a little more verbose with your description of the issue?
At this point, the warning message is clear – another package manager is active, or hasn’t yet terminated.
Sometimes, if another package manager – let’s say for example – pamac-manager (Add/Remove Software) is still checking for updates, pacman will give that message.
Usually, closing the other package manager, or waiting for it to finish, will allow pacman to continue.
Tell us if you have already tried this, and what the result was. Also tell use everything else you have tried to resolve your issue. Always provide the command used and the output from that command – all of it.
Please provide your system information as pre-formatted text, in accordance with forum guidelines, and give as much detail as possible regarding your problem.
[Mini-HowTo] Provide System Information
Basic details provided by *-fetch type apps might give enough information for someone wishing to buy a computer, however, for Support purposes it’s best to ask your system directly.
Output of the inxi command will generate more useful and detailed information for those who may wish to help:
Suggested inxi command (use either):
inxi -zv8 |
(short-form) |
inxi --filter --verbosity=8 |
(long-form) |
- man inxi (The
inximanual)
Command output should be presented as pre-formatted text in accordance with forum guidelines. ![]()
Running inxi within a chroot environment
- Add
--color=0to the long-form command, or… - Change the short-form command to
inxi -zv8c0
Your privacy is respected
[Mini-HowTo] Present code or command output
Note: Grave accent (or, backtick) characters are used. ![]()
For inline code or to show a single command:
- please follow this simple example:
code here.
For multi-line command output:
- place text beween two rows of three (```) backtick characters to form a scrollable text box, or …
- use the </> button in the Compose window to achieve the same result.
The empty row between these rows of backtick characters is where to paste any multi-line command output (such as inxi).
An example of a pre-formatted text enclosure:
What is a Quark?
A. In Physics, an elementary particle and fundamental constituent of matter.
B. A character from the Star Trek: "Deep Space Nine" television series.
C. A soft, creamy, usually unsalted cheese traditional to central Europe.
I edited my post however I have no idea how to make it more informative than its current state. I have closed the GUI and it was not running an install. I clicked quit on its tray icon but its icon won’t go away, probably because there are packages to be updated.
To start with, you could provide the system information that was specifically requested, formatted using inxi -zv8!
I solved it. It turns out that I really need to wait until pamac’s GUI is closed completely (by quitting it and ensuring that its icon on the icon tray disappear). I thought the GUI was not the issue because it’s essentially pamac, and not “another package manager”, but I was wrong.
The pamac-daemon.service runs at system start and this will trigger a check for updates.
It is quite possible that your action collide with the pamac-daemon started by the service.
Usually the lock is released after a few seconds.
So do not - blinkdly - remove the db.lck file, unless you are absolute sure it is a dead file.
How do I tell it is a dead file already?
Check the time stamp
stat /var/lib/pacman/db.lck
The lock file is to ensure two invocations of a package manager will not run side by side as this may cause inconsistencies in the package information.
For the sake of demonstration, I run the command and then wait at the continue prompt
$ echo $(date); sudo pacman -Syu
fre 17 jul 17:20:42 CEST 2026
:: Synchronizing package databases...
core is up to date
[...]
Total Download Size: 81,55 MiB
Total Installed Size: 254,68 MiB
Net Upgrade Size: 5,49 MiB
:: Proceed with installation? [Y/n]
open another terminal and run
$ stat /var/lib/pacman/db.lck
File: /var/lib/pacman/db.lck
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 259,2 Inode: 50724981 Links: 1
Access: (0000/----------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2026-07-17 17:20:42.735623475 +0200
Modify: 2026-07-17 17:20:42.735623475 +0200
Change: 2026-07-17 17:20:42.735623475 +0200
Birth: 2026-07-17 17:20:42.735623475 +0200
Look at the birth line - the time stamp indicates it has been created when I ran the pacman update command.
Birth: 2026-07-17 17:20:42.735623475 +0200
I am not sure I get your demonstration. Do you mean the file was born when you ran the stat command? Why is that an issue, that just means the file existed, no?
No - it was created when I ran the pacman -Syu command.
The same happens if you run pamac update.
The package manager library libalpm creates the lock file.
What I am saying - if the lockfile birth is older than the last reboot - just an example - then it is a dead file - if it is only a few seconds old then another instance of libalpm has created the lock and you should definitely let that instance finish before you run your maintenance task.