目录:

一、归属和访问权限简介

1、归属(所有权)

  1、u:文件拥有者(owner):拥有该文件或目录的用户帐号user

  2、g:属组(group):拥有该文件或目录的组帐号

  3、o:其它人(others):除了属主和属组的其他人

  4、a:所有的人(all)  :“公有财产”

2、访问权限

  1、r:可读(read):允许查看文件内容、显示目录列表

    1、对文件而言,就是查看里面的内容

      shell> cat,vim,less,more ....“file”

    2、对目录而言,就是查看目录里的内容

      shell> ls “dir”

  2、w---可写(write):允许修改文件内容,允许在目录中新建、移动、删除文件或子目录

    1、对文件而言,就是修改里面的内容

      shell> vi “file”

    2、对目录而言,就是新建、删除、重命名、移动

      shell> mkdir 、touch 、rm、mv、cp  “dir”

  3、x---可执行(execute):允许运行程序、切换目录

    1、对文件而言,就是执行这个文件里的命令。例如执行脚本文件

      shell> ./timeover.sh (执行脚本文件)

    2、对目录而言,就是进入目录

      shell> cd  “dir”

操作者--->对象(自己、组、其他人)--->权限

二、chmod命令

作用:

  change file mode bits:修改权限(r、w、x)

修改对象:

  user、group、others、all

形式:

  +  增加权限

  -  去掉权限

  =  直接等于某些权限

-R:递归修改指定目录下所有文件、子目录的权限

1、普通权限修改

[root@localhost lianxi]# mkdir dasheng  //新建目录
[root@localhost lianxi]# ls
dasheng
[root@localhost lianxi]# ls -ld dasheng  //显示目录详细信息
drwxr-xr-x root root Nov : dasheng
d:directory目录
rwx:root主有读写执行权限
r-x:root组有读执行权限
r-x:其他人有读执行权限
注:由此可见,默认新建目录的权限如上。 [root@localhost lianxi]# chmod u=rwx,g=rx,o=--- dasheng
  //user读写执行权限,group读执行权限,others没有权限
[root@localhost lianxi]# ls -ld dasheng
drwxr-x--- root root Nov : dasheng [root@localhost lianxi]# chmod o+rx dasheng  //others增加读执行的权限
[root@localhost lianxi]# ls -ld dasheng
drwxr-xr-x root root Nov : dasheng [root@localhost lianxi]# chmod o-rx dasheng  //others去掉读执行的权限
[root@localhost lianxi]# ls -ld dasheng
drwxr-x--- root root Nov : dasheng

2、递归修改权限

[root@localhost lianxi]# cd dasheng/ ; mkdir huaguoshan shuiliandong
[root@localhost dasheng]# ls
huaguoshan shuiliandong
[root@localhost dasheng]# ll
total
drwxr-xr-x root root Nov : huaguoshan
drwxr-xr-x root root Nov : shuiliandong
[root@localhost dasheng]# cd .. [root@localhost lianxi]# chmod -R o-rx dasheng  //递归修改dasheng目录及子目录的others权限
[root@localhost lianxi]# cd dasheng/ ; ll
total
drwxr-x--- root root Nov : huaguoshan
drwxr-x--- root root Nov : shuiliandong

3、利用数值修改权限

  r=4

  w=2

  x=1

  -=0

由此即可通过数值的形式替代上述的修改操作

  7=4+2+1=rwx、6=4+2=rw-、……类推

[root@localhost lianxi]# chmod -R  dasheng
[root@localhost lianxi]# ls -ld dasheng
drwxr-xrwx root root Nov : dasheng
[root@localhost lianxi]# ll dasheng
total
drwxr-xrwx root root Nov : huaguoshan
drwxr-xrwx root root Nov : shuiliandong

三、chown命令

作用:

  change file owner and group:修改文件的属主和属组(u、g、o、a)

注意:

  1、所属修改的用户和组必须存在

  2、chown操作只有root用户可以执行(chmod操作是root和所属者可以执行)

格式:

  chown  属主  文件

  chown  :属组  文件

  chown  属主:属组  文件

  chown  -R  属主:属组  目录  #递归修改指定目录下的所有文件、子目录的属主和属组

1、普通归属权修改

[root@localhost zhang]# mkdir wudangshan  //新建目录wudangshan
[root@localhost zhang]# useradd zhangwuji  //创建用户zhangwuji,同时也创建了该组
[root@localhost zhang]# useradd zhaomin  //创建用户zhaomin,同时也创建了该组
[root@localhost zhang]# ll
total
drwxr-xr-x root root Nov : wudangshan
  //默认归属是创建者,因为当前是root用户,所以该目录属于root用户,root组的。 [root@localhost zhang]# chown zhangwuji wudangshan/  //修改属主归属zhangwuji
[root@localhost zhang]# ll
total
drwxr-xr-x zhangwuji root Nov : wudangshan
[root@localhost zhang]# chown :zhangwuji wudangshan/  //修改属组归属zhangwuji
[root@localhost zhang]# ll
total
drwxr-xr-x zhangwuji zhangwuji Nov : wudangshan

//目前wudangshan目录,zhangwuji是除了root的最高所属,也是唯一所属者。也就是说现在wudangshan这个目录除了root和zhangwuji用户,其他人谁都不能动。

[root@localhost zhang]# su - zhangwuji
[zhangwuji@localhost ~]$ cd /zhang/
[zhangwuji@localhost zhang]$ ll
total
drwxr-xr-x zhangwuji zhangwuji Nov : wudangshan [zhangwuji@localhost zhang]$ chown zhaomin:zhaomin wudangshan/
chown: changing ownership of `wudangshan/': Operation not permitted  //无修改归属权限 [zhangwuji@localhost zhang]$ chmod wudangshan/  //有修改rwx权限(作为拥有者)
[zhangwuji@localhost zhang]$ ll
total
drwxrwxrwx zhangwuji zhangwuji Nov : wudangshan
[zhangwuji@localhost zhang]$ exit
logout

2、递归修改

[root@localhost zhang]# ll
total
drwxrwxrwx zhangwuji zhangwuji Nov : wudangshan
[root@localhost zhang]# chown zhaomin:zhaomin wudangshan/ -R  //递归修改属主:属组归属
[root@localhost zhang]# ll
total
drwxrwxrwx zhaomin zhaomin Nov : wudangshan [root@localhost zhang]# chown zhangwuji.zhangwuji wudangshan/ -R  // : 和 . 形式不同而已
[root@localhost zhang]# ll
total
drwxrwxrwx zhangwuji zhangwuji Nov : wudangshan

注意:

shell> ll  test.txt

-rw-r--r--. 1 502 root  247 Jan 12 10:20 test.txt

Q:这里为什么显示的是502?不是显示的用户名?

A:

  因为该文件原来的owner是UID为502这个用户;

  但目前该用户已经被删除了,所以这里显示的是原来用户的UID;

  owner和文件没有绑定的关系。

四、umask命令

作用:

  The user file-creation mask is set to mode.

  设置用户在创建文件的时候该文件有的默认的权限的一种权限掩码。

注:

  1、在内核级别,文件的初始权限666

  2、在内核级别,目录的初始权限777

[root@localhost /]# umask  //查看当前用户的权限掩码

0022

注意:前面的0是特殊权限位

Q:如何计算?

A:

  777-022=755:新建目录权限是755

  666-022=644:新建文件权限是644

也就是说group和others去掉了写的权限

[root@localhost /]# umask -S  //查看当前用户的权限设置

u=rwx,g=rx,o=rx

[root@localhost /]# mkdir weigai
[root@localhost /]# ll |grep weigai
drwxr-xr-x root root Nov : weigai
  //未改,默认权限掩码022,新建目录777-022=755:rwxr-xr-x [root@localhost /]# umask   //直接修改权限掩码,只是临时有效

[root@localhost /]# mkdir gaile
[root@localhost /]# ll |grep gaile
drwx------ root root Nov : gaile
  //改了,权限掩码077,新建目录777-077=700:rwx------

注意:

  除非有特殊需求,不推荐修改系统默认umask。

  若要永久修改:vim  /root/.bashrc等方式添加umask命令修改,让系统自动执行此条命令。

五、隐藏属性

1、chattr命令:设置文件的隐藏属性

格式:

  chattr  [+-=]  [a、i]  文件或目录

常用命令选项:

  R:递归修改

  a:可以增加文件内容,但不能修改和删除

  i:锁定保护文件,写保护,不能修改

+、-、=分别表示增加、去除、设置参数

2、lsattr命令:查看文件的隐藏属性

格式:

  lsattr  [Rda]  文件或目录

常用命令选项:

  -R:递归查看

  -d:查看目录

3、文件的写保护

[root@guili lianxi]# touch biyao
[root@guili lianxi]# ll
total
-rw-r--r-- root root Nov : biyao [root@guili lianxi]# chattr +i biyao  //biyao文件被锁定(写保护) [root@guili lianxi]# echo shangxinhua>>biyao
-bash: biyao: Permission denied [root@guili lianxi]# lsattr biyao  //查看文件的隐藏属性
----i--------e- biyao
[root@guili lianxi]# ll biyao
-rw-r--r-- root root Nov : biyao [root@guili lianxi]# chattr +i /etc/passwd
[root@guili lianxi]# useradd huqishan
useradd: cannot open /etc/passwd  
  //passwd文件被锁定,因为新建用户就需要向该文件插入新建用户信息,被锁定,所以就无法新建用户。 [root@guili lianxi]# chattr -i /etc/passwd  //-i解锁
[root@guili lianxi]# useradd huqishan
[root@guili lianxi]# id huqishan
uid=(huqishan) gid=(huqishan) groups=(huqishan)

4、目录的误删保护

[root@guili lianxi]# mkdir zhangxiaofan
[root@guili lianxi]# ls
biyao zhangxiaofan
[root@guili lianxi]# chattr +a zhangxiaofan  //添加a属性
[root@guili lianxi]# lsattr -d zhangxiaofan  //查看目录-d
-----a-------e- zhangxiaofan [root@guili lianxi]# cd zhangxiaofan/
[root@guili zhangxiaofan]# touch dazhufeng  //可进入可建文件(或目录)
[root@guili zhangxiaofan]# ls
dazhufeng
[root@guili zhangxiaofan]# rm -rf dazhufeng
rm: cannot remove `dazhufeng': Operation not permitted  //无法删除

由上可见,添加隐藏属性a、i,亦有一定的保护数据的功效

六、单独限权

setfacl命令

  针对任意指定的用户/组使用权限字符分配rwx权限。

格式:

  setfacl  选项  规则  文件

常见选项:

  -m:新增或修改

  -x:删除

查看单独权限:getfacl  文件

[root@localhost ~]# mkdir dir
[root@localhost ~]# id zhaomin
uid=(zhaomin) gid=(zhaomin) groups=(zhaomin)
[root@localhost ~]# setfacl -m u:zhaomin:--- dir
[root@localhost ~]# getfacl dir
# file: dir
# owner: root
# group: root
user::rwx
user:zhaomin:---
group::r-x
mask::r-x
other::r-x

[root@localhost ~]# setfacl -x u:zhaomin dir
[root@localhost ~]# getfacl dir
# file: dir
# owner: root
# group: root
user::rwx
group::r-x
mask::r-x
other::r-x

细说Linux权限的更多相关文章

  1. linux权限系统

    Linux权限分为 r(4):可读 , w(2)可写 , x(1)可执行 , -无权限 , 可以通过ls -l 文件名查看权限 , 如 ls -l 文件名 输出: -rwxrw---x. root r ...

  2. Shell基础:Linux权限管理

    Linux权限基本概念 查看系统(文件夹/文件)权限: ls -l =>d/-   xxx xxx xxx.  num  owner  group  size   date  filename ...

  3. 关于LINUX权限-bash: ./startup.sh: Permission denied

    关于LINUX权限-bash: ./startup.sh: Permission denied <script type="text/javascript"></ ...

  4. Linux权限操作 [转]

    Linux权限操作 本文内容来自<鸟哥linux私房菜>读后个人做的笔记,该书实为学习linux的很好入门教材 一.文件属性 ls ls -al列出所有的档案属性 ls是List的意思 档 ...

  5. linux权限解读

    1 只读权限,用r表示(read):可以读取文件或者列出目录的内容 2 可写权限,用w表示(write):可以删除文件或目录 3 可执行权限,用x表示(execute):可以执行可执行文件:可以进入目 ...

  6. linux权限---【600,644,700,755,711,666,777】 - - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  7. Linux系列教程(十六)——Linux权限管理之ACL权限

    通过前面的两篇博客我们介绍了Linux系统的用户管理,Linux用户和用户组管理之相关配置文件 讲解了用户管理的相关配置文件,包括用户信息文件/etc/passwd,用户密码文件/etc/shadow ...

  8. Linux权限分析

    我看过网上的一些有关Linux的权限分析,有些说的不够清楚,另外一些说的又太复杂.这里我尽量简单.清楚的把Linux权限问题阐述明白,Linux权限没有那么复杂. Linux权限问题要区分文件权限和目 ...

  9. 【Linux】 Linux权限管理与特殊权限

    Linux权限管理 权限管理这方面,非常清楚地记得刚开始实习那会儿是仔细研究过的,不知道为什么没有笔记留痕..除了一些基本的知识点早就忘光了,无奈只好从头开始学习一遍.. ■ 基本权限知识 这部分实在 ...

随机推荐

  1. 微信小程序,前端大梦想(三)

    微信小程序的事件及生命周期   继续下节课,今天我们还是从四个方面来了解小程序:     ●常用事件和事件冒泡   ●配置   ●app生命周期及app对象的使用   ●页面的生命周期   一.事件的 ...

  2. Unity3D 预备知识:C#与Lua相互调用

    在使用Unity开发游戏以支持热更新的方案中,使用ULua是比较成熟的一种方案.那么,在使用ULua之前,我们必须先搞清楚,C#与Lua是怎样交互的了? 简单地说,c#调用lua, 是c# 通过Pin ...

  3. 使用WebView监控网页加载状况,PerformanceMonitor,WebViewClient生命周期

    原理:WebView加载Url完成后,注入js脚本,脚本代码使用W3C的PerformanceTimingAPI, 往js脚本传入一个Android对象(代码中为AndroidObject),在js脚 ...

  4. MidpointRounding 枚举值简要说明

    1. MidpointRounding.AwayFromZero 当小数点后取舍时5 时会取绝对值大的如 4.5 会取5 及正常的4舍5入. -- 官方解释翻译解释取绝对值小值感觉反译错了. 2.Mi ...

  5. aos.js超赞页面滚动元素动画jQuery动画库

    插件描述:aos.js 是一款效果超赞的页面滚动元素动画jQuery动画库插件.该动画库可以在页面滚动时提供28种不同的元素动画效果,以及多种easing效果.在页面往回滚动时,元素会恢复到原来的状态 ...

  6. grunt构建一个项目

    准备工作:grunt基于node环境运行,所有先安装node.js 1.安装grunt,通过node的npm的包管理工具 >npm install grunt --save-dev 2.npm ...

  7. Jmeter察看结果树的响应数据中的中文显示乱码问题处理

    1.Jmeter的察看结果树的响应数据有中文时会显示乱码,如图,我访问百度HTTP请求,响应数据中的title处是一串乱码 2.我们需要改一个设置,打开jmeter\bin\jmeter.proper ...

  8. 需求收集实例三之 FM

    暂且叫这个项目叫FM.FM项目采用敏捷模式,需求的表现形式是Story. 此项目需求收集过程如下: 亮点:在公司第一次实践敏捷.用Story 而非 需求说明文档呈现需求. 败笔:没有处理好Story ...

  9. windows下编译java源文件的编码错误

    import java.util.Arrays;public class ArrayAsAReference{ public static void main(String[] args) { int ...

  10. SQL SERVER大话存储结构(2)_非聚集索引如何查找到行记录

              如果转载,请注明博文来源: www.cnblogs.com/xinysu/   ,版权归 博客园 苏家小萝卜 所有.望各位支持!      1 行记录如何存储     这里引入两个 ...