我想允许本地登录系统(即键盘和鼠标)的用户不必输入密码。这可能吗?我已经使用 SSH 将系统锁定得非常好,并且它一直伴随着我,所以这不是问题。
答案1
这可能不太安全,但如上所述,如果您可以物理访问未加密的笔记本电脑,您可以进入文件并使用 Linux Live CD/USB 重置密码,或者有时 grub 菜单允许您启动到恢复根目录,然后您可以更改密码。
您是指虚拟控制台还是默认图形控制台?
登录设置(GNOME/KDE)应该有无需密码启动到桌面的选项。
对于虚拟控制台
Arch linux 有一个指南,我认为它应该适用于其他 systemd 发行版。
https://wiki.archlinux.org/index.php/Automatic_login_to_virtual_console
跑步
systemctl edit getty@tty1
并将以下内容放入文件中
[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --autologin username --noclear %I $TERM
我认为这应该让你自动登录到第一个控制台。
答案2
根据 @Roman 提供的大量信息,我根据我的系统(Debian)上的解决方案对他的回答进行了一些修改。对于其他需要此解决方案的人;对于 Debian,请编辑/etc/systemd/system/getty.target.wants/getty\@tty1.service
并添加--autologin root
以以下内容开头的行ExecStart=-
:
ExecStart=-/sbin/agetty --autologin root --noclear %I $TERM
希望这能有所帮助。我意识到在大多数情况下这都是一个安全风险。但是当它是一个固定在我桌子底部的嵌入式路由器并且所有外部身份验证都是通过双因素身份验证完成时......我就不太担心了。
感谢@Roman 的帮助!
答案3
我无法让 agetty 自动登录普通用户而无需密码。它仍然需要密码。但由于我运行的是独立工作站,没有互联网连接,我发现只需清除用户密码即可。现在自动登录可以正常工作。希望在 agetty 的手册页中对此有更好的记录。
答案4
我发现这个稍微不同的方法在禁用 GUI 的 Debian 10 上对我有效:
sudo nano /lib/systemd/system/[email protected]
改变ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM
至ExecStart=-/sbin/agetty -o '-f -p -- \\u' --noclear -a USERNAME %I $TERM
(替换USERNAME
为所需用户)