借助deepseek重学linux第二周
第二周的核心目标很明确:管理“谁”能访问“什么”,以及“数据放在哪”。这周要从单打独斗,切换到模拟一个三人小团队,并开始自己动手挂载磁盘。以下准备的每日必修命令和练习仪式,每一条都对应着生产环境的真实场景。
第二周的核心目标很明确:管理“谁”能访问“什么”,以及“数据放在哪”。这周要从单打独斗,切换到模拟一个三人小团队,并开始自己动手挂载磁盘。以下准备的每日必修命令和练习仪式,每一条都对应着生产环境的真实场景。
第二周每日必修命令清单
一、用户与组管理(人员入职/离职/调岗)
| 命令 | 解释 | 使用场景 | 练习目的 |
| useradd -m userA | 新建用户 userA,并自动创建其家目录 | 新同事入职,给他开一个系统账号 | 掌握标准建用户流程,理解 -m 的必要性 |
| passwd userA | 为 userA 设置登录密码 | 激活账号,让用户能登录 | 区分 root 改别人密码和普通用户改自己密码 |
| groupadd dev | 创建名为 dev 的用户组 | 按部门/角色分组,如开发组、运维组 | 为权限的分组管理打下基础 |
| usermod -aG dev userA | 将已有用户 userA 加入附属组 dev | 把同事加入项目组,让他能访问组内资源 | 注意 -aG 是追加,漏掉 -a 会把人从其他组移除 |
| id userA | 查看用户的 UID、主组、附属组 | 改完组结构后,检查生效没有 | 验证“这个人到底属于哪些组”的终极大法 |
| userdel -r userC | 删除用户并清空其家目录 | 同事离职,回收账号和文件 | 安全清理,-r 会连家目录一起删,上线前要二次确认 |
二、文件权限与所有权(安全访问控制)
| 命令 | 解释 | 使用场景 | 练习目的 |
| chown userA:dev /project | 将 /project 目录的所有者改为 userA,所属组改为 dev | 项目目录划归某个负责人,并由项目组共享 | 理解“谁创建的不等于谁拥有”,root 可以分配 |
| chmod 770 /project | 赋权:所有者、同组人可读可写可执行,其他人无任何权限 | 绝密项目目录,只允许项目组内访问,外人完全阻隔 | 必须区分数字模式 rwx 的累加:4(r)+2(w)+1(x) |
| chmod g+s /project | 设置组ID(SGID)位,让在该目录下新建的文件自动继承目录的所属组 | 确保团队协作时,所有人创建的文件都属于同一个组 | 这是解决“我建的文件你改不了”的关键技术 |
| ls -ld /project | 查看目录自身的权限,而非其内容 | 检查目录是否可被进入、被列表 | 理解 x 对目录意味着“可进入”,r 意味着“可列出文件名” |
| su - userA | 完整切换用户身份,同时加载该用户的环境变量 | 模拟用户登录,验证权限配置是否正确 | 排错时用来“变身”成出问题的用户,复现现场 |
三、磁盘与存储(数据安全与扩容)
| 命令 | 解释 | 使用场景 | 练习目的 |
| lsblk | 列出所有块设备(磁盘、分区)树状图 | 查看新插入的虚拟磁盘是否被系统识别,名称是什么(sdb?) | 任何磁盘操作的第一步,确认目标盘 |
| fdisk /dev/sdb | 进入交互式分区工具,为磁盘创建分区 | 新建一块空盘,需要先分区才能用 | 掌握 n(新建)、w(写入)流程,理解主分区和扩展分区 |
| mkfs.xfs /dev/sdb1 | 在分区上创建 XFS 文件系统 | 分区后必须格式化,才能存放文件 | 推荐用 XFS,CentOS 7+ 默认,适合大文件,比 ext4 更适合现代运维 |
| mkdir /data & mount /dev/sdb1 /data | 创建挂载点,挂载分区到目录 | 给新磁盘分配一个“入口”,让系统能从 /data 访问到这块盘 | 理解 Linux 单根树状结构,一切皆文件,磁盘是挂在目录上的 |
| df -hT | 查看所有挂载点及其文件系统类型、使用率 | 挂载后验证是否成功,以后也是日常巡检命令 | 和 lsblk 搭配,分清“物理视图”和“逻辑使用视图” |
| blkid /dev/sdb1 | 查看分区的 UUID 和文件系统类型 | 获取设备的唯一标识符,用于写入 /etc/fstab | 避免用 /dev/sdb1 这种不稳定的设备名,UUID 永不会变 |
| 编辑 /etc/fstab:UUID=xxx /data xfs defaults 0 0 | 配置开机自动挂载 | 不想每次重启后手动挂盘,就必须加这一行 | 运维红线:改完 fstab 后必须执行 mount -a 验证,否则改错可能启不来系统 |
你的第二周每日练习仪式(约50分钟)
请在你的 CentOS 9 虚拟机上,按顺序来一套组合拳:
-
用户组与权限仿真
-
创建三个用户:
userA、userB、userC,并设置密码。 -
创建组
project,把userA和userB加入该组,userC单着。 -
创建目录
/srv/project,设置所有者userA,所属组project,权限770。 -
给目录设
chmod g+s(SGID)。 -
依次切换到
userA、userB、userC,尝试:cd进目录、touch一个文件、编辑该文件。观察谁被拒绝,谁看到的文件所有者是谁。
-
-
磁盘生命周期实战
-
在虚拟机设置里添加一块新硬盘(大小随意)。重启或在线扫描(
echo "- - -" > /sys/class/scsi_host/host0/scan,不过重启最简单)。 -
用
lsblk确认新磁盘,比如/dev/sdb。 -
fdisk /dev/sdb→n(分区)→w(保存)。得到/dev/sdb1。 -
mkfs.xfs /dev/sdb1格式化。 -
建挂载点
mkdir /data,挂载mount /dev/sdb1 /data,用df -hT验证。 -
获取 UUID:
blkid /dev/sdb1,写入/etc/fstab,语法严格检查。 -
执行
mount -a测试挂载,无报错就是胜利。 -
终极测试:
reboot重启,重新登录后用df -h看/data还在不在。
-
-
排错应急练习
-
故意在
/etc/fstab里写一个错误的 UUID,执行mount -a看看报什么错,然后再改回来。体会“一个小错误导致无法开机”的恐惧,从而养成改完fstab必测试的习惯。
-
完成这周的训练后,你对 Linux 权限模型和存储管理的理解,会从“看书知道”变成“手熟而已”。下周我们就要进入网络排错实战了,带着这周的用户感,去模拟张三连不上服务的场景。有任何卡住的报错,直接发给我。
更多推荐



所有评论(0)