You are not logged in.
I have a very basic installation of Arch on a USB which I regularly upgrade (usually every Friday).
Today I got a very long list of error messages of the basic form:
linux-firmare: /usr/share/licenses/linux-firmware/LICENSE.xxx exists in filesystem. Examples of the xxx component are:
ipu3_firmware
QualcommAtherosar3k
There may be some typos in the above but I had to transcribe the examples by hand since I couldn’t figure an easy way to capture them.
Anybody have any idea what is going on here?
By the way, I'm pretty sure this problem is not related to another problem I just posted. This particular installation of Arch is on a USB and should be, I think, independent of the two other installations of Arch on the computer which is started in order to boot the USB.
Ross
Last edited by WeeDram (2021-05-14 23:20:32)
Offline
You have probably installed something without pacman: by using another packages manager in parallel with pacman (e.g. pip), by calling make install as root, by running some installer script, by manually copying files.
You must identify, what are those files, why they are there and remove or overwrite them.
Offline
That is definitely not the case here. At all I have done in the last 6 months or even longer on this USB installation of Arch is to update it every week and occasionally run journatctl --vaccuum-size... and paccache -rk2. I've always thought of this as a sort of emergency boot thing so I pretty well leave it alone other than to keep it up to date.
I will check the link you suggested and see if it can provide any hints. Thanks!
Ross
Last edited by WeeDram (2021-05-07 20:59:49)
Offline
Have you checked if the pacman database for linux-firmware has become damaged?
pacman -Qkk linux-firmwareOffline
Before you nuke the present situation:
pacman -Qkk linux-firmware
pacman -Qo /usr/share/licenses/linux-firmware/LICENSE.ipu3_firmwareEdit: curses!
Last edited by seth (2021-05-07 21:19:48)
Offline
Thank you both, seth & loqs, for your suggestions. I've now tried both of those commands in various ways. Unfortunately, before I read your messages, I attempted something with the directory "linux-firmware" which resulted in quite a different response the second time. Errors regarding file size and time and date. However, the list of errors that pacman -Syu displays is over 2400 lines long so I tried
pacman -Qo /usr/lib/firmware/i*
which gave me another long list with such output as
error: No Package owns /usr/lib/firmware/iwlwifi-Qu-c0-jf-b0-50.ucode
I think I am going to have to use the --overwrite switch.
I'm having a lot of trouble dealing with this because I have shutdown my computer, boot the USB, test a command, look at the output then try to remember what it was. Then I have to shut down the USB version, reboot the computer and carry on with searching for answers.
Unfortunately for some of those commands I can't sent the output to a txt file with ">" so it really becomes a time consuming job involving using my phone to copy the screen.
Offline
Just upload the command output from the broken system...
https://wiki.archlinux.org/title/List_o … in_clients
Offline
for some of those commands I can't sent the output to a txt file with
Probably because it's stderr output. Try
foobar > /tmp/some.txt 2>&1Offline
Seth, thank you for the command to save stderr output to a file.
So, I'm still working on this. My review of the problem is that when I do sudo pacman -Syu on the USB installation, I get over 2400 lines of the form:
linux-firmware: /usr/lib/firmware/3com/3C359.bin exists in filesystem
all but one have the same “linux-firmware: /usr/lib/firmware/“ prefix to the error message and “xxx exists in filesystem” as the same suffix to the error message.
The one line that looks different is
“linux-firmware: /usr/lib/tmpfiles.d/ linux-firmware.conf exists in filesystem”
The output from pacman -Qkk linux-firmware is 760 lines long and the last lines are:
warning: linux-firmware: /usr/share/licenses/linux-firmware/LICENSE.sdma_firmware (Modification time mismatch)
warning: linux-firmware: /usr/share/licenses/linux-firmware/LICENSE.sdma_firmware (Size mismatch)
warning: linux-firmware: /usr/share/licenses/linux-firmware/WHENCE (No such file or directory)
linux-firmware: 2729 total files, 689 altered filesMost of the errors are of the type xxxx (Size mismatch)
Using pacman -Qo on various files ( ~80 because I used *) result in this sort of output:
error: No package owns /usr/lib/firmware/ql2400_fw.bin
error: No package owns /usr/lib/firmware/ql2500_fw.bin
error: No package owns /usr/lib/firmware/qlogic
error: No package owns /usr/share/licenses/linux-firmware/LICENCE.Abilis
error: No package owns /usr/share/licenses/linux-firmware/LICENCE.adsp_sst
error: No package owns /usr/share/licenses/linux-firmware/LICENCE.agere
error: No package owns /usr/share/licenses/linux-firmware/LICENCE.atheros_firmware
error: No package owns /usr/share/licenses/linux-firmware/LICENCE.broadcom_bcm43xxOn the USB, there are 169 packages in var/cache/pacman/pkg/
I'm really at a loss as what to do since if I read the packman wiki correctly I have to do individually rename or overwrite a whole bunch of files to get this USB able to update.
Thanks for any suggestions.
Ross
Offline
Sounds like your linux-firmware package got fairly borked and the metadata is completely disjointed from what's actually on the system.
You could assume all linux-firmware files are from a broken pacman transaction, and ignore/remove them in favor of the package, like this:
pacman -S linux-firmware --overwrite '*'(Do not run this with -u or with other packages listed. Do not run this if you think files in /usr/lib/firmware/ might have come from another firmware package... although, why would they?)
After forcing the package to reinstall over everything else, you can use the "lostfiles" program (from the "lostfiles" package) to find any leftover files that are untracked and possibly came from a previous half-uninstalled version of linux-firmware, and remove them as needed.
For the future, is it possible you powered off uncleanly, so not all file modifications were synced to disk?
Managing AUR repos The Right Way -- aurpublish (now a standalone tool)
Offline
I ran the command and it finished without a problem. I then installed lostfiles and ran that. It output 2238 lines. I've been looking through this but now I'm not really sure what a "lost file" is. For interest, I installed lostfiles on my computer-based Arch system, ran it and got an output of 108 files. So, yeah, the USB looks really borked. It could have happened by not powering off cleanly. I clearly, but vaguely, remember running the update on the USB and then, after shutting the USB down, looking at the screen and thinking "Why am I seeing seeing THAT when I have shut down and turned off the machine. The "vaguely" part is that I cannot remember what exactly "THAT" was, perhaps the power light was still on or it might even have been the startup screen for the computer-based Arch, something that really shouldn't happen with the USB still plugged in.
Anyway, thanks for the suggestion. I'll have to decided whether it is easier to clean up the mess bit by bit or perhaps re-install a basic Arch on the USB.
If I were to try to run another update on the USB, do you have any idea what might happen?
Cheers,
Ross
Offline
You might run into the same situation w/ a different package - similar solution.
You can "sudo pacman -Qkk" (sudo because some files to test are access protected) to check the integrity of the entire installatiion. Some™ modification date changes are expected, but esp. if files are missing, that package likely took a hit as well.
You can also re-install all packages.
Please always remember to mark resolved threads by editing your initial posts subject - so others will know that there's no task left, but maybe a solution to find.
Thanks.
Offline
Thanks again Seth, and the others, for your help on this. I re-installed all packages. I'll wait a few days and see what happens when I do an ordinary update. If that goes well, I'll mark this as solved. If it doesn't go well, I'll post any new information or just mark as solved and move on.
It occurred to me that a better and easier solution might have been to make a complete, new re-install on that USB. It was pretty basic. I haven't done an install in long time but 4-5 years ago (maybe longer) I did 2-3 USB installations just for practice. Unfortunately I didn't keep any of those.
Regards,
Ross
Offline
I once again did a regular update and this time I got no error messages so it looks as though the re-install all packages approach was the way to go. Thanks to everyone who helped me. I have marked this as solved.
Ross
Offline