当前位置: 首页 > article >正文

【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. 用户管理

  • 添加用户

    sudo adduser 用户名
    

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

  • 修改用户

    sudo usermod -G 新组 用户名
    

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

  • 删除用户

    sudo deluser 用户名
    

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

2. 组管理

  • 添加组

    sudo groupadd 组名
    
  • 删除组

    sudo groupdel 组名
    
  • 修改组

    sudo gpasswd -a 用户名 组名
    

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

3. 查询用户和组信息

  • 查看用户所属组:

    groups 用户名
    
  • 查看当前用户信息:

    id
    

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


http://www.kler.cn/a/501901.html

相关文章:

  • 51单片机入门基础
  • 【大模型入门指南 07】量化技术浅析
  • poi处理多选框进行勾选操作下载word以及多word文件压缩
  • 隐私计算,构建安全的未来数据空间
  • 《机器学习》——TF-IDF(关键词提取)
  • 一、智能体强化学习——强化学习基础
  • 【Linux】深刻理解软硬链接
  • KylinV10安装CDH6.3.1
  • SpringBoot 基础学习
  • 蓝桥杯_B组_省赛_2022(用作博主自己学习)
  • 人工智能:人形机器人的开发需求会创造哪些热门的就业岗位?
  • 基于深度学习的视觉检测小项目(十二) 使用线条边框和渐变颜色美化界面
  • JSON转EXCEL
  • 《零基础Go语言算法实战》【题目 2-27】goroutine 的使用问题
  • MPLS原理及配置
  • 【SpringBoot】用一个常见错误说一下@RequestParam属性
  • 解锁“搭子小程序”开发新机遇,助力企业数字化转型
  • 【SH】Xiaomi9刷Windows10系统研发记录 、手机刷Windows系统教程、小米9重装win10系统
  • HTML实战课堂之简单的拜年程序
  • 4G、5G移远模块SIM卡热插拔问题解决
  • 10.Linux 时间
  • 一文讲解常见API开发工具
  • 【机器学习:十、神经网络概述】
  • 1. 初识Scala
  • 一 rk3568 Android 11固件开发环境搭建 (docker)
  • NAT 代理服务器