chmod 和 chown 区别咋分?记忆小妙招来了!

chmod 和 chown 区别咋分?记忆小妙招来了!

嘿,你好!今天咱们聊聊 Linux 里两个容易混的命令:chmodchown。它们都跟文件权限有关,但干的活儿完全不一样。咱先把区别弄清楚,再分享点记忆的小技巧,让你以后再也不会搞混!

先说区别:功能上天差地别

  • chmod(change mode)

    这个命令是改文件权限 的,也就是决定谁能读(read)、写(write)、执行(execute)。比如你有个文件 script.sh,想让它能跑,就得给执行权限:

    bash 复制代码
    chmod +x script.sh

    或者用数字方式,比如 755,表示用户可读写执行(7=4+2+1),组和其他人可读执行(5=4+1)。重点是:它只管权限,不碰归属。

  • chown(change owner)

    这个是改文件拥有者 的,也就是决定这文件归谁管。比如你想把 script.sh 给用户 alice

    bash 复制代码
    chown alice script.sh

    还能顺便改组,比如给 dev 组:

    bash 复制代码
    chown alice:dev script.sh

    但它不管读写执行那些权限的事儿。

简单说:

  • chmod 管"能干啥"(权限)。
  • chown 管"归谁"(主人)。

用个例子感受下

假设你有文件 app.log,现在是 root 的,权限是 600(只有 owner 可读写)。你想让用户 bob 用这个文件:

  1. chown 改主人:

    bash 复制代码
    chown bob app.log

    文件归 bob 了,但权限还是 600,只有 bob 能读写。

  2. chmod 改权限:

    bash 复制代码
    chmod 644 app.log

    现在权限变成 owner 读写(6),其他人可读(4),但主人还是 bob

顺序无所谓,但得清楚:chown 不影响权限,chmod 不动主人。

为啥容易混?

名字看着像,都是 "ch" 开头,又都跟文件操作有关。但你仔细看:

  • chmod 里有 "mode",模式、权限的意思。
  • chown 里有 "own",拥有、归属的意思。

功能上一个管"行为",一个管"身份",完全不重叠。

咋记住?小技巧来啦!

  1. 联想单词

    • chmod:想想 "mode" 是模式,改的是"操作模式",就是权限。
    • chown:想想 "own" 是拥有,改的是"主人身份"。
  2. 口诀助记

    • "权限动动 mode,chmod 来搞定;主人换换 own,chown 不含情。"
    • 简单点:"chmod 管门,chown 换人。"(门是权限,人是主人)
  3. 场景记忆

    • 想让脚本跑起来?改权限,得用 chmod +x
    • 文件给别人用?改主人,得用 chown
  4. 数字联想

    • chmod 爱跟数字打交道(像 755644),一看到数字就想到权限。
    • chown 跟用户名、组名走得近(像 alice:dev),看到人名就想到归属。

实战巩固下

  • 改权限但不换人:chmod 700 file.txt(只有 owner 能用)。
  • 换人但不改权限:chown bob file.txt(给 bob,权限不变)。
  • 一起用:chown bob:dev file.txt && chmod 640 file.txt(给 bobdev 组,owner 读写,组读)。
相关推荐
Bug终结者_几秒前
别只会写 Java 了!LangChain4J 带你弯道超车 AI 赛道
后端·langchain·ai编程
Oneslide6 分钟前
MySQL性能排查实战:大量Sleep空闲连接导致数据库写入缓慢解决方案
后端
码界奇点41 分钟前
基于Spring Boot的前后端分离商城系统设计与实现
java·spring boot·后端·java-ee·毕业设计·源代码管理
fox_lht1 小时前
7.3.结构体-方法
开发语言·后端·rust
掘金者阿豪1 小时前
一个权限配置错误引发的“血案”:数据库访问控制手记
后端
消失的旧时光-19432 小时前
Spring Boot 接口设计进阶:POST / PUT / DELETE 的本质区别与工程实践
spring boot·后端
StackNoOverflow2 小时前
Spring Cloud的注册中心和配置中心(Nacos)
后端·spring cloud
SamDeepThinking2 小时前
秒杀系统需求PRD
java·后端·架构
掘金者阿豪2 小时前
被飞书和火山引擎账号体系整崩溃了?一个程序员彻底讲清楚背后的设计逻辑
后端
代码羊羊2 小时前
Rust基础类型与变量全解析
开发语言·后端·rust