Difference between revisions of "Automatic login to virtual console (Español)"

From ArchWiki
Jump to: navigation, search
(Usando mingetty)
m
(25 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
[[Category:Boot process (Español)]]
 
[[Category:Boot process (Español)]]
[[Category:Security]]
+
[[Category:Security (Español)]]
 
[[en:Automatic login to virtual console]]
 
[[en:Automatic login to virtual console]]
 
[[it:Automatic login to virtual console]]
 
[[it:Automatic login to virtual console]]
{{Article summary start|Sumario}}
+
[[ja:Automatic login to virtual console]]
{{Article summary text|Describe cómo acceder automáticamente a una consola virtual.}}
+
{{Related articles start (Español)}}
{{Article summary heading|Relacionado}}
+
{{Related|Display Manager (Español)}}
{{Article summary wiki|Display Manager}}
+
{{Related|Silent boot (Español)}}
{{Article summary wiki|Start X at Login}}
+
{{Related|Start X at Login (Español)}}
{{Article summary end}}
+
{{Related articles end}}
  
En este artículo se describe cómo acceder automáticamente a una ''consola virtual'' al final del [[boot process|proceso de arranque ]]. Este artículo sólo cubre el acceso a la consola (o tty); los métodos para iniciar un [[Xorg|servidor X]] se describen en [[Start X at Boot]].
+
En este artículo se describe cómo acceder automáticamente a una [[Wikipedia:es:Virtual console|consola virtual]] al final del [[boot process|proceso de arranque]]. Este artículo solo cubre el acceso a la consola (o tty); los métodos para iniciar un [[Xorg (Español)|servidor X]] se describen en [[Start X at Login_(Español)|Start X at Login]].
  
__TOC__
+
== Configuración ==
== Initscript==
+
La configuración cuenta con [[Systemd#Editing_provided_unit_files|los archivos drop-in]] de systemd para sobrescribir los parámetros predeterminados que se pasan a agetty.
  
=== Usando agetty ===
+
La configuración difiere según se trate de consolas virtuales o de serie. En la mayoría de los casos en que se desea configurar el inicio de sesión automático en la consola virtual, el nombre del dispositivo es {{ic|tty''N''}}, donde {{ic|''N''}} es un número. La configuración del inicio de sesión automático para las consolas de serie será un poco diferente. Los nombres de los dispositivos de las consolas de serie aparecen como {{ic|ttyS''N''}}, donde {{ic|''N''}} es un número.
Este es el método preferido y más limpio. Edite {{ic|/etc/inittab}} así:
+
{{hc|/etc/inittab|
+
c1:2345:respawn:/sbin/agetty -a ''USERNAME'' -8 -s 38400 tty1 linux
+
c2:2345:respawn:/sbin/agetty -8 -s 38400 tty2 linux
+
c3:2345:respawn:/sbin/agetty -8 -s 38400 tty3 linux
+
c4:2345:respawn:/sbin/agetty -8 -s 38400 tty4 linux
+
c5:2345:respawn:/sbin/agetty -8 -s 38400 tty5 linux
+
c6:2345:respawn:/sbin/agetty -8 -s 38400 tty6 linux
+
}}
+
para iniciar sesión automáticamente del usuario {{ic|''USERNAME''}} en la primera consola (tty1).
+
  
Si desea que su usuario inicie automáticamente sesión, pero sin saltarse la contraseña del sistema, añada la siguiente línea:
+
=== Consola viertual ===
 +
Cree el siguiente archivo (y los directorios principales):
  
c1:2345:respawn:/sbin/agetty -a ''USERNAME'' -o "-- \u" -8 -s 38400 tty1 linux
+
{{hc|/etc/systemd/system/getty@tty1.service.d/autologin.conf|2=
 
+
[Service]
=== Usando mingetty ===
+
ExecStart=
{{Nota|Aunque derivado de {{pkg|mingetty}}, {{AUR|fgetty}} no es compatible con el parámetro {{ic|--autologin}}.}}
+
ExecStart=-/usr/bin/agetty --autologin ''username'' --noclear %I 38400 linux
 
+
Como alternativa, puede instalar el paquete {{pkg|mingetty}} desde los [[Official Repositories|repositorios oficiales]]. Mingetty está diseñado para ser un [[getty]] minimalista y permitir automáticamente el inicio de sesión:
+
{{hc|/etc/inittab|
+
c1:2345:respawn:/sbin/mingetty --autologin ''USERNAME'' tty1 linux
+
c2:2345:respawn:/sbin/agetty -8 -s 38400 tty2 linux
+
c3:2345:respawn:/sbin/agetty -8 -s 38400 tty3 linux
+
c4:2345:respawn:/sbin/agetty -8 -s 38400 tty4 linux
+
c5:2345:respawn:/sbin/agetty -8 -s 38400 tty5 linux
+
c6:2345:respawn:/sbin/agetty -8 -s 38400 tty6 linux
+
 
}}
 
}}
  
Utilizando los métodos anteriores, obtendrá un bucle de reinicio de sesión al intentar cerrar la sesión, por lo que no será posible salir de la tty1. Si desea iniciar sesión sólo en el arranque, y que sea posible salir, modifique el archivo en los siguientes términos:
+
{{Sugerencia|La opción {{ic|1=Type=idle}} retrasará la ejecución de agetty hasta que todos los trabajos (peticiones de cambio de estado de las unidades) se completen. Por otro lado, cuando se utiliza {{ic|1=Type=simple}}, el servicio se pondrá en marcha de inmediato, pero puede producir mensajes relativos el arranque de systemd que se arrojen en el prompt del login. Esta opción es útil cuando  [[Start X at Login (Español)|se inicia X automáticamente]]. Para usar esta opción, añada {{ic|1=Type=simple}} en {{ic|autologin.conf}}.}}
{{hc|/etc/inittab|
+
c2:2345:respawn:/sbin/agetty -8 -s 38400 tty2 linux
+
c3:2345:respawn:/sbin/agetty -8 -s 38400 tty3 linux
+
c4:2345:respawn:/sbin/agetty -8 -s 38400 tty4 linux
+
c5:2345:respawn:/sbin/agetty -8 -s 38400 tty5 linux
+
c6:2345:respawn:/sbin/agetty -8 -s 38400 tty6 linux
+
a1:2345:wait:/sbin/mingetty --autologin ''USERNAME'' tty1 linux
+
c1:2345:respawn:/sbin/agetty -8 -s 38400 tty1 linux
+
}}
+
  
=== Usando un programa de acceso en C ===
+
Si quiere utilizar otra ''tty'' distinta de ''tty1'' vea [[Systemd FAQ#Q:_How_do_I_change_the_number_of_gettys_running_by_default.3F|Systemd FAQ]].
  
Como alternativa, puede ser escrito un programa de acceso en C:
+
=== Consola de serie ===
  
{{hc|autologin.c|
+
Cree el siguiente archivo (y los directorios principales):
#include <unistd.h>
+
  
int main(void) {
+
{{hc|/etc/systemd/system/getty@tty1.service.d/autologin.conf|2=
  execlp("login", "login", "-f", "''USERNAME''", NULL);
+
[Service]
}
+
ExecStart=
 +
ExecStart=-/usr/bin/agetty --autologin ''username'' --noclear %I 38400 linux
 
}}
 
}}
  
Aquí, la función en C {{ic|execlp}}  ejecuta el comando  {{ic|login -f ''USERNAME''}}.
+
==Véase también==
 
+
El programa debe ser compilado y copiado a un lugar adecuado:
+
*[[Systemd_(Español)#Cambiar_el_target_predeterminado_para_arrancar|Cambiar el runlevel/target predefinido al arrancar]].
 
+
$ gcc -o autologin autologin.c
+
# cp autologin /usr/local/sbin/
+
 
+
Por último, modificar {{ic|/etc/inittab}} para usarlo:
+
{{hc|/etc/inittab|
+
c1:2345:respawn:/sbin/agetty -n -l /usr/local/sbin/autologin -s 38400 tty1 linux
+
c2:2345:respawn:/sbin/agetty -8 -s 38400 tty2 linux
+
c3:2345:respawn:/sbin/agetty -8 -s 38400 tty3 linux
+
c4:2345:respawn:/sbin/agetty -8 -s 38400 tty4 linux
+
c5:2345:respawn:/sbin/agetty -8 -s 38400 tty5 linux
+
c6:2345:respawn:/sbin/agetty -8 -s 38400 tty6 linux
+
}}
+
 
+
== Systemd ==
+
{{Merge|Systemd|Esta sección debe ser fusionada con [[systemd]] y reemplazada con un enlace allí}}
+
Cree un archivo de servicio similar a {{ic|getty@.service}} y cópielo en {{ic|/etc/systemd/system/}}:
+
 
+
# cp /usr/lib/systemd/system/getty@.service /etc/systemd/system/autologin@.service
+
 
+
{{Nota|{{ic|/etc/systemd/system/}} tiene prioridad sobre {{ic|/usr/lib/systemd/system/}}}}
+
 
+
Una vez creado, puede establecer un enlace con el nuevo {{ic|autologin@.service}} a la tty elegida, por ejemplo {{ic|tty1}}, {{ic|tty2}}, [...] {{ic|tty8}}, etc., especificándole un alias en la sección {{ic|[Install]}} del correspondiente archivo unit. Además, cambie el valor de {{ic|ExecStart}} en {{ic|autologin@.service}}, para que quede en algo similar a lo siguiente:
+
 
+
{{hc|/etc/systemd/system/autologin@.service|
+
2=[Service]
+
[...]
+
ExecStart&#61;-/sbin/agetty --noclear -a ''USERNAME'' %I 38400
+
Type=idle
+
[...]
+
[Install]
+
Alias=getty.target.wants/getty@tty1.service
+
}}
+
{{Tip|Es posible cambiar {{ic|1=Type=idle}} a {{ic|1=Type=simple}} para permitir una ligera demora en la ejecución de agetty hasta que todos los procesos (peticiones de cambio de estado de las unidades) se hayan completado. Esta opción es más útil [[Start X at Boot|iniciando X automáticamente]]. Consulte {{ic|man systemd.service}} para más información. {{Nota|{{ic|1=Type=simple}} puede hacer que los mensajes de arranque de systemd contaminen el mensaje del login.}}}}
+
 
+
Por razones de seguridad es posible que también desee cambiar {{ic|1=Restart=always}} a {{ic|1=Restart=no}}.
+
 
+
Por ultimo, debe volver a cargar los demonios y habilitar e iniciar el servicio:
+
# systemctl daemon-reload
+
# systemctl enable autologin@tty1.service
+
# systemctl start autologin@tty1.service
+

Revision as of 07:38, 12 February 2014

En este artículo se describe cómo acceder automáticamente a una consola virtual al final del proceso de arranque. Este artículo solo cubre el acceso a la consola (o tty); los métodos para iniciar un servidor X se describen en Start X at Login.

Configuración

La configuración cuenta con los archivos drop-in de systemd para sobrescribir los parámetros predeterminados que se pasan a agetty.

La configuración difiere según se trate de consolas virtuales o de serie. En la mayoría de los casos en que se desea configurar el inicio de sesión automático en la consola virtual, el nombre del dispositivo es ttyN, donde N es un número. La configuración del inicio de sesión automático para las consolas de serie será un poco diferente. Los nombres de los dispositivos de las consolas de serie aparecen como ttySN, donde N es un número.

Consola viertual

Cree el siguiente archivo (y los directorios principales):

/etc/systemd/system/getty@tty1.service.d/autologin.conf
[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --autologin username --noclear %I 38400 linux
Sugerencia: La opción Type=idle retrasará la ejecución de agetty hasta que todos los trabajos (peticiones de cambio de estado de las unidades) se completen. Por otro lado, cuando se utiliza Type=simple, el servicio se pondrá en marcha de inmediato, pero puede producir mensajes relativos el arranque de systemd que se arrojen en el prompt del login. Esta opción es útil cuando se inicia X automáticamente. Para usar esta opción, añada Type=simple en autologin.conf.

Si quiere utilizar otra tty distinta de tty1 vea Systemd FAQ.

Consola de serie

Cree el siguiente archivo (y los directorios principales):

/etc/systemd/system/getty@tty1.service.d/autologin.conf
[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --autologin username --noclear %I 38400 linux

Véase también