zoukankan      html  css  js  c++  java
  • Linux 学习 -- 修改文件的权限(chmod)

    参考源:http://www.cnblogs.com/avril/archive/2010/03/23/1692809.html

    前言:

    每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。例如:

      $ ls -l sobsrc. tgz

      -rw-r--r-- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz

      横线代表空许可。r代表只读,w代表写,x代表可执行。注意这里共有10个位置。第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。

    1. Linux 下修改文件权限的方式:

    (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)数字设定法

      如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

      $ chmod 750 wch.txt

      $ ls –l

      -rwxr-x--- 1 inin users 44137 Nov 12 9:22 wchtxt

      即设定wchtxt这个文件的属性为:

      文件主本人(u)inin 可读/可写/可执行权

      与文件主同组人(g) 可读/可执行权

      其他人(o) 没有任何权限

    2. 修改文件所属主

      (1)chgrp命令:该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。

      例如:$ chgrp - R book /opt/local /book

      改变/opt/local /book/及其子目录下的所有文件的属组为book。

    注意:- R 递归式地改变指定目录及其下的所有子目录和文件的属组。

      (2)chown命令 

      功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,root用户应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。

      语法:chown [选项] 用户或组 文件

      说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。

      该命令的各选项含义如下:

      - R 递归式地改变指定目录及其下的所有子目录和文件的拥有者。

      - v 显示chown命令所做的工作。

      例1:把文件shiyan.c的所有者改为wang。

      $ chown wang shiyan.c

      例2:把目录/his及其下的所有文件和子目录的属主改成wang,属组改成users。

      $ chown - R wang.users /his
     

      

      

  • 相关阅读:
    最小生成树Prim算法和Kruskal算法(转)
    tarjan有向图的强连通
    匈牙利算法
    字符类数组的常用函数
    三层登录——C#版
    监考风波
    SQL Server 2012 安装——安装 OR 卸载
    SQL Server 2012安装——.net framework 3.5离线安装
    坚定自我 守住寂寞
    浅谈三层
  • 原文地址:https://www.cnblogs.com/txfsheng/p/8184448.html
Copyright © 2011-2022 走看看