Skip to content

一、用户管理基础

  1. 用户分类
    • 超级管理员(root):拥有最高权限,可以管理系统的所有文件和服务。
    • 普通用户:只能管理自己相关的文件,通常企业都是通过普通账号登录系统以增加安全性。
    • 虚拟用户:用于运行程序,但不能登录系统。这类用户的UID通常在1-999之间(在某些系统中可能不同)。
  2. 用户身份识别
    • 系统通过UID(用户标识符)来识别用户身份。
    • UID=0表示超级管理员。
    • UID在1-999之间的通常为虚拟用户(或可手动指定为普通用户)。
    • UID在1000及以上的通常为普通用户(在某些系统中可能从500或其他数字开始)。

二、用户相关的配置文件

  1. /etc/passwd:存储用户信息,每行代表一个用户。字段以冒号分隔,包括用户名、密码占位符、UID、GID、用户描述、家目录和默认命令解释器。
  2. /etc/skel/:用户的家目录模板,创建新用户时会自动将这里的隐藏文件复制到新用户的家目录中。

三、用户管理命令

  1. 创建用户:useradd [选项] 用户名
    • -u:指定UID。
    • -g:指定GID(需先创建组)。
    • -M:不创建家目录。
    • -s:指定命令解释器(如/sbin/nologin禁止登录)。
  2. 删除用户:userdel [选项] 用户名
    • -r:删除用户的同时删除其家目录及邮件文件。
  3. 修改用户:usermod [选项] 用户名
    • 可用于修改UID、GID、家目录、命令解释器等。
  4. 设置密码:
    • passwd [用户名]:交互式设置或修改用户密码。
    • echo '密码'|passwd --stdin 用户名:非交互式设置密码(注意,某些系统可能不支持此方式)。
    • Ubuntu系统中可使用echo '用户名:密码'|chpasswd进行非交互式设置。

四、用户切换与密码管理

  1. 用户切换:su - [用户名]
    • 切换到指定用户,-表示同时更新环境变量。
    • 从root切换到普通用户不需要密码,但从普通用户切换到root或另一个普通用户需要目标用户的密码。
  2. 密码管理
    • 设置复杂密码以增加安全性。
    • 可使用mkpasswd等工具生成复杂密码。
    • 使用密码管理软件(如Keepass)保存和管理密码。

五、注意事项

  • 新创建的用户默认没有密码,因此不能远程登录或进行su切换(除非使用root权限)。
  • 指定GID创建用户时,需先使用groupadd命令创建对应的组。
  • 删除用户时,若需同时删除其家目录及邮件文件,应使用-r选项。

感谢阅读,欢迎交流!