
Si cambio a un tty, digamos tty3, me pide un nombre de usuario y luego la contraseña correspondiente.
¿Cómo puedo lograr que (solo en tty3) me pida solo una contraseña para un nombre de usuario predefinido (digamos myuser
) y mencione el nombre de usuario, por ejemplo password for myuser
? Así que no necesito escribir el nombre de usuario sino solo la contraseña en ese tty.
Estoy usando ubuntu 18.04 que usa systemd.
Respuesta1
Deberá agregar qué distribución está utilizando, porque es probable que diferentes distribuciones se ejecuten getty
de diferentes maneras.
Para sysvinit
, se programa en /etc/inittab
, donde podrás encontrar una línea como la siguiente:
3:23:respawn:/sbin/getty 38400 tty3
Cambiarías esa línea a algo como lo siguiente:
3:23:respawn:/sbin/getty -n -o ferdinand 38400 tty3
Para hacer que getty
se ejecute /bin/login -- ferdinand
, es decir, prepararlo con el nombre de usuario "ferdinand".
Como se documenta en man getty
, la -n
opción le indica que no solicite el nombre de usuario y la -o ferdinand
opción le indica que agregue "ferdinand" a su línea de subcomando de inicio de sesión.
Creo que las opciones funcionan igual en otras distribuciones, pero la forma de iniciarlas getty
bien tty3
puede ser diferente y en particular no estar usando /etc/inittab
.
Respuesta2
El equivalente systemd a la respuesta de Ralph Rönnquist es escribir
sudo EDITOR=/usr/bin/vi systemctl edit getty@tty3
(o tu editor favorito). Esto le proporciona un archivo temporal en el que ingresa las líneas:
[Service]
ExecStart=
ExecStart=-/sbin/agetty -n -o ferdinand %I
y salir del editor. Creará el archivo . Tenga en cuenta que necesita la primera línea para restablecer la lista de comandos para ejecutar a vacía. Luego puede habilitar e iniciar la Unidad como de costumbre:/etc/systemd/system/[email protected]/override.conf
ExecStart=
sudo systemctl enable getty@tty3
sudo systemctl start getty@tty3
El primero crea un vínculo /etc/systemd/system/getty.target.wants/
para el futuro. Verarchlinux.