Linux 用户、用户组及权限管理,相关个人学习笔记

怎么进入管理员身份

在你当前的统信 UOS 系统里,有两种常用方式进入管理员(root)身份:


方法 1:临时使用管理员权限(推荐)

在需要管理员权限的命令前加上 sudo,输入当前用户密码即可单次授权。

bash

运行

复制代码
# 示例:查看root用户的家目录
sudo ls /root
  • 输入你当前用户 keke 的密码(输入时屏幕不会显示星号,正常输入即可)。
  • 单次命令生效,用完自动回到普通用户,更安全。

方法 2:切换为永久 root 身份

  1. 先切换到 root 用户: bash

    运行

    复制代码
    sudo su -

    输入 keke 的密码后,提示符会从 $ 变成 #,表示已进入 root 权限。

  2. 退出 root 身份,回到普通用户: bash

    运行

    复制代码
    exit

方法 3:直接登录 root(部分系统需要先设置 root 密码)

如果需要直接用 root 登录,先设置 root 密码:

bash

运行

复制代码
sudo passwd root

然后输入两次新的 root 密码,之后就可以用 su - root 切换,或在登录界面选择 root 用户登录。


⚠️ 重要提醒

  • 尽量用sudo:临时授权更安全,避免误操作破坏系统。
  • root 权限下操作要谨慎:删除、修改系统文件时一定要确认命令正确性。
  • 你的当前用户 keke 已经在 sudo 组里,可以直接使用sudo

Linux 系统对用户名格式有严格限制

  • 用户名不能以数字开头,必须以字母或下划线开头。
  • 你使用的 2024001 是纯数字开头,因此系统判定为 "无效的用户名"。

bash

运行

复制代码
#!/bin/bash
for i in $(seq -w 1 20); do
    user="s202400$i"
    useradd $user
    echo "$user:Student@123" | chpasswd
    chage -E 2024-10-01 $user
done

Linux 里 chage -E 设置的是账户过期时间

账户会在 2024-10-01 失效,现在已经是 2026 年,所以这个账户已经被系统锁定,无法登录了

任务 2:创建 students 组并加入所有学生用户

bash

运行

复制代码
# 创建用户组
groupadd students

# 批量将所有学生用户加入该组
for i in $(seq -w 1 20); do
    usermod -aG students s202400$i
done
  • -aG:追加用户到指定组,不脱离原有组(类比 Java 集合的 add 操作)。

任务 3:创建课程目录并设置权限

假设你的教师用户名是 keke(和你之前登录的用户名一致),课程名设为 linux_course

bash

运行

复制代码
# 先创建 /tmp/class 目录(如果不存在)
mkdir -p /tmp/class

# 创建课程文件夹
mkdir /tmp/class/linux_course

# 设置所有者为教师 keke,所属组为 students
chown keke:students /tmp/class/linux_course

# 设置权限:教师(rwx),组内学生(r-x),其他用户无权限
chmod 750 /tmp/class/linux_course
  • 750 权限含义:
    • 所有者(教师):读 / 写 / 执行(rwx = 7)
    • 所属组(students):读 / 执行(r-x = 5)
    • 其他用户:无权限(--- = 0)

任务 4:为教师创建私有文件夹 teacher_files

bash

运行

复制代码
# 在教师主目录创建文件夹
mkdir ~keke/teacher_files

# 设置所有者为 keke,权限为仅本人可读/写/执行
chown keke:keke ~keke/teacher_files
chmod 700 ~keke/teacher_files
  • 700 权限含义:只有教师本人能读写执行,其他用户(包括同组学生)完全无法访问。

任务 5:将 s2024001 设置为 students 组管理员

bash

运行

复制代码
# 将 s2024001 设为 students 组的管理员
gpasswd -A s2024001 students
  • -A:指定组管理员,管理员可以在组内添加 / 删除用户(类比 Java 中给某个用户分配管理员角色)。
相关推荐
sugar__salt6 分钟前
Vue3 基础知识点整理 —— 从入门到响应式核心完全指南
vue.js·笔记·vue·vue3
凉、介10 分钟前
Virtio(三):Virtqueue 建立与 Buffer 提交
笔记·学习·嵌入式·arm·虚拟化·virtio
杯酒慰风尘12 分钟前
chmod 权限计算器使用指南:读懂 755、rwx 与特殊权限
linux
大模型丫丫13 分钟前
Agent开发的难点是什么呢?
大数据·人工智能·学习
REDcker19 分钟前
eBPF 运行时架构:Verifier、JIT、Map 与加载流程
linux·内核·ebpf·bpf
三水不滴24 分钟前
RAG 评测数据集,到底该怎么准备?
经验分享·笔记
吃好睡好便好41 分钟前
露易丝·海的诗歌13
学习·生活
Zsy_0510031 小时前
【Linux】笔记01:基础命令
linux·运维·服务器
Lhappy嘻嘻1 小时前
网络(四)|全网最细网络层原理:IP 协议、IP 地址分类、子网划分、路由转发、NAT 穿透详解
java·笔记·网络协议·计算机网络
YM52e1 小时前
鸿蒙Flutter Positioned定位组件:精确定位子组件
学习·flutter·华为·harmonyos·鸿蒙·鸿蒙系统