linux(十三)账号管理


1 /etc/passwd

每一行是一个账号,除了root账号外,还有一些系统账号,如bin、daemon。

每一行用:分割,共7个部分,分别是

[账户名称:密码:UID:GID:说明:home目录:shell]

2 /etc/shadow

每一行是一个账号

每一行用:分割,共9个字段,分别是

[账号名称:密码:最近修改密码日期:密码不可修改天数:密码需要修改天数:密码变更前告警天数:密码过期后账号宽限天数:账号失效日期:保留]

3 /etc/group

 [组名:组密码:GID:此群组支持的账号名称]

4 su

su用于身份切换

su root和su - root区别

su root方式切换root账号,读取环境变量的方式是使用non-login shell,这种方式登录后,只会读取~/.bashrc这个文件,并把这个文件中的shell脚本执行一遍,这样这个文件中的变量就加载到系统中,成为环境变量。

因为non-login shell只会读取这一个文件,所以,其他配置文件中的变量不会加载进来,也就是说,通过su root方式切换root账户,很多环境变量还是上一个普通用户的环境变量。比如下图:

 su - root切换root账号,读取环境变量的方式是使用login shell,也就是使用完整登录bash的方式读取配置文件,会重新加载一遍环境变量

 5 sudo

当我们使用普通账号,但是我们希望不切换到root账户,也能够以root身份执行某一指令,这种情况下我们可以使用sudo。

若想让普通用户具有sudo权限,首先必须root给这个普通用户授权才行,授权方式就是编辑/etc/sudoers这个文件。

6 w,who查询在线用户