Running on RHEL/CentOS 6+?
Looks like that might be the result of a misconfigured upstart start-ttys.conf which is intended to dedicate /dev/tty1 for vami_login.
You can verify by looking at /etc/init/start-ttys.conf. There should be an /etc/init/vamitty.conf file which would receive the TTY=/dev/tty1 which is used for that instance.
Your error suggests something happened that resulted in the TTY variable not being passed when starting the vamitty upstart job.
It is indeed CentOS 6.3.
I see the file you indicated:
# more /etc/init/vamitty.conf
# tty1 - vami_login
# This script maintains vami_login on /dev/tty1
start on stopped rc RUNLEVEL=
stop on runlevel [!2345]
exec /opt/vmware/share/vami/vami_login > /dev/tty1 2>&1 < /dev/tty1
When I diff the start-tty* files on the file system I get this:
# diff /etc/init/start-ttys.conf /opt/vmware/etc/backup-for-vami-login/start-ttys.conf.orig
< env ACTIVE_CONSOLES=/dev/tty[2-6]
> env ACTIVE_CONSOLES=/dev/tty[1-6]
< initctl start vamitty TTY=/dev/tty1
I take it then that this looks to be as expected?
Yes that looks correct.
TTY should be in the vamitty job environment when it's started but the error you mentioned would seem to indicate otherwise.
There is nothing else that should invoke this besides the call to initctl afaik.
It seems like what is happening is that I am doing an exec in firstboot to redirect log output to a file, then from there I call subsequentboot (which also does an exec to redirect its output). That seems to cause the issue.