【linux石穿】01-切换root账户

前言

linux系统中真正标识用户的其实并不是我们的用户名,而是用户名背后的uid。uid和用户名的关系就好比我们的身份证号和姓名的关系,名字不论怎么变,id是不变的。在linux系统中,用户一般分为三类:

  • 系统管理员:uid=0
  • 系统用户:1<=uid<=999
  • 普通用户:uid>=1000

识别UID

在笔者使用的ubuntu系统中,默认登录用户是普通用户,可用id命令查看

mango@wanzhouyi:~$ id mango
uid=1000(mango) gid=1000(mango) groups=1000(mango),4(adm),20(dialout),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),117(netdev)

mango@wanzhouyi:~$ id root
uid=0(root) gid=0(root) groups=0(root)
mango@wanzhouyi:~$

root账户是存在于当前系统中的,那么问题来了

怎么切换到root用户?

通常我们可以用su root命令,来切换到root用户。不幸的是,密码怎么输都不对

mango@wanzhouyi:~$ su root
Password:
su: Authentication failure
mango@wanzhouyi:~$

出现这种情况,一般有两种原因,原因一是真的输错了,原因二则是可能还没有给root账户设置密码(出于安全考虑,默认时Ubuntu的root用户时没有固定密码的,它的密码是随机产生并且动态改变的)。

我们可以通过sudo passwd root来给root用户设置一个密码。

mango@wanzhouyi:~$ sudo passwd root
[sudo] password for mango:
New password:
Retype new password:
passwd: password updated successfully
mango@wanzhouyi:~$ su root
Password:
root@wanzhouyi:/home/mango# exit
mango@wanzhouyi:~$

如上设置了root用户密码之后就可以通过密码方式切换至root账户了。

怎么禁用和启用root

由于root权限太过敏感,一般情况下是建议禁用的。

mango@wanzhouyi:~$ sudo passwd -l root
[sudo] password for mango:
passwd: password expiry information changed.
mango@wanzhouyi:~$ su root
Password:
su: Authentication failure
mango@wanzhouyi:~$

如上所示,我们可以通过sudo passwd -l root命令来禁用root。这里虽然是禁用了,但是root的密码还保存着。但即使这样,切换到root还是会鉴权失败。
若要再次启用root,则可以使用sudo passwd -u root命令。

mango@wanzhouyi:~$ sudo passwd -u root
passwd: password expiry information changed.
mango@wanzhouyi:~$ su root
Password:
root@wanzhouyi:/home/mango# exit
mango@wanzhouyi:~$

你可能感兴趣的:(【linux石穿】01-切换root账户)