【Ubuntu与Linux操作系统:三、用户与组管理】

第3章 用户与组管理


3.1 用户与组概述

Linux是一个多用户操作系统,允许多个用户同时登录并执行任务。每个用户在系统中都有独立的身份和权限。为了更高效地管理用户,Linux通过"组"的概念将用户进行分类。

用户(User)

  • 根用户(Root):系统的超级用户,拥有最高权限,可执行任何操作。
  • 普通用户:权限受限,只能访问自己的文件和指定的资源。
  • 系统用户:用于运行系统服务的用户,通常不可直接登录。

组(Group)

  • Linux中的组是用户的集合。组允许多个用户共享资源,简化权限管理。
  • 每个用户至少属于一个组,称为"主组",也可以属于多个"附加组"。

用户和组的基本信息存储在以下文件中:

  • /etc/passwd:记录用户的基本信息。
  • /etc/group:记录组的基本信息。
  • /etc/shadow:存储用户密码的加密信息。

通过合理划分用户与组,可以提高系统的安全性和管理效率。


3.2 使用图形化工具管理用户和组

在Ubuntu中,用户和组的管理可以通过图形化工具完成,这种方法适合初学者和桌面用户。

1. 打开"设置"应用

  • 在Ubuntu桌面环境下,点击顶部菜单栏中的"设置"图标,或者通过"活动"搜索栏输入"设置"。

2. 进入用户设置

  • 在"设置"应用中,选择"用户"选项,系统会显示当前的用户信息以及管理选项。

3. 管理用户

  • 添加用户:点击"添加用户",输入用户名、密码、权限类型(管理员或标准用户)等信息。
  • 修改用户信息:选择用户后可以修改密码、权限等设置。
  • 删除用户:通过"删除"按钮移除用户,系统会提示是否保留该用户的数据。

4. 管理组

  • 图形化工具通常通过软件中心或第三方工具(如gnome-system-tools)实现组管理。用户可以添加组、将用户分配到组中或从组中移除。

使用图形化工具虽然直观,但在需要批量操作或管理复杂权限时,命令行工具更高效。


3.3 使用命令行工具管理用户和组

命令行工具是管理用户和组的核心方法,特别是在服务器或无图形界面的环境下。以下是常用的用户和组管理命令:

1. 用户管理

  • 添加用户

    bash 复制代码
    sudo adduser 用户名

    此命令会交互式要求设置密码和用户信息。

  • 修改用户

    bash 复制代码
    sudo usermod -G 新组 用户名

    此命令将用户加入指定组。

  • 删除用户

    bash 复制代码
    sudo deluser 用户名

    如果需要同时删除用户的主目录,可以加上--remove-home选项。

2. 组管理

  • 添加组

    bash 复制代码
    sudo groupadd 组名
  • 删除组

    bash 复制代码
    sudo groupdel 组名
  • 修改组

    bash 复制代码
    sudo gpasswd -a 用户名 组名

    此命令将用户添加到指定组。

3. 查询用户和组信息

  • 查看用户所属组:

    bash 复制代码
    groups 用户名
  • 查看当前用户信息:

    bash 复制代码
    id

熟练掌握命令行工具,可以帮助管理员高效完成用户与组的管理任务。

相关推荐
DoraBigHead28 分钟前
小哆啦解题记——两数失踪事件
前端·算法·面试
不太可爱的大白28 分钟前
Mysql分片:一致性哈希算法
数据库·mysql·算法·哈希算法
Tiandaren4 小时前
Selenium 4 教程:自动化 WebDriver 管理与 Cookie 提取 || 用于解决chromedriver版本不匹配问题
selenium·测试工具·算法·自动化
花嫁代二娃4 小时前
Linux:环境变量
linux
岁忧5 小时前
(LeetCode 面试经典 150 题 ) 11. 盛最多水的容器 (贪心+双指针)
java·c++·算法·leetcode·面试·go
乌托邦的逃亡者5 小时前
Docker的/var/lib/docker/目录占用100%的处理方法
运维·docker·容器
chao_7895 小时前
二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
开发语言·数据结构·python·算法·leetcode
ldj20206 小时前
Jenkins 流水线配置
运维·jenkins
秋说7 小时前
【PTA数据结构 | C语言版】一元多项式求导
c语言·数据结构·算法
Maybyy8 小时前
力扣61.旋转链表
算法·leetcode·链表