You are not logged in.
Hi everyone,
I just tried running a full system upgrade ```sudo pacman -Syu```, however my wifi connection was really slow so I decided to try and cancel the upgrade, and maybe relocate to somewhere with a better wifi connection.
However, now when I try to boot and after bios os selection, I'm faced with the error:
``Initramfs unpacking failed: invalid magic at start of compressed archive```
The issue seems very similar to this thread: https://bbs.archlinux.org/viewtopic.php?id=292012
Although I'm really not familiar with how that user diagnosed his issues. I saw his solution was to boot from an old iso. Would I be required to do the same? Would I then need to re-install/re-configure everything from scratch?
In addition, I'm not sure how I would go about downgrading the kernel w/o flashing an old iso altogether.
Any guidance would be extremely appreciated.
Thanks in advance from a noob!
Relevant info (i think):
flashed the iso from january 2024, and have been running it no problems until now.
intel i9-13900H processor
nvidia rtx 4060
32 gb ram
1Tb
Last edited by kaisa (2024-03-15 18:56:38)
Offline
Would I then need to re-install/re-configure everything from scratch?
No, you probalby only have to install an old kernel (downgrading that in isolation is relatively save and will, for a while, not get you the typical problems of partial updates)
You can get old kernels from the https://wiki.archlinux.org/title/Ala - nb. that the nvidia driver has to match the kernel or you're installing nvidia-dkms (which will require the kernel headers, eg. linux-headers) as well.
You don't have to change anything about the system itself.
Offline
Thank you for your response and the reassurance.
I am using linux-zen kernel with nvidia, so you suggest downgrading versions of: "linux-zen", "linux-zen-headers", and "nvidia-dkms"?
What about "linux-firmware"?
In regards to how I actually go about performing the downgrade, I've seen some tutorials/guides on booting from a live usb and then mounting the host partitions and then chroot into the host from the live iso, and then perform the downgrade/installation (sorry if i butchered that process, im just poorly referencing the reference docs I'm looking at).
Is this the procedure I want to perform?
Thanks again!
This is the video I found: https://www.youtube.com/watch?v=t-bdztED6Sg
Last edited by kaisa (2024-03-15 21:43:09)
Offline
You don't need to downgrade nvidia-dkms, https://wiki.archlinux.org/title/Dkms exists to dynamically fit out-of-tree modules to the current kernel.
linux-firmware is unrelated to this situation/problem or the kernel downgrade.
Make sure to arch-chroot and don't forget to mount the /boot partition if you have one, then you can use the pacman -U approach to downgrade the two linux-zen packages.
Pay attention to the dkms rebuild, it should™ not fail, but might if the newer nvidia package isn't compatible with older kernels (but that's unlikely)
Edit: do not follow random people on youtube, the wiki explains how to downgrade packages and https://wiki.archlinux.org/title/Pacman … _rebooting has a basic pattern for dealing w/ non-starting kernels.
Last edited by seth (2024-03-15 21:46:40)
Offline
Great, I've mounted my root and boot partitions and am successfully inside of the host.
When looking thru and grepping for the 2 linux-zen packages inside of
/var/cache/pacman/pkg/There are a bunch of versions corresponding to (what I assume) previously installed/upgraded versions. However some end in .sig and others in the compressed .tar.zst format.
However, when referencing this document: https://wiki.archlinux.org/title/Downgr … the_kernel
I notice that the supplied command targets files ending in
<some-file-name>.tar.xzwhereas all my files for the kernal packages end in
.tar.zstWill this different compression cause any conflicts when running
pacman -U <package>?
In addition, I'm not sure what to make of the path prefix used in that example command:
file://linux-4.15.8-1-x86_64.pkg.tar.xz. Can I just reference this using absolute paths? So something like
pacman -U /var/cache/pacman/pkg/<package-name>Here is the output from the command:
ls /var/cache/pacman/pkg/ | grep "linux-zen"https://cdn.discordapp.com/attachments/ … f5cd090d1&
I'm also not too sure which version to choose from since the files go from
linux-zen-6.7.9-zen1-1
to
linux-zen-6.7-zen3-1
And likewise is mirrored for the linux-zen-headers file
Offline
Will this different compression cause any conflicts
You could just try, but: no.
Can I just reference this using absolute paths?
You could just try, but: yes. That's how the shell generally works. pacman just also supports URIs.
I'm also not too sure which version to choose from
According to the thread you linked, 6.6.10 was the last working kernel for them - but it's entirely not understood what causes this decompression error, so the previous kernel you used might work fine for you.
Offline
Unfortunately, I get an error when trying
pacman -U <absolute-path-to-linux-zen-package>as well as the same error when resolving URI.
error: failed to init transaction (unable to lock database)
error: could not lock database: File exists
if you're sure a package manager is not already running, you can remove /var/lib/pacman/db.lockSame error happens when trying other versions as well. Any guidance would be super appreciated
Offline
Did the system crashduring the last update?
This might not be related to the linked thread at all, but the initramfs be genuinely corrupted because of such incident.
LC_ALL=C pacman -Qkk | grep -v ', 0 altered files'You can redirect that into a file and upload it to 0x0.st
If there're no mtree errors you can try to just remove the lock and re-install the (newest) kernel.
Offline
Unfortunately, you're likely right about the system crashing during the last update. I was trying to cancel the upgrade process but it would refuse to do so and so after a while, i just hard rebooted with my laptops power button.
Should that output be redirected a .txt file?
Furthermore, I'm not familiar at all with 0x0.st nor do I know how to upload it to that (register I think? Im such a noob qq).
I'm really grateful for your time and patience thus far
Offline
LC_ALL=C pacman -Qkk | grep -v ', 0 altered files' > /tmp/howbadisit.txt
cat /tmp/howbadisit.txt | curl -F 'file=@-' 0x0.stIn future, please do not leave out important details.
You were trying to solve an https://en.wikipedia.org/wiki/XY_problem
Offline
I'm terribly sorry for the misinfo, will try to include everything.
looks pretty bad. Lots of mismatches for configured apps and lower level dependencies.
After running that command and curling the list, am I supposed to expect certain output? Or should I try unmounting, disconnecting iso, and try booting again?
Offline
If you succesfully post to 0x0.st, you get a URL to share
Some mismatches (notably in /etc) are perfectly normal, anything in /usr/lib and /usr/bin is a problem for pretty much sure - the rest is case-by-case.
You'll have to re-install every package that shows up w/ a broken mtree w/ "--dbonly" first to restore the database, then run a global update (-Syu) then re-install every package that still has suspicious local deviations explicitly and in doubt close w/ another "-Syu".
If pretty much every package is broken, you can also just re-install all packages
*after*!! fixing the broken mtrees w/ --dbonly.
Offline