Linux基本命令-chmod
2019-06-13 09:02:26来源:博客园 阅读 ()
chmod命令用来变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。
权限范围的表示法如下:
- u:user,文件或目录的拥有者
- g:group,文件或目录的所属群组
- o:other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围
- a:all,全部的用户,包含拥有者,所属群组以及其他用户
- r:read,读取权限,数字代号为“4”
- w:write,写入权限,数字代号为“2”
- x:执行或切换权限,数字代号为“1”
- -:不具有任何权限,数字代号为“0”
- s:特殊功能说明:变更文件或目录的权限
语法
chmod (选项) (参数)
选项
-c或——changes:效果类似“-v”参数,但仅回报更改的部分; -f或--quiet或——silent:不显示错误信息; -R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理; -v或——verbose:显示指令执行过程; --reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同; <权限范围>+<权限设置>:开启权限范围的文件或目录的该选项权限设置; <权限范围>-<权限设置>:关闭权限范围的文件或目录的该选项权限设置; <权限范围>=<权限设置>:指定权限范围的文件或目录的该选项权限设置;
参数
权限模式:指定文件的权限模式;
文件:要改变权限的文件。
实例
Linux用 户分为:拥有者、组群(Group)、其他(other),Linux系统中,预设的情況下,系统中所有的帐号与一般身份使用者,以及root的相关信 息, 都是记录在/etc/passwd
文件中。每个人的密码则是记录在/etc/shadow
文件下。 此外,所有的组群名称记录在/etc/group
內!
linux文件的用户权限的分析图
例如:rwxrw-r--
r=可读 //值为4
w=可写 //值为2
x=可执行 //值为1
-=无权限 值为0
命令执行:
[root@localhost ~]# touch test.txt [root@localhost ~]# ll total 4 -rw-------. 1 root root 1523 Apr 4 18:27 anaconda-ks.cfg -rw-r--r--. 1 root root 0 Jun 13 16:22 test.txt
我们可以看到新建的test.txt文档具有的权限:rw-r--r--,对应的值为644。
[root@localhost ~]# chmod u=rwx,g=rw,o=r test.txt [root@localhost ~]# ll total 4 -rw-------. 1 root root 1523 Apr 4 18:27 anaconda-ks.cfg -rwxrw-r--. 1 root root 0 Jun 13 16:22 test.txt
现在的权限为rwxrw-r--,权限值为764.
[root@localhost ~]# chmod u-x,g+x-w,o+x test.txt [root@localhost ~]# ll total 4 -rw-------. 1 root root 1523 Apr 4 18:27 anaconda-ks.cfg -rw-r-xr-x. 1 root root 0 Jun 13 16:22 test.txt
现在的权限是rw-r-xr-x,权限值为655.
[root@localhost ~]# chmod a=r test.txt [root@localhost ~]# ll test.txt -r--r--r--. 1 root root 0 Jun 13 16:22 test.txt
现在的权限是r--r--r--,权限值为444.
[root@localhost ~]# chmod a+x test.txt [root@localhost ~]# ll test.txt -r-xr-xr-x. 1 root root 0 Jun 13 16:22 test.txt
现在的权限是r-xr-xr-x,权限值为555.
[root@localhost ~]# chmod 440 test.txt [root@localhost ~]# ll test.txt -r--r-----. 1 root root 0 Jun 13 16:22 test.txt
通过值更改权限后,同样根据值的换算得到文件权限:r--r-----,值为440
[root@localhost ~]# chmod 777 test.txt [root@localhost ~]# ll test.txt -rwxrwxrwx. 1 root root 0 Jun 13 16:22 test.txt
上面是777权限。rwxrwxrwx.
递归参数
[root@localhost ~]# ls -l total 4 -rw-------. 1 root root 1523 Apr 4 18:27 anaconda-ks.cfg drwxr-xr-x. 2 root root 45 Jun 13 16:36 test [root@localhost ~]# ls -l test total 0 -r--r--r--. 1 root root 0 Jun 13 16:36 test1 --w--w--w-. 1 root root 0 Jun 13 16:36 test2 ---x--x--x. 1 root root 0 Jun 13 16:36 test3
当前test目录为731权限,test目录下的test1为444权限,test2为222权限,test3为111权限。现在进行递归权限管理:
[root@localhost ~]# chmod -R 777 test [root@localhost ~]# ls -l total 4 -rw-------. 1 root root 1523 Apr 4 18:27 anaconda-ks.cfg drwxrwxrwx. 2 root root 45 Jun 13 16:36 test -rwxrwxrwx. 1 root root 0 Jun 13 16:22 test.txt [root@localhost ~]# ls -l test total 0 -rwxrwxrwx. 1 root root 0 Jun 13 16:36 test1 -rwxrwxrwx. 1 root root 0 Jun 13 16:36 test2 -rwxrwxrwx. 1 root root 0 Jun 13 16:36 test3
通过执行chmod -R 777 test命令,test目录的权限以及其下的所有文件全部递归调整权限为777。
原文链接:https://www.cnblogs.com/quail2333/p/11008867.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Linux系统如何设置开机自动运行脚本? 2020-06-11
- Linux指令和shell脚本 2020-06-11
- 适合开发者的最佳Linux发行版 2020-06-11
- awk命令详解 2020-06-10
- RAID 1 软件实现(Linux 系统) 2020-06-10
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash