码迷,mamicode.com
首页 > 其他好文 > 详细

2017.12.20 2周3次课

时间:2017-12-20 22:44:57      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:linux学习

2017.12.20 二周第三次课

2.14 文件和目录权限chmod

命令chmod( change mode的简写 )用于改变用户对文件/目录的读写执行权限

其格式为:chmod [-R] xyz文件名(这里的xyz表示数字)。其中,·-R选项的作用等同于chown命令的一R选项,也表示级联更改。

属性的含义: 【r】:读 ;

                   【w】:写;

                   【x】:执行;

                   【-】:不可以;

值得注意的是,在Linux系统中,一个目录的默认权限为755,而一个文件的默认权限为644。

为了方便更改文件的权限,Linux使用数字代替rwx。

具体规则为:r=4,w=2,x=1 ,-=0。例如, rwxrwx---用数字表示就是770,其具体算法为 : rwx=4+2+1=7, rwx=4+2+1=7,---=0+0+0=0

1.权限说明:

第一列第一项表示文件类型外,后面9位表示的是文件的权限,三位一组,共3组。

技术分享图片

1)第一组表示的是所有者对应的权限:

技术分享图片

这表示可读写,不可执行

2)第二组表示的是所属组的权限:

技术分享图片

这表示可读,不可写,不可执行

3)第三组表示的其他用户的权限

技术分享图片

这表示可读,不可写,不可执行

例子:

更改2.txt文件的权限:所有者读写执行;所属组和其他都没有权限

数字表示是:rwx------=700

技术分享图片

2.第一列最后一位【.】的说明

技术分享图片

说明文件受制于selinux

用【# setenforce 0】临时关闭。下次重启SElinux后还会开启

技术分享图片

永久关闭SElinux必须运行如下命令

【# vi /etc/selinux/config】

技术分享图片

更改SELINUX=enforcing为SELINUX=disable,存盘退出,重启系统。

这样下次创建文件时就没有【.】

3.【chmod】对文件或对目录,它操作的生效的仅仅是文件或目录本身

技术分享图片

技术分享图片

技术分享图片

aming2目录里的文件权限没有更改

技术分享图片

4.【-R】可以把目录和目录下面的子目录和文件批量的修改权限

技术分享图片

5. 【chmod】还支持使用rwx的方式来设置权限。使用u、g和o来分别表示user、group和others的属性,用a代表all(即全部)。

技术分享图片

权限的“+”和“-”的用法

1)所有的权限都有“x”的权限

技术分享图片

2)其他用户没有“x“的权限

技术分享图片

2.15 更改所有者和所属组chown

【chown】命令

更改文件的所有者,其格式:chown[- R] 账户名 文件名

更改所属组,其格式chown[- R] 账户名:组名 文件名。

[-R]适用于目录,作用的级联更改。不仅能更改当前目录,目录下的目录和文件也全部更改。

【chgrp】命令改变所属组

1.更改所有者:

技术分享图片

2.更改所属组

【chgrp】命令

技术分享图片

【chown】命令

技术分享图片

3. 更改用户和组

技术分享图片

4.[-R]的用法

技术分享图片

2.16 umask

默认情况下 ,目录的权限值为755

技术分享图片

普通文件的权限值为644

技术分享图片

那么这个值是由谁规定的呢?究其原因,便涉及umask了。

1.命令umask用于改变文件的默认权限, 其格式为 : umask xxx ( 这里的 ×代表3个数字 )。 如果要查看umask的值, 只要在命令行输人umask, 然后回车即可 , 如下所示 :

技术分享图片

“# umask 0022 ”这里0022是root用户的umask值 , 这表示什么含义呢?

1)若用户建立普通文件,则预设没有可执行权限,只有r、w两个权限,最大值为666 (-rw-rw-rw-)。

2)若用户建立目录,则预设所有权限均开放,即777(drwxrwxrwx)。

3)“-”=0,减去任何权限都是0:【-】-【r】=【-】;【-】-【x】=【-】

umask的值是可以自定义的,比如设定umask为003

技术分享图片

创建文件时默认权限变成了664:666(rw-rw-rw-)-003(------wx)=rw-rw-r--=664

技术分享图片

创建目录时默认权限分别为774:777(rwxrwxrwx)-003(-------wx)=rwxrwxr--=774

技术分享图片

2.umask可以在/etc/bashrc里面更改,默认情况下,root的umask 为022, 而一般使用者则为002。可写的权限非常重要,因此预设会去掉写权限。可能大家一直有一个疑问,老师介绍的umask值一直都是3 位数,但为什么系统里面是4位呢?最前面还有一个0呢,这个0加与不加没有影响,它表示umask数值是八进制的。

2.17 隐藏权限lsattr/chattr

1.【chattr】命令:设置隐藏权限

命令chattr(change attribute)的格式为:chattr [ +-=] [Asaci] [文件或者目录],其中,+、-和=分别表示增加、减少和设定。各个选项的含义如下。

A:增加该属性后,表示文件或目录的atime将不可修改。

s:增加该属性后,会将数据同步写人磁盘中。

a:增加该属性后,表示只能追加不能删除,文件可以追加,目录下可以增加文件和子目录,可以更改目录里面的文件。非root用户不能设定该属性。

c:增加该属性后,表示自动压缩该文件,读取时会自动解压。

i: 增加该属性后,表示文件和目录不能删除、重命名、设定链接、写入以及新增数据。可以更改目录里面已经存在的文件

以上选项中, 常用的为a和i这两个选项。

  以文件举例说明其用法(目录也是一样):

 1)“+i“:用户没有权限更改文件和文件名,无法更改时间信息,无法删除,

技术分享图片

 

技术分享图片

   

技术分享图片

缓存文件

技术分享图片

原因是刚在在“vi”编辑时会自动的创建一个缓存文件,当文件保存退出时这个文件会覆盖原来的文件,然乎缓存文件会被删除。如果加了特殊权限“i”,这个文件就保存不了,保存不了的话就会保存以“~“结尾的缓存文件,如上述文件。

2)“-i”可以去掉这个权限

技术分享图片

3)“+a”:不能更改,不能删除,不能重命名,能追加,可以更改时间信息

技术分享图片

4)“-a”可以去掉这个权限

技术分享图片

2.【lsattr】命令:查看隐藏权限

 Isattr(list attribute),该命令用于读取文件或者目录的特殊权限,其格式为:Isattr [-aRd] [文件/目录名]。

1)-a:类似于Is的-a选项,即连同隐藏文件一同列出。

2)-R:连同子目录的数据一同列出。

3)-d:查看目录本身。


2017.12.20 2周3次课

标签:linux学习

原文地址:http://blog.51cto.com/415326/2052699

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!