On Thu, Jun 25, 2020 at 2:55 AM Robin Atwood <ro...@binro.org> wrote: > > On Wed, 24 Jun 2020 13:31:30 -0400 > tedheadster <tedheads...@gmail.com> wrote: > > > Robin, > > are you comfortable just going with a bare-bones console and build a > > new kernel where you _disable_ CONFIG_FB? That might do it. > > > > Alternately, you can hook up a serial cable to another computer and > > set "console=ttyS0,115200n8". > > I will try that, if it works it will at least give me a chance to look > at the error messages. > > I don't think I have any serial cables! >
While serial consoles are one solution, I'd take a look at network consoles. They're FAR easier to manage on commodity hardware. All you really need is another host on the network that can run netcat. I stick this in my /etc/grub/default - or otherwise get it onto the command line in the bootloader: netconsole=@/,6666@192.168.1.1 That tells the kernel to send all console output over UDP to 192.168.1.1:6666. If you have multiple interfaces/etc you might need to expand that command line a bit. I have no idea how it comes up with the sending IP - if you care about that you can specify it. I'm guessing it doesn't run DHCP - but this is just plain UDP so it is one-way and there is no need for acks to get back to the sender. On the destination host I run: nc -u -l -p 6666 (nc is provided by the netcat package - a very basic tool that should be available everywhere - probably on non-linux operating systems also) Start up the reception part before you try booting the host you're troubleshooting, because it is just going to send packets blind into the ether and if nothing is listening they're gone. Obviously netconsole is a very simple implementation so that it can run during early boot. It is very good for capturing panics/etc. I don't know how it compares with serial console in terms of how early it starts. I think it does capture stuff very early in boot though - both systems require a degree of hardware initialization before they can work, but both are also very simple. This does need to be enabled in the kernel. You can also enable this on a running kernel but of course that does no good for issues during boot. Full docs are at: https://www.kernel.org/doc/Documentation/networking/netconsole.txt -- Rich