分享

让你真正了解chmod和chown命令的用法

pig2 2014-5-11 02:48:09 发表于 入门帮助 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 7 33104
问题导读:
1.chown的英语含义是什么?
2.chmod英语含义是什么?
3.chown改变的是什么权限?
4.chmod改变的是什么权限?


这两个对于初学者很容易混肴,这里ch,其实是change的简写,它们的含义分别是:

chown-》change own改变所有者
chmod-》change mod(mod不知道是否为简写)改变文件权限

一、chown 命令
用途:更改文件的所有者或组。命令由单词change owner组合而成。
使用示例:
1,更改文件的所有者:
chown jim program.c
文件 program.c 的所有者更改为 jim。作为所有者,jim 可以使用 chmod 命令允许或拒绝其他用户访问 program.c。
2,更改目录的所有者:
chown -R john:build /tmp/src
将目录 /tmp/src 中所有文件的所有者和组更改为用户 john 和组 build
- R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。
- v 显示chown命令所做的工作。
(eg.chown –R root:root rootfs                将rootfs文件夹及其子录的权限和组均改为root
chown –R liufan:liufan-desktop rootfs      将目录rootfs文件夹及子目录的所有者和组更改为用
户liufan和组liufan-desktop )

二、chmod 命令
用途:改变文件或目录的访问权限。
该命令有两种用法:
一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
1,文字设定法
chmod [who] [+ | - | =] [mode] 文件名
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
      u 表示“用户(user)”,即文件或目录的所有者。
      g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
      o 表示“其他(others)用户”。
      a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
      + 添加某个权限。
      - 取消某个权限。
      = 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
      r 可读。
      w 可写。
      x 可执行。
      X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。
      s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。
      t 保存程序的文本到交换设备上。
      u 与文件属主拥有一样的权限。
      g 与和文件属主同组的用户拥有一样的权限。
      o 与其他用户拥有一样的权限。
文件名:以空格分开的要改变权限的文件列表,支持通配符。
在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example
使同组和其他用户对文件 example 有读权限。
2,数字设定法
我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。
所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。
数字设定法的一般形式为:
chmod [mode] 文件名


已有(7)人评论

跳转到指定楼层
junzi234 发表于 2014-6-12 09:50:08
多谢 留着备用
回复

使用道具 举报

admin 发表于 2014-9-15 16:46:13
chmod 750 a.out 改变 a.out的权限为750; chmod a+x a.out 对所有用户增加
a.out的执行权限,a(All)表示所有用户; chmod u=rwx a.out 设置属主的权限为读、写和执行, u(user)表示属主用户; chmod
g+rw a.out 增加同组用户的读写权限, g(group)表示同组用户;
   chmod 750 a.out
改变 a.out的权限为750;
chmod a+x a.out
对所有用户增加 a.out的执行权限,a(All)表示所有用户;
chmod u=rwx a.out
设置属主的权限为读、写和执行, u(user)表示属主用户;
chmod g+rw a.out
增加同组用户的读写权限, g(group)表示同组用户;
chmod o-w a.out
减少其他用户的写权限, o(others)表示其他用户;
chmod go= a.out
清除同组和其他用户的所有权限;
chmod o=u-w a.out



指令名称 : chown
范例 :
将档案 file1.txt 的拥有者设为 users 群体的使用者 jessie :
chown jessie:users file1.txt
将目前目录下的所有档案与子目录的拥有者皆设为 users 群体的使用者 lamport :
chmod -R lamport:users *
-rw------- (600) -- 只有属主有读写权限。
-rw-r--r-- (644) -- 只有属主有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) -- 只有属主有读、写、执行权限。
-rwxr-xr-x (755) -- 属主有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) -- 属主有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) -- 所有用户都有文件读、写权限。这种做法不可取。
-rwxrwxrwx (777) -- 所有用户都有读、写、执行权限。更不可取的做法。
以下是对目录的两个普通设定:
drwx------ (700) - 只有属主可在目录中读、写。
drwxr-xr-x (755) - 所有用户可读该目录,但只有属主才能改变目录中的内容。


回复

使用道具 举报

qazzxc5200 发表于 2015-8-30 23:25:05
以備不時之需
回复

使用道具 举报

Chapter 发表于 2015-10-27 23:22:02
非常好的帖子,容易混淆的童鞋休息啦
回复

使用道具 举报

orangehc 发表于 2016-3-29 22:02:52
谢谢楼主,以备不时之需
回复

使用道具 举报

君子兰_yp8pz 发表于 2016-7-15 17:21:12
值得收藏,谢谢。
回复

使用道具 举报

about_1 发表于 2019-1-25 09:29:44
好东西,顶一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条