Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.user > #263793 > unrolled thread
| Started by | Andy Dorman <adorman@ironicdesign.com> |
|---|---|
| First post | 2023-11-23 14:30 +0100 |
| Last post | 2023-11-25 17:20 +0100 |
| Articles | 6 — 3 participants |
Back to article view | Back to linux.debian.user
Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable Andy Dorman <adorman@ironicdesign.com> - 2023-11-23 14:30 +0100
Re: Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable Andy Dorman <adorman@ironicdesign.com> - 2023-11-23 22:10 +0100
Re: Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable Jeffrey Walton <noloader@gmail.com> - 2023-11-23 22:40 +0100
Re: Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable Tim Woodall <debianuser@woodall.me.uk> - 2023-11-24 05:20 +0100
Re: Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable Andy Dorman <adorman@ironicdesign.com> - 2023-11-24 15:00 +0100
Re: Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable SOLVED Andy Dorman <adorman@ironicdesign.com> - 2023-11-25 17:20 +0100
| From | Andy Dorman <adorman@ironicdesign.com> |
|---|---|
| Date | 2023-11-23 14:30 +0100 |
| Subject | Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable |
| Message-ID | <HDhWh-7xAL-1@gated-at.bofh.it> |
This may actually be a usrmerge problem, both usrmerge and usr-is-merged (>= 38~) are installed). But I do not know enough about how firmware controllers are loaded during boot to determine which package, dbus or usrmerge, I should submit a bug report to. We have multiple old (14+ years) Tyan S3950 mobo servers running debian Unstable with various recent kernels, the latest being 6.1.0-3-amd64. Despite being on the bleeding edge with the unstable distro, this has been a very reliable setup over the years. I love Debian. However, after a recent update, we had to reboot a couple of servers and both booted with NO network or usb console keyboard. ie, completely unusable. I have been able to mount the failed server HDs on another server and compared dmesg logs from the failed and last successful boots. The failed boots were not detecting the floppy (I told you they were old) and not loading the kernel piix4_smbus driver. These are the key lines present in the earlier good boots and missing from the failed boots: ... Floppy drive(s): fd0 is 1.44M piix4_smbus 0000:00:02.0: SMBus Host Controller at 0x580, revision 0 ... A failed boot did not have the above lines and subsequently failed to detect and enable the network interfaces, the console USB keyboard or any other usb devices. FWIW, the 3ware RAID drivers are still loading fine in the bad boots. So some drivers are still loading. I think this problem stems from the ongoing Debian move to a merged-/usr system. I have fully and successfully (I thought) installed both the usrmerge and usr-is-merged (>= 38~). The only hint I have is the last dbus package update contained a warning about assuming that a system is fully merged-/usr system "In the case of dbus, the symptom when this assumption is broken is particularly bad (various key system services will not start"...which sums up my problem quite nicely. I will be happy to submit a formal bug report to the appropriate package using reportbug as soon as someone with way more knowledge than I tells me which package would be more appropriate to receive it. The last thing I want to do is create unnecessary work for anyone in the Debian community. Thank you in advance for any help in fixing this problem. -- Andy Dorman Ironic Design, Inc. AnteSpam.com
[toc] | [next] | [standalone]
| From | Andy Dorman <adorman@ironicdesign.com> |
|---|---|
| Date | 2023-11-23 22:10 +0100 |
| Message-ID | <HDp7r-7DkJ-3@gated-at.bofh.it> |
| In reply to | #263793 |
I have continued to research this and I think I found the problem. I also think the dbus update timing mentioned in the subject is entirely coincidental. I hope I haven't caused any unnecessary excitement or work for anyone in the dbus package team. My apologies if I did. A few months back we ran into a package conflict with the initramfs-tools that we have used since the beginning. I believe the conflict was with systemd, but I could be mis-rememberiung that. We were able to switch to tiny-initramfs which did the same job (we thought) and didn't have a conflict. Since that switch and before our recent problems, we rebooted one server which just happened to be different from all our others in that it hever had the initramfs package conflict and was still running the original initramfs package. On a hunch (since I really have no clue about how debian boot actually works) I compared initram image file sizes and used lsinitramfs to list the content of the initram images built with tiny-initramfs and the standard initramsfs. The results: - the tiny-initramfs image file size was under 1MB and lsinitramfs listed a very few modules to be loaded and specifcally NOT the piix4_smbus driver - the standard intramfs image file was ~ 34MB and included the missing > usr/lib/modules/6.5.0-4-amd64/kernel/drivers/i2c/busses/i2c-piix4.ko So based on my very sketchy knowledge of Debeian boot and what I am seeing on our working servers, I think the problem is with tiny-initramfs not including the needed kernel driver modules in the image file OR our not understanding how to correctly use tiny-initramfs. The fix as far as we are concerned with our servers that are running has been to switch back to the standard initramfs package (the previous conflict is gone now thank goodness) and rebuild the initram images, which we have done. I have not yet figured out how to fix our two broken servers since we can't boot them to update them. Since we have several identical running servers and can mount and manipulate the file system of the dead servers, is it possible to just copy a good initrd.img-6.5.0-4-amd64 to the dead server /boot directory and boot to that image? That sounds way too simple to me. -- Andy Dorman Ironic Design, Inc. AnteSpam.com
[toc] | [prev] | [next] | [standalone]
| From | Jeffrey Walton <noloader@gmail.com> |
|---|---|
| Date | 2023-11-23 22:40 +0100 |
| Message-ID | <HDpAu-7DyS-9@gated-at.bofh.it> |
| In reply to | #263802 |
On Thu, Nov 23, 2023 at 4:09 PM Andy Dorman <adorman@ironicdesign.com> wrote: > > I have continued to research this and I think I found the problem. > > I also think the dbus update timing mentioned in the subject is entirely > coincidental. I hope I haven't caused any unnecessary excitement or work > for anyone in the dbus package team. My apologies if I did. > > A few months back we ran into a package conflict with the > initramfs-tools that we have used since the beginning. I believe the > conflict was with systemd, but I could be mis-rememberiung that. We > were able to switch to tiny-initramfs which did the same job (we > thought) and didn't have a conflict. > > Since that switch and before our recent problems, we rebooted one server > which just happened to be different from all our others in that it hever > had the initramfs package conflict and was still running the original > initramfs package. > > On a hunch (since I really have no clue about how debian boot actually > works) I compared initram image file sizes and used lsinitramfs to list > the content of the initram images built with tiny-initramfs and the > standard initramsfs. The results: > > - the tiny-initramfs image file size was under 1MB and lsinitramfs > listed a very few modules to be loaded and specifcally NOT the > piix4_smbus driver > > - the standard intramfs image file was ~ 34MB and included the missing > > usr/lib/modules/6.5.0-4-amd64/kernel/drivers/i2c/busses/i2c-piix4.ko > > So based on my very sketchy knowledge of Debeian boot and what I am > seeing on our working servers, I think the problem is with > tiny-initramfs not including the needed kernel driver modules in the > image file OR our not understanding how to correctly use tiny-initramfs. > > The fix as far as we are concerned with our servers that are running has > been to switch back to the standard initramfs package (the previous > conflict is gone now thank goodness) and rebuild the initram images, > which we have done. > > I have not yet figured out how to fix our two broken servers since we > can't boot them to update them. Since we have several identical running > servers and can mount and manipulate the file system of the dead > servers, is it possible to just copy a good initrd.img-6.5.0-4-amd64 to > the dead server /boot directory and boot to that image? That sounds way > too simple to me. According to <https://www.linuxquestions.org/questions/linux-server-73/copying-initrd-img-file-to-different-server-4175414604/>, you cannot copy initrd.img from one machine to another. Maybe you can boot to a live CD, and then regenerate initrd.img for the machine? Jeff
[toc] | [prev] | [next] | [standalone]
| From | Tim Woodall <debianuser@woodall.me.uk> |
|---|---|
| Date | 2023-11-24 05:20 +0100 |
| Message-ID | <HDvPz-7IWd-1@gated-at.bofh.it> |
| In reply to | #263802 |
On Thu, 23 Nov 2023, Andy Dorman wrote: > I have not yet figured out how to fix our two broken servers since we can't > boot them to update them. Since we have several identical running servers > and can mount and manipulate the file system of the dead servers, is it > possible to just copy a good initrd.img-6.5.0-4-amd64 to the dead server > /boot directory and boot to that image? That sounds way too simple to me. > I'm pretty sure you can bind mount /proc, /sys, /dev, /run, chroot and then update-initramfs to regen.
[toc] | [prev] | [next] | [standalone]
| From | Andy Dorman <adorman@ironicdesign.com> |
|---|---|
| Date | 2023-11-24 15:00 +0100 |
| Message-ID | <HDESR-7SjF-1@gated-at.bofh.it> |
| In reply to | #263805 |
> I'm pretty sure you can bind mount /proc, /sys, /dev, /run, chroot and > then update-initramfs to regen. Thanks Tim. You make it sound so simple. I searched for "chroot to mounted disk to update initramfs" and found several detailed descriptions of the process. https://forums.debian.net/viewtopic.php?t=143279 Thank you so much. I will give it a shot today and report back. Cheers. -- Andy Dorman
[toc] | [prev] | [next] | [standalone]
| From | Andy Dorman <adorman@ironicdesign.com> |
|---|---|
| Date | 2023-11-25 17:20 +0100 |
| Subject | Re: Boot fails to load network or USB, piix4_smbus - SMBus Host Controller, after update to dbus (1.14.10-3) unstable SOLVED |
| Message-ID | <HE3xT-8dB3-1@gated-at.bofh.it> |
| In reply to | #263805 |
> I'm pretty sure you can bind mount /proc, /sys, /dev, /run, chroot and > then update-initramfs to regen. Thanks Tim. You make it sound so simple. I searched for "chroot to mounted disk to update initramfs" and found several detailed descriptions of the process. https://forums.debian.net/viewtopic.php?t=143279 Thank you so much. I will give it a shot today and report back. Thank you again Tim. It worked. I found an excellent overall guide in the debian wiki that could be applied to fix any number of issues with a dead system: https://wiki.debian.org/RescueLive Here are the exact steps I took, just in case it can help anyone else with problems similar to ours. > 1. Download, make, then boot into live CD or USB flash & drop into shell. > > 2. Get root access with live CD just so I don't have to preface every > command below with sudo. > > sudo su - > > 3. Use fdisk to examine HDs and determine main fs partition(s) on the > RAID to be repaired, then mount it/them...Replace "sdax" below with > the main (and boot if separate) RAID partitions. In my case we did not > have a separate boot partition, so I only had to mount one device. > > /sbin/fdisk -l > mount /dev/sdax /mnt > > 4. Confirm we see all the appropriate directories > > ls /mnt/ > > 5. Bind mounts of key file system dirs > > for name in proc sys dev ; do mount --bind /$name /mnt/$name; done > > 6. mount /etc/resolve.conf and /dev/pts > > mount --bind /dev/pts /mnt/dev/pts > mount --bind /etc/resolv.conf /mnt/etc/resolv.conf > > 7. chroot into mounted system > > chroot /mnt/ /bin/bash > > 8. I had to temporarily disable our apt proxy since the server can't > see the proxy from our office where we are doing this repair. > > mv /etc/apt/apt.conf.d/99proxy /etc/apt/apt.conf.d/99proxy.bak > > 9. Install initramfs-tools and initramfs-tools-core which automatically > removed tiny-initramfs-tools which caused all this in the first place. > > apt install initramfs-tools initramfs-tools-core > > 10. Rgen initramfs and update grub > > update-initramfs -uv; update-grub > > 11. Put the apt proxy back > > mv /etc/apt/apt.conf.d/99proxy.bak /etc/apt/apt.conf.d/99proxy > > 10. exit out of chroot, unmount everything, do a clean shutdown > > exit > > umount /mnt/dev/pts > umount /mnt/dev > umount /mnt/etc/resolv.conf > umount /mnt/proc > umount /mnt/sys > umount /mnt/boot ??? > umount /mnt > > shutdown -r now > > 11. remove the LIVE flash then power up to confirm a good boot > with the repaired RAID Andy
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.user
csiph-web