您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Linux系统中管理文件权限的chown和chmod命令

添加时间:2016-1-30 20:58:47  添加: 思海网络 
chown
用法:chown [选项]... [所有者][:[组]] 文件...
 或:chown [选项]... --reference=参考文件 文件...
更改每个文件的所有者和/或所属组。
当使用 --referebce 参数时,将文件的所有者和所属组更改为与指定参考文件相同。

  -c, --changes                 类似 verbose,但只在有更改时才显示结果
      --dereference             受影响的是符号链接所指示的对象,而非符号链接本身
  -h, --no-dereference          会影响符号链接本身,而非符号链接所指示的目的地
                                (当系统支持更改符号链接的所有者时,此选项才有用)
      --from=当前所有者:当前所属组
                                只当每个文件的所有者和组符合选项所指定时才更改所
                                有者和组。其中一个可以省略,这时已省略的属性就不
                                需要符合原有的属性。
      --no-preserve-root        不特殊对待"/"(默认值)
      --preserve-root           不允许在"/"上递归操作
  -f, --silent, --quiet 去除大部份的错误信息
      --reference=参考文件      使用参考文件的所属组,而非指定值
  -R, --recursive               递归处理所有的文件及子目录
  -v, --verbose                 为处理的所有文件显示诊断信息

以下选项是在指定了 -R 选项时被用于设置如何穿越目录结构体系。
如果您指定了多于一个选项,那么只有最后一个会生效。

  -H         如果命令行参数是一个通到目录的符号链接,则遍历符号链接
  -L         遍历每一个遇到的通到目录的符号链接
  -P         不遍历任何符号链接(默认)

      --help            显示此帮助信息并退出
      --version         显示版本信息并退出

如果没有指定所有者,则不会更改。 所属组若没有指定也不会更改,但当加上
":"时 GROUP 会更改为指定所有者的主要组。所有者和所属组可以是数字或名称。

例1:

代码如下:
[root@localhost ~]# chown zhangy:zhangy nginx.conf #将nginx.conf所属用户和组改为zhangy,zhangy
[root@localhost ~]# ls -al |grep nginx.conf 
-rw-r--r-- 1 zhangy zhangy 0 5月 3 15:21 nginx.conf
[root@localhost ~]# chown -R zhangy:zhangy www #将www目录,所属用户和组改为zhangy,zhangy
[root@localhost ~]# ls -al |grep ww
drwxr-xr-x 2 zhangy zhangy 4096 5月 3 15:20 www #将www目录,所属用户改为root
[root@localhost ~]# chown root nginx.conf 
[root@localhost ~]# ls -al |grep nginx.conf
-rw-r--r-- 1 root zhangy 0 5月 3 15:21 nginx.conf

例2:

代码如下:
[root@localhost database]# ll
总用量 4592
-rw-r--r-- 1 root root 2466 7月 23 18:02 1.html
-rw-r--r--. 1 tank tank 4099771 5月 28 14:42 28toplearning.sql
-rw-r--r--. 1 tank tank 596069 5月 29 00:07 toplearning.tar.gz

代码如下:
[root@localhost database]# chown .tank 1.html #只改变组
[root@localhost database]# ll
总用量 4592
-rw-r--r-- 1 root tank 2466 7月 23 18:02 1.html #组已改变
-rw-r--r--. 1 tank tank 4099771 5月 28 14:42 28toplearning.sql
-rw-r--r--. 1 tank tank 596069 5月 29 00:07 toplearning.tar.gz

chmod
用法:chmod [选项]... 模式[,模式]... 文件...
 或:chmod [选项]... 八进制模式 文件...
 或:chmod [选项]... --reference=参考文件 文件...
将每个文件的模式更改为指定值。

  -c, --changes         类似 --verbose,但只在有更改时才显示结果
      --no-preserve-root        不特殊对待根目录(默认)
      --preserve-root           禁止对根目录进行递归操作
  -f, --silent, --quiet 去除大部份的错误信息
  -v, --verbose         为处理的所有文件显示诊断信息
      --reference=参考文件      使用指定参考文件的模式,而非自行指定权限模式
  -R, --recursive               以递归方式更改所有的文件及子目录
      --help            显示此帮助信息并退出
      --version         显示版本信息并退出

每种 MODE 都应属于这类形式"[ugoa]*([-+=]([rwxXst]*|[ugo]))+"。

操作对像

   u 文件属主权限
   g 同组用户权限
   o 其它用户权限
   a 所有用户(包括以上三种)

权限设定

   + 增加权限
   - 取消权限
   =  唯一设定权限

权限类别

   r 读权限
   w 写权限
   x 执行权限
   X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
   s 文件属主和组id
   l 给文件加锁,使其它用户无法访问

   r-->4
   w-->2
   x-->1

例1:

代码如下:
[root@localhost ~]# chmod ugo+r nginx_bak.conf #所有人皆可读取
[root@localhost ~]# chmod a+r nginx_bak.conf #所有人皆可读取
[root@localhost ~]# chmod ug+w,o-w nginx_bak.conf #设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入
[root@localhost ~]# chmod u+x nginx_bak.conf #创建者拥有执行权限 
[root@localhost ~]# chmod -R a+r ./www/ #将www下的所有档案与子目录皆设为任何人可读取
[root@localhost ~]# chmod a-x nginx_bak.conf #收回所有用户的对nginx_bak.conf的执行权限
[root@localhost ~]# chmod 777 nginx_bak.conf #所有人可读,写,执行

例2:


代码如下:
# chmod a+s test.ppt #chmod g+s ,为某个文件设置替代组标识
# ls -al |grep test.ppt
-rwSr-Sr--. 1 tank tank 2320384 11月 18 19:29 test.ppt

第一个S指示用户替代标识(suid)已经被设置。
第二个S指示替代组标识(sgid)已经被设置。

这样,每一个运行该程序的用户将给予和程序拥有者同样有效的用户标识,和用户所属组同样有效的组标识。

关键字:Linux、系统、chown、chmod、命令
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站