Difference between revisions of "Automatic login to virtual console"
(→Service) |
m (→Service: add templates) |
||
(16 intermediate revisions by 8 users not shown) | |||
Line 7: | Line 7: | ||
{{Article summary heading|Related}} | {{Article summary heading|Related}} | ||
{{Article summary wiki|Display Manager}} | {{Article summary wiki|Display Manager}} | ||
+ | {{Article summary wiki|Silent boot}} | ||
{{Article summary wiki|Start X at Login}} | {{Article summary wiki|Start X at Login}} | ||
{{Article summary end}} | {{Article summary end}} | ||
Line 15: | Line 16: | ||
Create a new service file similar to {{ic|getty@.service}} by copying it to {{ic|/etc/systemd/system/}}: | Create a new service file similar to {{ic|getty@.service}} by copying it to {{ic|/etc/systemd/system/}}: | ||
− | # cp /usr/lib/systemd/system/getty | + | # cp /usr/lib/systemd/system/getty@.service /etc/systemd/system/autologin@.service |
{{Note|{{ic|/etc/systemd/system/}} takes precedence over {{ic|/usr/lib/systemd/system/}}.}} | {{Note|{{ic|/etc/systemd/system/}} takes precedence over {{ic|/usr/lib/systemd/system/}}.}} | ||
− | + | Then change the {{ic|ExecStart}} line to include the {{ic|-a ''USERNAME''}} parameter: | |
{{hc|/etc/systemd/system/autologin@.service| | {{hc|/etc/systemd/system/autologin@.service| | ||
2=[Service] | 2=[Service] | ||
− | [...] | + | ''[...]'' |
− | ExecStart | + | ExecStart=-/sbin/agetty --noclear -a ''USERNAME'' %I 38400 |
− | [...] | + | ''[...]'' |
+ | |||
[Install] | [Install] | ||
− | + | WantedBy=getty.target | |
}} | }} | ||
+ | |||
{{Tip|It is possible to change {{ic|1=Type=idle}} to {{ic|1=Type=simple}} and avoid delaying the execution of agetty until all jobs (state change requests to units) are completed. This option is more useful when [[Start X at Login|starting X automatically]]. See {{ic|man systemd.service}} for more info. {{Note|{{ic|1=Type=simple}} can cause systemd boot-up messages to pollute the login prompt.}}}} | {{Tip|It is possible to change {{ic|1=Type=idle}} to {{ic|1=Type=simple}} and avoid delaying the execution of agetty until all jobs (state change requests to units) are completed. This option is more useful when [[Start X at Login|starting X automatically]]. See {{ic|man systemd.service}} for more info. {{Note|{{ic|1=Type=simple}} can cause systemd boot-up messages to pollute the login prompt.}}}} | ||
+ | {{Note|If you are using mingetty, simply replace {{ic|/sbin/agetty}} to {{ic|/sbin/mingetty}}.}} | ||
+ | |||
− | Finally, you need to disable the old getty@.service for the specified tty and enable the new autologin@.service | + | Finally, you need to disable the old {{ic|getty@tty''X''.service}} for the specified tty and enable the new {{ic|autologin@tty''X''.service}}. For example, |
# systemctl daemon-reload | # systemctl daemon-reload | ||
− | # systemctl disable getty@tty1 | + | # systemctl disable getty@''tty1'' |
− | # systemctl enable autologin@tty1 | + | # systemctl enable autologin@''tty1'' |
− | # systemctl start autologin@tty1 | + | # systemctl start autologin@''tty1'' |
− | {{Warning|If you are currently in an X session on the same tty configured in the service file, starting autologin@tty''X''.service will kill your X server.}} | + | {{Warning|If you are currently in an X session on the same tty configured in the service file, starting {{ic|autologin@tty''X''.service}} will kill your X server.}} |
To avoid errors related to display-manager.service in dmesg, you should set the default target to multi-user instead of graphical: | To avoid errors related to display-manager.service in dmesg, you should set the default target to multi-user instead of graphical: | ||
# systemctl enable multi-user.target | # systemctl enable multi-user.target | ||
− | + | ||
+ | ===See also=== | ||
+ | * [[Systemd#Change_default_target_to_boot_into|Change default runlevel/target to boot into]]. |
Revision as of 18:39, 18 February 2013
Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end
This article describes how to automatically log in to a virtual console at the end of the boot process. This article only covers console log-ins; methods for starting an X server are described in Start X at Login.
Service
Create a new service file similar to getty@.service
by copying it to /etc/systemd/system/
:
# cp /usr/lib/systemd/system/getty@.service /etc/systemd/system/autologin@.service
/etc/systemd/system/
takes precedence over /usr/lib/systemd/system/
.Then change the ExecStart
line to include the -a USERNAME
parameter:
/etc/systemd/system/autologin@.service
[Service] [...] ExecStart=-/sbin/agetty --noclear -a USERNAME %I 38400 [...] [Install] WantedBy=getty.target
Type=idle
to Type=simple
and avoid delaying the execution of agetty until all jobs (state change requests to units) are completed. This option is more useful when starting X automatically. See man systemd.service
for more info. Type=simple
can cause systemd boot-up messages to pollute the login prompt./sbin/agetty
to /sbin/mingetty
.
Finally, you need to disable the old getty@ttyX.service
for the specified tty and enable the new autologin@ttyX.service
. For example,
# systemctl daemon-reload # systemctl disable getty@tty1 # systemctl enable autologin@tty1 # systemctl start autologin@tty1
autologin@ttyX.service
will kill your X server.To avoid errors related to display-manager.service in dmesg, you should set the default target to multi-user instead of graphical:
# systemctl enable multi-user.target