Linux系统用户管理

时间:2023-06-07 11:37:38

一、Linux账户

  广义上讲,Linux的账户包括用户账户和组账户两种。

  Linux系统下的用户账户有两种,普通用户和超级用户。普通用户在系统中的任务就是普通工作,管理员在系统上的任务就是对普通用户和整个系统进行管理。管理员对系统具有绝对的控制权,能够对系统进行一切操作。

  除了用户账户之外,Linux系统下还有组账户。组是用户的集合。在Linux系统中组有两种类型:私有组和公共组,当创建一个新用户时,若没有指定他所属的组,Linux系统就创建一个和该用户同名的私有组。这个私有组只包括这个用户自己,而标准组则可以容纳多个用户。

二、Linux账户配置

  /etc/passwd:用户账户信息配置文件(看不到密码)

  各列含义:用户名  口令  用户标识号  组标识号  注释性描述  自家目录  命令解释器

  /etc/shadow:用户账户密码(密文)

  /etc/group:用户组账户信息配置文件(看不到密码)

  各列含义:组名  组口令  GID  组成员

  /etc/gshadow:用户组账户密码(密文)

三、Linux账户管理命令

1. 添加用户:

useradd 用户名

useradd -c “注释” 用户名  (添加注释性描述)

2. 修改用户:

usermod -l 新用户名 原用户名(-l一定要加上,只改变用户名,不改变用户主目录)

usermod -L 用户名:锁定账户:用户无法登陆

usermod -U 用户名:解锁账户

3. 删除用户:

userdel 用户名:删除用户(目录还在,私有组还在)

userdel -r 用户名:删除账户同时删除主目录和私有组

4. 添加用户组:

groupadd 组名

5. 修改用户组:

groupmod -n 新组名 原组名

6. 删除用户组:

groupdel 用户组名

7. 把一个用户加入一个组:

用户未创建:useradd -G 组名 用户名  (有私有组也有标准组)

用户已存在:usermod -G 组名,回车,输入用户名

8. 账户密码管理:

设置密码:passwd 用户名,回车,输入密码

(新建用户无密码,无法登陆系统,必须设置密码)

(若不输入用户名表示修改当前用户的密码,普通用户无法修改其他用户的密码)

删除密码:passwd -d 用户名(只有管理员账户root才能使用)

锁定密码:passwd -l 用户名(实现功能与usermod -L一样,都是使用户无法登陆系统)

解锁密码:passwd -u

9. 账户信息查询:

账户信息配置文件:/etc/login.defs(针对所有用户)

查看账户信息:chage -l 用户名 读取的信息来自/etc/login.defs

修改账户信息:Chage -m 2 -M 30 -W 5 用户名

(用户在2天之内不能修改自己的密码,密码将在30之后过期,将在过期5天前给用户警告信息)(针对个别用户)

id:查看当前用户信息如uid,gid等

groups:查看当前用户所在的组

newgrp 组名:改变当前用户的默认组(默认为私有组)

10. 切换用户:

切换用户:su - 用户名

(普通用户切换到管理员需要密码,管理员切换到普通用户不需要密码)

借用管理员权限来执行命令:sudo 命令

(需要先在visudo文件中配置相关权限,使用密码是当前用户的密码)