Linux中的chmod命令

来源:互联网 发布:apache beam 快速入门 编辑:程序博客网 时间:2024/05/22 17:12

chomod命令用于改变linux系统文件或者目录的访问权限。该命令有两种用法:一种是包含字母和操作符表达式的文字设定法;另外一种是包含数字的数字设定法;

LInux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。

文件和目录的访问权限包括只读、只写和可执行三种。可执行权限表示允许将该文件作为一个程序执行。文件被创建的时候,文件所有者将自动拥有该文件的读、写、可执行权限,以便于对文件的阅读和修改。

有三种不同类型的用户可以对文件或者目录进行访问:文件所有者、同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予文件系统中的其他用户。

每一个文件和目录的访问权限都有三组,每组用三位表示,分别为文件创建者的读、写、执行权限;与文件创建者同组用户的读、写、执行权限;系统中其他用户的读、写、执行权限。

[root@centos65 importsource]# ll -alltotal 4879968drwxr-xr-x  6 root root       4096 Sep 11 10:57 .drwxr-xr-x 16 root root       4096 Aug 19 09:16 ..-rw-r--r--  1 root root    3413203 Aug 17 12:16 analysis.jardrwxr-xr-x  2 root root       4096 Aug 17 12:16 analysis_lib-rw-r--r--  1 root root       1296 Sep  7 18:03 application001.log-rw-r--r--  1 root root    8844292 Aug 19 13:00 application002.log-rw-r--r--  1 root root      27840 Aug 28 20:58 application003.log-rw-r--r--  1 root root        834 Aug 31 08:57 application004.log-rw-r--r--  1 root root 4816751569 Aug 31 17:53 application005.log-rw-r--r--  1 root root       8250 Sep  6 06:13 application006.log-rw-r--r--  1 root root       2445 Sep  6 15:55 application007.log-rw-r--r--  1 root root      23230 Sep  7 13:09 application008.log-rw-r--r--  1 root root       2023 Sep  7 16:35 application009.log-rw-r--r--  1 root root       1296 Sep  7 18:11 application010-rw-r--r--  1 root root      17454 Sep  8 21:50 application011.log-rw-r--r--  1 root root       2345 Sep  9 09:47 application012.log-rw-r--r--  1 root root       1544 Sep  9 10:04 application013.log-rw-r--r--  1 root root       1544 Sep  9 10:10 application014.log-rw-r--r--  1 root root       9502 Sep  9 21:10 application015.log-rw-r--r--  1 root root  164297666 Aug 18 17:36 application.log-rw-------  1 root root       1109 Aug 31 08:24 nohup.out-rw-r--r--  1 root root     187226 Aug 17 12:16 saveData.jardrwxr-xr-x  2 root root        108 Aug 17 12:16 saveData_libdrwxr-xr-x  2 root root          6 Sep 11 10:57 test-rw-r--r--  1 root root    3417783 Sep  1 13:48 test.jardrwxr-xr-x  2 root root       4096 Sep  1 13:48 test_lib

第一列共有是个位置,第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。从第二个字符开始到第十个字符共有九个字符,三个字符一组,分别表示了三组用户对文件的访问权限。权限字符用_字符代表空许可,r代表只读,w代表写,x代表可执行。

确定了一个文件的访问权限以后,用户可以利用Linux系统提供的chmod命令来重新设置不同的访问权限。也可以用chown命令来更改某个文件和目录的所有者。利用chgrp来更改某个文件或者目录的用户组。

chmod命令是非常重要的,用于改变文件和目录的访问权限。用户用它控制文件和目录的访问权限。chmod详细命令如下:

<1>命令格式:

chmod [-cfvR]  [--help]  [--version]  mode file

<2>命令功能:

用于改变文件和目录的访问权限

<3>命令参数:

-c 当发生改变的时候,报告处理信息

-f 错误信息不输出

-R 处理指定目录以及其下子目录里面的所有文件

-v  运行时显示详细处理信息

权限范围:

u:目录或者文件的当前用户

g:目录或者文件的当前群组

o:除了目录和用户当前用户或者群组之外的用户或者群组

a:所有的用户或者群组

权限代号:

r:读权限,用数字4来表示

w:写权限,用数字2来表示

x:执行权限,用数字1表示

s:特殊权限

该命令有两种使用方法:

一种是包含字母和操作符表达式的文字设定法,另外一种是包含数字的数字设定法。

<1>文字设定法

chmod [who]  [+|-|=]  [mode]  文件名

<2>数字设定法

我们首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字的属性的格式应该为3个从0到7的二进制数。

数字设定法的一般形式:

chmod    [mode]    文件名;

使用实例如下[数字设定法相对比较易用一些]:

[root@centos65 importsource]# chmod 777 test[root@centos65 importsource]# lltotal 4879960-rw-r--r-- 1 root root    3413203 Aug 17 12:16 analysis.jardrwxr-xr-x 2 root root       4096 Aug 17 12:16 analysis_lib-rw-r--r-- 1 root root       1296 Sep  7 18:03 application001.log-rw-r--r-- 1 root root    8844292 Aug 19 13:00 application002.log-rw-r--r-- 1 root root      27840 Aug 28 20:58 application003.log-rw-r--r-- 1 root root        834 Aug 31 08:57 application004.log-rw-r--r-- 1 root root 4816751569 Aug 31 17:53 application005.log-rw-r--r-- 1 root root       8250 Sep  6 06:13 application006.log-rw-r--r-- 1 root root       2445 Sep  6 15:55 application007.log-rw-r--r-- 1 root root      23230 Sep  7 13:09 application008.log-rw-r--r-- 1 root root       2023 Sep  7 16:35 application009.log-rw-r--r-- 1 root root       1296 Sep  7 18:11 application010-rw-r--r-- 1 root root      17454 Sep  8 21:50 application011.log-rw-r--r-- 1 root root       2345 Sep  9 09:47 application012.log-rw-r--r-- 1 root root       1544 Sep  9 10:04 application013.log-rw-r--r-- 1 root root       1544 Sep  9 10:10 application014.log-rw-r--r-- 1 root root       9502 Sep  9 21:10 application015.log-rw-r--r-- 1 root root  164297666 Aug 18 17:36 application.log-rw------- 1 root root       1109 Aug 31 08:24 nohup.out-rw-r--r-- 1 root root     187226 Aug 17 12:16 saveData.jardrwxr-xr-x 2 root root        108 Aug 17 12:16 saveData_libdrwxrwxrwx 2 root root          6 Sep 11 10:57 test-rw-r--r-- 1 root root    3417783 Sep  1 13:48 test.jardrwxr-xr-x 2 root root       4096 Sep  1 13:48 test_lib


 

0 0