在Raspbian中禁用GUI的自动登录


15

引导时,禁用GUI时如何使RPi自动登录?

在启用GUI的情况下登录时,无需键入密码,因此可能有一种在控制台中禁用密码提示的简便方法。


非常危险,我错过了没有密码的问题,而且似乎已经把SD卡弄坏了。被警告!

Answers:


19

对于Raspbian Wheezy:

您应该能够编辑/ etc / inittab文件以启用自动登录。

在/ etc / inittab中找到这样的行

1:2345:respawn:/sbin/getty --noclear 38400 tty1

这将启动tty1上的getty进程。您可以将getty --autologin选项添加到该行:

1:2345:respawn:/sbin/getty --autologin {USERNAME} --noclear 38400 tty1

将{USERNAME}替换为您要登录的用户。

注意:我尚未对此进行测试,请查看手册页以获取更多信息。

更新: Raspbian Jessie使用systemd,因此不使用inittab。以下是对杰西可能有用的常见问题解答:https : //fedoraproject.org/wiki/Systemd#How_do_I_set_automatic_login_on_a_virtual_console_terminal.3F

FAQ适用于Fedora,但在Raspbian Jessie上应该非常相似。

UPDATE2:上面的页面现在不见了,所以这里是Wayback机器的内容:

如何在虚拟控制台终端上设置自动登录?

首先创建一个类似于getty @ .service的新服务:

# cp /lib/systemd/system/getty@.service \
     /etc/systemd/system/autologin@.service
# ln -s /etc/systemd/system/autologin@.service \
     /etc/systemd/system/getty.target.wants/getty@tty8.service

然后编辑ExecStart,Restart和Alias值,如下所示:

...
ExecStart=-/sbin/mingetty --autologin USERNAME %I
Restart=no
...
Alias=getty.target.wants/getty@tty8.service

最后重新加载守护程序并启动服务:

systemctl daemon-reload
systemctl start getty@tty8.service

请注意,如果您退出tty8会话,则除非下次将Restart设置为“ always”,否则直到下次重新引导或由systemctl手动启动之前都无法使用它,但是出于安全原因,我强烈建议您避免使用它。


1
我已经测试过了 它工作正常。此外,把东西在〜/ .bash_profile中,并已登录后,将获得自动运行。
greggo

2
请更新答案!中没有/etc/inittab文件raspbian jessie
Oki Erie Rinaldi

@OkiErieRinaldi我添加了一个可能对Jessie有帮助的链接。
Craig

不,启动后我仍然会收到登录提示。
IgorGanapolsky '16

Raspbian Jessie解决方案不起作用。
piepi'1

5

有一种使用raspi-config进行此操作的简便方法,本文对此进行了说明:http://www.opentechguides.com/how-to/article/raspberry-pi/5/raspberry-pi-auto-start.html

显示:

  1. 如何自动登录到shell提示符(使用与上面类似的方法)
  2. 在启动时运行脚本
  3. 使用raspi-config自动启动桌面

1
本文显示了如何使用raspi-config自动登录到桌面,但是问题是询问没有GUI或桌面时如何自动登录(因此出现shell提示)。但是,本文还显示了如何自动登录到Shell。
kolin

2

这对我和Jessie Lite一起工作:

sudo -i
mkdir -pv /etc/systemd/system/getty@tty1.service.d
nano /etc/systemd/system/getty@tty1.service.d/autologin.conf

内容:

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux

唯一的收获是我无法再使用SSH登录-访问被拒绝。:-(


1
一个好的答案应该说明它为什么起作用。这两个步骤是做什么的?您真的可以说它可以破坏SSH吗?
Jacobm001

这行不通!仍然强迫我在命令行登录。
IgorGanapolsky '16

使用$ TERM对您有用吗? ExecStart=-/usr/bin/agetty --autologin username --noclear %I $TERM
esharp '16

0

如果要在串行线路上自动登录Raspberry Pi,则需要使用sudo权限编辑pi上的/ etc / inittab文件。

在/ etc / inittab中找到这样的行

T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100

将getty --autologin选项添加到该行。

T0:23:respawn:/sbin/getty --autologin {username} -L ttyAMA0 115200 vt100

保存并重新启动。


什么是T0:23?? 我以为应该1:2345
IgorGanapolsky '16

0

我正在运行NOOBS,并且具有一个稍微不同的inittab文件。这是我更改的内容,将T0行和“ 1:2345行”上的“-自动登录”组合在一起:

#1:2345:respawn:/sbin/getty --noclear 38400 tty1"
1:2345:respawn:/bin/login -f pi tty1 <dev/tty1 >/dev/tty1 2>&1
T0:23:respawn:/sbin/getty --autologin pi - L ttyAMA0 115200 vt100

0

所以lightdm.conf方法对我不起作用,经过一番尝试之后,我发现下面是最简单的方法。

cd / etc / systemd / system /

从那里输入:ls

您将看到autologin @ .service

只是sudo nano autologin @ .service

并更改行ExecStart =-/ sbin / agetty --autologin pi --noclear%I $ TERM

ExecStart =-/ sbin / agetty-自动登录[用户名] --noclear%I $ TERM

其中[Username]放置您要登录的用户,不带方括号。

现在我确实使用raspi-config设置进行了pi自动登录,但是使用上述方法为新用户更改了自动登录。

希望这可以帮助

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.