You are not logged in.
I managed to somehow delete /usr/lib/libreadline.so.7, installed by the readline package. Now, every time I try to install anything with pacman, I get the message
error: GPGME error: Invalid crypto engine
error: readline: missing required signature
:: File /var/cache/pacman/pkg/$pkgname.pkg.tar.xz is corrupted (invalid or corrupted package (PGP signature)).
Do you want to delete it? [Y/n]
Neither option solves the problem. Solutions I've read involve re-installing the "archlinux-keyring" package (which results in the same error), or adding keys via the command line, giving the error
gpg: error while loading shared libraries: libreadline.so.7: cannot open shared object file: No such file or directory
If I create a file named libreadline.so.7 in /usr/lib/, I get some sort of message about the file being too short.
This might be obvious to more experienced users, but whenever I delete a pkg.tar.xz in /var/cache/pacman/pkg, the next command I use to install the package just seems to regenerate it. What can I do to fix this issue?
Offline
boot a arch live cd then copy the missing lib to your filesystem
Offline
Pacman#pacman_crashes_during_an_upgrade
@x00x90 how are you certain the version of the library on the on the live cd is the same as on FreelancePolice's affected system?
Offline
libreadline is required to verify signatures. Without it, Pacman thinks everything is corrupted. You need to re-install the library.
You could try installing the readline package from /var/cache/pacman/pkg with "pacman -U", which should bypass the signature check. Of course, it needs to be the same version as the one that you deleted (or at least binary-compatible with it).
If that doesn't work, boot up a live CD and run a full system upgrade on the mounted system with "pacman -Syu readline"
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline
So, I rebooted my machine, thinking it would fix the issue. I apologize for not paying closer attention to the errors, but when I rebooted, I got an error about something related to LVM not being booted by systemd. I then tried booting from the USB, but I couldn't chroot into the partition; I got an error about a mismatched library. Panicking, I reformatted my partition and tried to install Arch again. However, pacstrap doesn't work now; neither does any pacman command. "pacstrap /mnt base" yields:
Synchronizing package databases...
core
core.sig
Error:GPGME error: No data
error: failed to update core (invalid or corrupted database (PGP signature))
extra
extra.sig
error: GPGME error: No data
error: failed to update extra (invalid or corrupted database (PGP signature))
community
community.sig
error: GPGME error: No data
error: failed to update community (invalid or corrupted database (PGP signature))
error: failed to synchronize any databases
error: failed to init transaction (invalid or corrupted database (PGP signature))
==> ERROR: Failed to install packages to new root
Since this is from the USB, I'm confused. The USB worked fine two hours ago. This seems like a continuation of the same problem, so I'm leaving it in this thread.
Last edited by FreelancePolice (2017-06-25 02:01:17)
Offline
How did you reformat the partition?
aur S & M :: forum rules :: Community Ethos
Resources for Women, POC, LGBT*, and allies
Offline
So, I rebooted my machine, thinking it would fix the issue.
Ok, stop whatever you are doing and read this carefully, because you clearly have no idea what you are doing and you are only going to make things worse if you keep trying random ideas to fix your system.
We're passed this problem now because you've created a new one, but you need to understand what happened so you can dispel the erroneous notion that the current problem is related to it. A dynamically linked library such as libreadline contains code used by other applications. You removed that code, so anything that needed that code (on your system, not the live CD, which has its own library) no longer worked. Creating an empty file with the library name does not recreate the code, the same way that creating a blank doc file can't recreate homework that was accidentally deleted. Rebooting the system does not magically recreate the code either.
Applications often load code from shared libraries when they start. The application keeps the code in memory, which is why your system was still working before you rebooted, and why it no longer worked after rebooting.
You might have been able to just re-install the library with "pacman -U" and the entire problem would have been solved. The other recommendation was to use the live CD. I should have been been explicit in instructing you to upgrade the mounted system from the live CD, not from a chroot. The chroot did not work because when you chroot into the system, you use the libraries in the chroot. The library is missing, so the chroot is necessarily broken.
Panicking, I reformatted my partition and tried to install Arch again. However, pacstrap doesn't work now; neither does any pacman command. "pacstrap /mnt base" yields:
Synchronizing package databases...
core
core.sig
Error:GPGME error: No data
error: failed to update core (invalid or corrupted database (PGP signature))
extra
extra.sig
error: GPGME error: No data
error: failed to update extra (invalid or corrupted database (PGP signature))
community
community.sig
error: GPGME error: No data
error: failed to update community (invalid or corrupted database (PGP signature))
error: failed to synchronize any databases
error: failed to init transaction (invalid or corrupted database (PGP signature))
==> ERROR: Failed to install packages to new rootSince this is from the USB, I'm confused. The USB worked fine two hours ago. This seems like a continuation of the same problem, so I'm leaving it in this thread.
There was absolutely no need to reformat. Your instinct seems to be to hit the reset button instead of trying to figuring out how to actually fix the problem. You are not going to learn anything that way, except how to re-install your system over and over again every time something goes wrong. It's also very frustrating to have someone ask for advice, then completely ignore everything, make the problem worse, then ask for more advice. If you're not going to follow any of it, wtf is the point?
Slow down and explain exactly what you have done. How did you reformat the partition? How did you mount it?
With the partition mounted at /mnt, what is the output of
df -h
When you run "pacstrap /mnt base", does it actually download the database files to /mnt/var/lib/pacman/sync? Is there anything in /mnt after the operation?
This seems like a continuation of the same problem, so I'm leaving it in this thread.
It's not. Deleting files from your system does not affect the installation medium, which has it's own copy (how could it possibly work otherwise before you've installed your system?). The current problem is likely due to an error in reformatting the partition or mounting it, or a mirror error (which could be fixed by changing the mirror in /etc/pacman.d/mirrorlist).
My Arch Linux Stuff • Forum Etiquette • Community Ethos - Arch is not for everyone
Offline