前言

初学Linux时,很多报错不是命令记不住,而是不理解底层权限逻辑。 比如sudo创建完目录之后普通用户依旧无法读写、分不清主组附加组、tar解压到处散落文件、less卡住不知道怎么退出。 本文记录实操过程里的重灾区,全是作者的亲身经历,避开网上教程只贴命令不讲副作用的问题。

一、用户与用户组管理

核心概念:用户代表人,组代表岗位/角色。 主组负责个人私有环境,附加组专门用来做多用户协作共享。
图解

主组 - 一个用户只能拥有一个主组

  • 作用:决定用户个人家目录、新建私人文件的默认所属组
  • ⚠️风险:修改主组会改变个人目录归属,普通业务场景尽量不去改动 bash # -g 修改替换用户主组 usermod -g [用户组] [用户]
  • 副作用:一旦修改普通用户主组,会打通个人文件权限,容易出现多人访问逻辑错乱,生产环境尽量避免。

附加组 - 一个用户可以拥有多个附加组

  • 作用:只授予访问共享目录的权限,不会改动个人文件、家目录的归属,多人协作的标准方案。
1
2
# -aG 追加附加组,保留用户已有的全部附加组,推荐写法 
usermod -aG [用户组] [用户]
  • 🚨高危坑:偷家操作 ```
1
2
# 不带 -a 的 -G,会清空该用户所有原有附加组,只保留新指定组,几乎不要使用 
usermod -G [用户组] [用户]

通俗比喻:

  • 主组 = 自己独立私人办公室;
  • 附加组 = 共用办公室钥匙,只给访问权限,不改动自己的私人房间。

二、文件与目录操作指令

1. /home 目录权限坑

/home目录本身所有者是root。 普通用户没有权限直接在/home下新建文件夹。 如果使用sudo mkdir创建目录,生成的目录所有者为root,切回普通用户依旧无法读写修改。 需要手动下放所有权给普通用户:

1
sudo chown 你的普通用户:你的组 /home下的文件和目录 

注意:在自己的家目录/home/xxx内部操作,不需要sudo放权。

2. 绝对路径 & 相对路径

  • 绝对路径:以/开头,从根目录开始查找完整路径,不受当前位置影响
  • 相对路径:不以/开头,基于你当前所在位置查找
    ✅好习惯:操作前确认环境
1
2
pwd # 查看自己当前处于哪个目录 
ls # 确认目标文件真实存在

重要知识点:删除、重命名文件,权限看父目录权限,不是看文件本身权限。

新手重灾区小结

  1. 不要遇到权限报错就无脑加sudo硬怼,会制造大量root属主文件,形成恶性循环,优先用chown修改归属。
  2. chmod用来修改rwx读写执行权限;chown修改文件属于哪个用户和组,两者不要搞混。
  3. rm -rf无确认提示,复制网络命令务必核对路径,防止空格造成误删。

三、压缩与解压

区分概念:tar只负责打包,把多个文件拼成一个文件,不会压缩体积gzip负责压缩,不能直接压缩文件夹。

指定解压目录

重点:目标目录必须提前创建,不会自动生成

  • tar.gz 使用大写 -C
  • zip 使用小写 -d
1
# tar.gz 解压到指定目录 tar -zxvf 压缩包.tar.gz -C /目标/路径 
1
# zip 解压到指定目录 unzip 压缩包.zip -d /目标/路径 

tar参数硬性规则:-f参数必须写在参数的最后一位,后面紧跟压缩包名称。

其他高频坑

  1. gzip只能压缩单个文件,不能直接压目录;压缩后原文件直接消失。
  2. Ubuntu纯净环境默认没有zip/unzip,需要手动安装:sudo apt install zip unzip
  3. zip压缩文件夹,必须加-r递归参数。
  4. sudo打包的压缩包,解压出来所有文件所有者会变成root。
  5. 打包尽量使用相对路径,避免解压出来完整的系统层级目录。

四、文件内容查看命令

命令 用途 适用场景
cat 一次性输出全部内容 小文件,大文件会刷屏
less 分页查看,支持搜索 大文件、日志优先使用
head 查看文件开头,默认10行 查看文件头部
tail 查看文件末尾,默认10行 查看日志尾部、实时跟踪日志

tail 追踪日志

1
tail -f notes.log

tail -f实时监听文件新增输出,不会自动退出,按 Ctrl + C 终止跟踪。

less 分页查看快捷键

1
less 文件 

进入less界面后,不能输入shell命令,
使用快捷键操作:

  • 空格:向下翻一页
  • b:向上翻一页
  • 上下箭头:逐行滚动
  • /关键词:向下搜索关键词
  • ?关键词:向上搜索关键词
  • q退出 less,回到终端
    新手高频卡死:进入less界面后无法敲命令,忘记按q退出。

查看命令通用提醒

cat、head、less、chmod、tar等命令不会全局搜索磁盘文件,路径写错直接提示找不到文件。

总结

  1. 多用户共享目录场景,优先使用附加组‑aG,尽量不要修改普通用户主组。
  2. sudo会生成root属主资源,权限报错优先调整属主,不要无脑sudo。
  3. tar、zip指定解压目录参数不一样,目标目录要预先创建。
  4. 大文件不要用cat刷屏,优先less;tail‑f、less都有专属退出方式。
  5. 操作前养成习惯:pwd确认位置,ls确认文件存在。
    本篇笔记为实操踩坑复盘,适合运维入门复习、面试快速回顾。