Hello,
I had an issue while updating my system with pamac and the computer turned off while updating, which resulted in me not being able to boot. I was following the steps reported at this page and was able to chroot properly and mount the partition. However, when I try to pacman -Syyu or pamac upgrade I get:
error while loading shared libraries: /usr/lib/libcurl.so.4: file too short
I tried looking for solutions online but can’t really do anything without either pacman or pamac. As far as I can tell, curl by itself seems to work. What can I do to fix this? I would obviously prefer restoring my old system, but in case I have to reinstall I would also like to know how to get my data back before doing so after mounting the partition.
Thanks for the help, and let me know if anything else is needed!
How can I install pacman-static? I can pamac install pacman-static outside of chroot and I verified that it works, but as soon as I reactivate chroot I don’t see the command anymore. Both pamac and pacman don’t work in chroot because of the same issue.
I got pacman-static in chroot, but this still fails to install curl with many errors of the sort
curl: /usr/share/man/man3/libcurl.3.gz exists in filesystem
I can pastebin the whole output if needed. Sorry if I need a lot of guidance, but on this one I don’t really know what I’m doing/how this works, so it’s hard for me to interpret errors. Do I need to remove some curl installation before reinstalling?
Thanks, that seems to have worked. Although at the end of the command I get
:: Running post-transaction hooks...
(1/1) Refreshing PackageKit...
Error connecting: Could not connect: No such file or directory
error: command failed to execute correctly
pacman is no longer complaining about curl/lz4, so I’m guessing that’s fine? I’m now having the same error with /usr/lib/libxml2.so.2, in general how can I know which packages to reinstall given the missing libs? E.g. now with ./pacman-static -S xml2 --overwrite '*' I simply get package not found.
If it already exists, you may not have to overwrite it.
But as you can’t know whether that file is either the previous one (possibly the old and therefore the wrong version)
or whether it is the new one, which is there, but corrupted (too short …)
I’d say:
yes, overwrite
Yes, I suspected as much. So what else should I do? Simply try to update normally and overwrite every package that gives issues one by one until the update runs?