Linux权限管理小结

我们最常用的还是利用二进制数字授权哦,也只建议使用这种方法。

Linux下一切皆文件。windows中的文件类型是以后缀区分的,但是linux下只有七类文件,我们只需要记住三类:文件,目录文件和软连接文件。

学习Linux权限之前你应该了解一下Linux用户和用户组相关知识,新建一个默认用户不指定用户组的话,就会默认添加一个同名用户组,管理员组wheel和root组是不一样的。

新建一个文件,这个文件的u即拥有者,g表示和拥有者同用户组的用户,o表示其他用户。该文件默认权限为644,我们经常需要修改为755,甚至有时候需要改为777,数字权限表示法用到了二进制思想。

任何一个文件都可以拥有rwx权限,即读写执行三大权限,普通文件的r权限可以使用命令cat,more,head,tail;w权限可以使用命令vi,echo;x权限就是可执行,一般为shell脚本,默认配色都不一样哦。

对目录有读权限就是可以使用ls这样的命令了;写权限就是可以改变文件目录的结构了,比如mv,cp,touch;对目录的执行全兴就是cd命令,目录是无法执行的,而是进入。对目录只能给予0和7权限。

所以说,对普通文件来说,最高权限是x执行;但是对文件目录来说,最高权限是w写入权限。

对文件即使有写权限,你也无法删除该文件,删除文件的话你必须对该文件的文件目录具有可写权限。

ll命令就是利用alias别名修改了带参数的ls -l而已,ll第一列看到的就是十位数的文件权限,第一位数是文件类型,-是文件,d是文件目录,l是软连接。

我们常用的授权命令是chmod,即改变权限模型。这个命令最常用的参数是 -R 权限递归。给文件增加或者减少权限,我们可以使用:<pre>chmod u+x,g+wr filename</pre><pre>chmod u-x,g-wr filename</pre><pre>chmod u=xr,g=wrx filename</pre>

这种写法在线上是不可能出现的,除非你学习权限的时候了解一下。 <pre>chmod 557 filename</pre>

但是这样使用也有些不方便,你也可以对所有用户授予同样权限,例如给所有用户最高权限:<pre>chmod a+wrx filename</pre>

修改文件的所有者,chown 用户名 文件或者用户名:<pre>chown user1 filename </pre>

其实你也可以使用这个命令同时改变文件所属用户和所属用户组,先用户名再用户组,使用点号或者分号分隔:
<pre>chown user1:wheel filename</pre>

修改所属组,chown 用户组 文件或者用户名(直接使用上面的chown也可以实现)
<pre>chgrp user1 filename</pre>

windows中你添加的所有用户都在users这个用户组中,但是Linux中你添加的用户,系统会默认建立一个同名用户组。


普通文件默认权限是644,目录文件默认权限是755(可以设置为777),这是由umask决定的。默认文件不能为可执行文件,可执行文件必须手动赋予权限哦。

umask默认权限为0022。第一位数是特殊权限,022就是文件默认权限。可是这022到底是怎么算出来的644呢?由于默认文件不能为可执行文件,所以默认权限最大只能为666,和022相减即为644。

umask=0000时候最小,此时普通文件和目录文件默认权限分别为666和777。

严格来说上面的说法是错误的,因为文件不能创建就拥有执行权限。严格来说相减之前需要把数字转换为字母,字母相减得到默认文件的权限,负数无效。这也是逻辑与运算的结果。

普通用户的uid从500开始。root用户的uid为0。

让配置文件永久生效的办法是修改写入默认shell文件,该文件为/etc/profile。

CentOS6后,这十位数后面加了个.号,这是ACL权限的问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,192评论 2 33
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,950评论 9 468
  • 又是休息日,回到家里看二宝。已经两岁半的二宝,一直放在乡下外婆家。所以一有空就去看她。买了个玩具毛绒小象。拿到小象...
    b77ffcdcfdfa阅读 1,618评论 0 0
  • 后台:nodejs 前台:vue 全栈开发 完整功能的外卖平台系统 ----------------- gith...
    四月天__阅读 4,687评论 0 0
  • 第一个实例,Axure中的“Hello Wold”,百度账号登录页面,还没完善,交互设计还没有,总结如下: 1,很...
    y烟雨任平生阅读 2,828评论 0 0