Ubuntu root用户直接登录
Ubuntu无密码登录
在一些特殊场景下,需要实现无密码登录。为了实现无密码登录需要修改/etc/passwd文件。只需要删除标红的地方即可。
1 root:x:0:0:root:/root:/bin/bash
2 daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
开机直接登录控制台(Ubuntu 14.04)
同时为了实现字符下无密码登录,我们只需要修改对应的tty配置文件即可,例如需要实现tty1的无密码直接登录。
只需要修改/etc/init/tty1.conf文件,删除
exec /sbin/getty -8 38400 tty1
添加
exec /sbin/getty –autologin root tty1
或者
exec /bin/login -f root < /dev/tty1 > /dev/tty1 2>&1
即可实现无密码直接root登录tty1。
开机直接登录控制台(Ubuntu 16.04)
上面方法在Ubuntu 14.04中可以使用,但是在Ubuntu 16.04中并没有生效,查阅相关资料后,获知在新版本的Ubuntu系统中已经通过systemctl的方式来管理tty服务。因此可以修改
/lib/systemd/system/getty@.service文件在其中添加以下内容即可
ExecStart=
ExecStart=-/sbin/agetty -a root --noclear %I $TERM
以上修改可以对tty1~tty6都实现无密码自动登录。
如果只需要对某个对应的tty进行无密码登录,可以通过systemctl edit getty@tty1.service
在其中添加
ExecStart=
ExecStart=-/sbin/agetty -a root --noclear %I $TERM
然后使用
systemctl cat getty@tty1.service | grep 'Exec'
保证输出以下信息
ExecStart=-/sbin/agetty --noclear %I $TERM
ExecStart=
ExecStart=-/sbin/agetty -a five --noclear %I $TERM
由于对nano编辑器不太熟悉,之前输出以上命令,仅有
ExecStart=-/sbin/agetty --noclear %I $TERM
ExecStart=-/sbin/agetty -a five --noclear %I $TERM
我用vim重新编辑了该文件vim /etc/systemd/system/getty@tty1.service.d/override.conf ,可以实现正确输出。最后通过执行以下两个命令,重启tty1服务,发现已经自动登录。
systemctl daemon-reload
systemctl restart getty@tty1.service
开机直接登录图形界面
修改/etc/lightdm/lightdm.conf文件
[SeatDefaults]
autologin-guest=false
autologin-user=username
autologin-user-timeout=0
autologin-session=lightdm-autologin
参考链接:
[1] getty wiki
[2] CentOS中systemctl使用
[3] Archlinux实现自动登录
[4] systemctl FAQ