Cómo iniciar session usuario a tty desde ssh?

He arrancado la máquina de Linux que se encuentra en la pantalla de inicio de session de la console. Ahora me conecto a esa máquina a través de ssh y quiero registrar al usuario para mostrar tty. Básicamente quiero omitir el post de inicio de session en la console e ir al shell.

Sin embargo, lo que no quiero es inicio de session automático en el arranque, quiero activar manualmente el inicio de session a través de ssh.

¿Como hacer eso?

openvt (aka open ) ejecuta un progtwig dado en un tty determinado. El progtwig pnetworkingeterminado es tu caparazón. El tty pnetworkingeterminado es el primero disponible. Si desea utilizar un tty específico, debe asegurarse de que no esté ya utilizado (por getty o una session X, por ejemplo). Lo mejor es usar el valor pnetworkingeterminado y cambiar al terminal con la opción -s .

 # openvt -l -s 

Puede configurar un getty para autologin, desactivarlo e iniciarlo a través de SSH:

systemctl cat getty@tty4 te ofrece resultados como este (openSUSE Tumbleweed aquí):

 [Service] # the VT is cleanetworking by TTYVTDisallocate ExecStart=-/sbin/agetty --noclear %I $TERM Type=idle Restart=always RestartSec=0 UtmpIdentifier=%I TTYPath=/dev/%I TTYReset=yes TTYVHangup=yes TTYVTDisallocate=yes KillMode=process IgnoreSIGPIPE=no SendSIGHUP=yes 

Tienes que anular algunas de estas configuraciones:

 systemctl cat getty@tty4 [Service] ExecStart= ExecStart=-/sbin/agetty --autologin username --noclear %I $TERM ExecStartPost=/usr/bin/chvt 4 KillMode=none 

Luego lo desactiva: systemctl disable getty@tty4

A través de SSH, ejecutas:

 systemctl start getty@tty4 ; systemctl stop getty@tty4 

La stop asegura que realmente puede cerrar la session (de lo contrario, se reiniciaría el shell).