Subject: bug#34211: error running container: mingetty cannot find ttys

From: Giovanni Biscuolo <[email-masked]>
Date: Tue, 12 Feb 2019 11:25:19 +0100

Hi Ludo'

thank you for looking into this issue!

Ludovic Courtès <[email-masked]> writes:

[...]

> I also get this behavior.

OK, so this is deterministic now :-)

> What happens is that the /dev/ttyN nodes do not exist (understandably),
> and thus the ‘console-font-ttyN’ Shepherd services fail to start, and
> get restarted, indefinitely.

actually they do fail but they are not respawned, the services that get
respawned are term-tty[1..6]

> The container is working as expected though.  If you find the PID of the
> container’s ‘shepherd’ process (its PID 1, which obviously has a
> different PID outside the container), then you can do:
>
>   guix container exec NNN /bin/sh

I have to use "sudo" to be able to start and "guix container exec" a
shell in it (I mean: sudo guix container exec...)

I used that command in another terminal so I could see the console
messages from the container

> where NNN is that PID of that ‘shepherd’ process (I use ‘pstree’ to find
> the PID… not very convenient.)

oh yes! I did not realized that my container was there waiting for me
:-)
...I also did not realized thet the container is started as a foreground
process, so we nees to background

I used pstree too, we need a better way to interact with a container (by
name and not by PID); sorry but I still cannot help here, my Guile
proficency is still too low; anyway this is tangent to this bug

> In that shell, you can do:

[...]

> So in that sense everything is working “as expected.”

yes, I see: I stopped term-tty[1..6] and the failure messages disappeared

> Now, it would make more sense to simply remove those ‘console-font-ttyN’
> services in a container and everything that depends on them.

as pointed above the faining services are term-tty[1..6],
console-font-tty[1..6] fails but do not get respawned do they are not
the real issue

> Not sure if we should do that automatically.

I'll try to remove term-tty[1..6] manually from services declaration, if
I manage to "manually" solve this I'll report here

> Thoughts?

since mingetty does not make sense in a container I'd remove
term-tty[1..6] (and console-font-tty[1..6]) automatically and by default
when we create a container via "guix system container..."

Thanks!
Giovanni

-- 
Giovanni Biscuolo

Xelera IT Infrastructures