linux文件的权限及特殊权限位

linux文件的权限及特殊权限位

文件的权限

rw-     r--    r--
owner  group  other

普通文件

**当仅r权限作用在文件上的时候,表示用户可以读取该文件的内容
*当仅w权限作用在文件上的时候,表示用户可以修改该文件的内容
当仅x权限作用在文件上的时候,没有意义。
**当rw同时作用在文件上的时候,表示用户可以读写文件
**当rx同时作用在文件上的时候,表示用户可以读且可以执行该文件
当wx同时作用在文件上的时候,权限与仅w相同
**当rwx同时作用在文件上的时候,用户可以读写执行。

目录

当仅r权限作用在目录上的时候,表示用户可以短列出查看目录下的文件名
当仅w权限作用在目录上的时候,没有意义
*当仅x权限作用在目录上的时候,表示用户可以进入且可以访问目录下的文件,但不能列出文件名
当仅rw权限同时作用在目录上的时候,权限等同于仅r权限作用在目录
**当仅rx权限同时作用在目录上的时候,表示用户可以进入,可以访问子文件,同时可以长列出文件
*当仅wx权限同时作用在目录上的时候,表示用户可以进入,可以访问子文件,可以创建及删除,但不能列出
**当rwx权限同时作用在目录上的时候,表示用户有完整权限
X 对于批量增加x权限时,可以跳过文件而只对目录加x

 chmod --reference
 -R  可以递归修改权限
  r:4
  w:2
  x:1

  7:rwx
  6:rw
  5:rx
  4:r
  3:wx
  2:w
  1:x     

 umask

     表示用户创 建文件的默认权限,目录最高777,文件最高666
     umask xxx 设置umask
     umask   查看umask
     ~/.bashrc 将umask设定保存以让下次登录时仍然有效
     umask -S 显示创建目录的默认权限

作业:

1、复制/etc/fstab文件到/var/tmp下,设置文件所有者为wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限
cp /etc/fstab /var/tmp;
useradd wangcai;
groupadd sysadmins;
chown wangcai.sysadmins /var/tmp/fstab;
chmod u=rw,g=rw,o= /var/tmp/fstab

2、误删除了用户wangcai的家目录,请重建并恢复该用户家目录及相应的权限属性
rm -rf /home/wangcai
mkdir -p /home/wangcai
cp cp -rf /etc/skel/.[^.]* /home/wangcai/
  • suid

    suid: 对于可执行的二进制文件作用了suid权限之后,任何人在执行该文件时,可临时拥 有其所属人的权限
    chmod u+s
    chmod 4777 suid

  • sgid

    sgid: 对于可执行的二进制文件作用了sgid权限之后,任何人在执行该文件时,可临时拥 有其所属组的权限
    对于目录作用了sgid权限之后,任何人在该目录下创建的文件的所属继承目录的所属组
    chmod g+s
    chmod 2777 sgid

  • sticky

    sticky:对于目录作用了sticky之后,该目录下的文件及子目录,仅其所属人和目录的所属 人及root才能删除。
    chmod o+t
    chmod 1777 sticky

    • 设定文件特定属性

    chattr +a 不可修改,可以追加,不能删除
    chattr +i 什么也不做,只能读

    lsattr filename 查看文件是否有特定属性

    • ACL 权限

    Cenots6: 新建分区默认没有acl支持,开启的方法.
    fdisk /dev/sda
    n回车
    回车

    • 500M 回车
      w回车
      partx -a /dev/sda 通知内核更新分区表
      mkfs.ext4 /dev/sda6
      tune2fs -l /dev/sda |grep acl
      none
      tune2fs -o acl /dev/sda6
      tune2fs -l /dev/sda |grep acl
      acl
      Centos7:无论何时都支持acl
    • 文件的权限执行顺序

    owner > acl user > group acl group 谁多谁优先 > other设置
    setfacl -m u|g:username|groupname:rwx filename|dirname
    setfacl -x u|g:username|groupname filename|dirname
    setfacl -b filename |dirname
    setfacl -m m:r-x filename|dirname 或 chmod g=rx filename |dirname

      • 通过文件设置acl

      file.add 内容如下
      u:liubei:rwx
      g:shuguo:rx

      setfacl -M file.acl house/

      • 通过文件删除acl
        file.del 内容如下
        u:liubei
        g:shuguo

      setfacl -X file.del house/

      • 默认权限
        setfacl -m d:u:liubei:rwx house
        setfacl -Rm u:liubei:rwx house
  • getfacl house
    file: .
    owner: root
    group: root
    -------------------------- setfacl -Rm u:liubei:rwx house
    user::rwx
    user:liubei:rwx
    group::r-x
    mask::rwx
    other::r--

    -------------------------setfacl -m d:u:liubei:rwx house
    default:user::rwx
    default:user:liubei:rwx
    default:group::r-x
    default:mask::rwx
    default:other::r-x

setfacl -k house/ 仅删除默认权限

  • 实验:包含acl权限的目录使用打包工具备份及恢复

    1.备份
    tar -cvf house.tar house
    getfacl -R house > acl.txt
    2.还原
    tar -xvf house.tar -C /var/tmp
    cp acl.txt /var/tmp
    setfacl --restore acl.txt

原文地址:http://blog.51cto.com/11912662/2123407

时间: 2024-08-25 10:21:51

linux文件的权限及特殊权限位的相关文章

Linux文件的三种特殊权限SUID、SGID、STICKY

三种特殊的文件系统格式: 1>. SUID 作用对象: 只能作用在二进制的可执行文件,也就是说它本身运行起来就是一个进程. 效果: 没有suid权限的二进制文件, 能否执行取决于当前用户有无对该文件执行权限, 执行之后,进程的拥有者也是当前系统用户. 被服务suid后, 当文件被运行后, 进程的拥有者不是系统当前的用户, 而是文件的所属者. 命令: chmod u+s 文件 2>. SGID SGID权限分为两种情况, 分别为作用在文件上, 作用在目录上. a>. 作用在文件上, 一旦一

Linux文件与目录的默认权限与隐藏权限 - umask, chattr, lsattr, SUID, SGID, SBIT, file

文件默认权限:umask [[email protected] ~]# umask 0022 <==与一般权限有关的是后面三个数字! [[email protected] ~]# umask -S u=rwx,g=rx,o=rx 默认的情况如下: 若使用者创建为『文件』则默认『没有可运行( x )权限』,亦即只有 rw 这两个项目,也就是最大为 666 分,默认权限如下: -rw-rw-rw- 若使用者创建为『目录』,则由於 x 与是否可以进入此目录有关,因此默认为所有权限均开放,亦即为 777

Linux文件和目录的粘滞位(sticky bit)带来的困惑(转)

今天维护系统时发现一个非常诡异的问题:AAA用户和BBB用户同属AAA组,但用AAA用户创建的文件,权限设置为777后,还是不能用BBB用户删除.诡异! 几经周转,发现AAA用户创建文件位置的上层目录的权限是drwxrwxrwt,做开发这么多年了,还没见过所谓"t"的权限,于是找了一位公司的linux大师帮忙,大师噼里啪啦的做了一堆试验后,然后在google上搜索"rwt linux",终于发现了问题,发现这种用法的名字是"文件的粘滞位(sticky)位&

Linux文件和目录的粘滞位(sticky bit)

今天维护系统时发现一个非常诡异的问题:AAA用户和BBB用户同属AAA组,但用AAA用户创建的文件,权限设置为777后,还是不能用BBB用户删除.诡异! 几经周转,发现AAA用户创建文件位置的上层目录的权限是drwxrwxrwt,做开发这么多年了,还没见过所谓"t"的权限,于是找了一位公司的linux大师帮忙,大师噼里啪啦的做了一堆试验后,然后在google上搜索"rwt linux",终于发现了问题,发现这种用法的名字是"文件的粘滞位(sticky)位&

Linux文件和目录的特殊权限

特殊权限: SUID: 用户在运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动进程用户的属主. #chmod u+|-s FILE 若FILE原来有执行权限,则显示为s,否则为S. SGID: 用户在运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动进程用户的属组. #chmod g+|-s FILE 若FILE原来有执行权限,则显示为s,否则为S. Sticky(冒险位): 在一个公共目录,每个用户都能创建文件,删除自己的文件,但不能删除其他用户的文件. #chmod o

Linux文件权限【转载】

一.Linux文件权限    每个Linux文件具有四种访问权限:可读(r).可写(w).可执行(x)和无权限(-).    利用ls -l命令可以看到某个文件或目录的权限,它以显示数据的第一个字段为    准.第一个字段由10个字符组成,如下:        -rwxr-xr-x    第一位表示文件类型,-表示文件,d表示目录    2-4位表示文件所有者的权限,u权限    5-7位表示文件所有者所属组成员的权限,g权限    8-10位表示所有者所属组之外的用户的权限,o权限      

linux文件权限位SUID,SGID,sticky的设置理解

SUID含义:文件的该位被设置为1,在该文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来           执行这个文件,他都有文件所有者的特权,如果所有者是root的话,那么执行人就有超级用户           的特权了,这是该位将变成一个安全漏洞,因此不要轻易设置该位. SGID含义:运行者将具有文件所有组的权限. 粘合位:  要求操作系统既是在可执行程序退出后,仍要在内存中保留该程序的映像,这样做是为了节省大           型程序的启动时间,但是会占用系统资源,因此设置

&#8203;Linux文件和目录特殊权限位介绍及实践&#8203;(setuid setgid)

            Linux文件和目录特殊权限位介绍及实践 在Linux中不管是超级用户root还是普通用户都可以使用命令"passwd"命令修改自己的密码,但是了解Linux的人都知道Linux密码是存放在/etc/passwd  /etc/shadow  里面的 用ls -l /etc/passwd  /etc/shadow 查看一下权限 [[email protected] ~]# ls -l /etc/passwd /etc/shadow -rw-r--r--. 1 ro

linux文件权限管理与ACL访问控制列表

一.文件属性 1.文件属性: 文件属性操作 chown : change owner  ,设置文件所有者 chgrp : change group  ,设置文件的属组 文件属主修改: chown 格式:chown [OPTION]- [OWNER][:[GROUP]] FILE- 用法: OWNER OWNER:GROUPNAME    (同时修改属主.属组) :GROUPNAME                (默认属主,修改属组) ( 命令中的冒号可用.替换:) chown  –refere