普通权限

普通权限使用ls -l查看,最前面显示的即是,如:

# ls -l .txt
-rw-r--r-- 1 root root 8338 7月 19 20:27 1.txt

权限介绍:

-/d/l/...  rwx rwx rwx
 1位
-表示文件,d表示文件夹,l表示链接文件
3位
文件所属用户的读、写、执行权限
3位
文件所属用户组的读、写、执行权限
3位
其他用户的读、写、执行权限

普通权限使用chmod修改。

特殊权限

特殊权限是为了解决这样的问题:系统用户的密码都存储在/etc/shadow中,该文件非常重要不能开放权限,但其他用户又必须要能修改自己的密码,于是给可信任的passwd命令增加特殊权限,这样其他用户使用passwd时将获得与所有者(root)一样的权限,执行完毕权限自然也收回;

看看passwd的权限:

# ls -l `which passwd`
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd

一个s代替了user上的x,这个即是特殊权限,有下面三种:

特殊权限 表现形式 命令操作 说明
SUID s代替user上的x chmod u+s xxx 只对二进制程序有效,执行时获得程序所有者的权限,执行完毕权限失效
SGID s代替group上的x chmod g+s xxx

对二进制程序有效,执行时获得程序所属用户组的权限,执行完毕权限失效

对文件夹有效,文件夹内获得所属用户组的权限,文件也都属于该用户组,方便统一管理

SBIT t代替other上的x chmod o+t xxx

也叫粘滞位,只对文件夹有效,文件夹内的文件只有其所有者或root才能删除、移动、重命名

/tmp就设置了该权限,故虽然其权限是777,但对其他用户的文件不能进行删除和修改

特殊权限同样有数字权限:SUID:4,SGID:2,SBIT:1,普通数字权限之前加一位表示特殊权限,如:chmod 2755 xxx

隐藏属性

明明有权限却无法删除,甚至root都无权操作,那么八成是隐藏属性在限制;

隐藏属性使用lsattr查看,如:

# lsattr 1.txt
-------------e-- 1.txt

可以看到只有一个e属性,,下面是一些常见的:

a 使文件只可被追加内容,只有root可设置
A 使文件被访问时atime不被修改
c 使文件在被读写时由内核进行压缩
d 使文件不会被dump备份
D 作用于文件夹,使其被修改时立即同步到磁盘上
e 表示文件以ext4 extents存储的,ext4上新建文件的默认属性,不可用chattr修改
i 使文件不能被修改、删除、重命名、链接,只有root可设置

隐藏属性使用chattr修改:

# touch 1.txt
# chattr +i 1.txt
# lsattr 1.txt
----i--------e-- 1.txt
# chattr -i 1.txt
# lsattr 1.txt
-------------e-- 1.txt

ACL权限

acl,即访问控制列表,可以针对某个用户或用户组进行单独的权限设置;

用root创建一个只有自己有权限的目录/tmp/acl,使用getfacl查看:

# cd /tmp
# mkdir -m 700 acl
# ls -l
drwx------ 2 root root 4096 7月 20 14:14 acl
# getfacl acl
  # file: acl
  # owner: root
  # group: root
  user::rwx
  group::---
  other::---

下面用setfacl配置读写权限给develop账号:

# setfacl -m u:develop:rwx acl/
# getfacl acl/
# file: acl/
# owner: root
# group: root
user::rwx
user:develop:rwx
group::---
mask::rwx
other::---

最终的权限 = user:develop & mask,这里结果就是rwx,develop账号已经有了/tmp/acl目录的rwx权限;

删除acl权限:

# setfacl -b acl/
# getfacl acl/
# file: acl/
# owner: root
# group: root
user::rwx
group::---
other::---

over

细数Linux的文件权限的更多相关文章

  1. linux初学者-文件权限

    linux初学者-文件权限 lunix系统都是以文件的形式存在,自然而然的就会要求不同的用户拥有不同的权限,这也是系统能够运行的根本保证,下文将对文件的权限管理进行简要的介绍. 1.文件属性的查看 - ...

  2. 全面解析Linux数字文件权限

    全面解析Linux数字文件权限 来源:   时间:2013-09-04 20:35:13   阅读数:11433 分享到:0 [导读] 在刚开始接触Linux时对于文件权限的理解并不是很透彻,这里详细 ...

  3. [转]Linux中文件权限目录权限的意义及权限对文件目录的意义

    转自:http://www.jb51.net/article/77458.htm linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括 ...

  4. 第六章、Linux 的文件权限与目录配置

    第六章.Linux 的文件权限与目录配置 1. 使用者与群组 2. Linux文件权限概念 2.1 Linux文件属性 2.2 如何改变文件属性与权限: chgrp, chown, chmod 2.3 ...

  5. Linux的文件权限

    1 文件权限的表示 (1)字母表示法 Linux中所有文件(普通文件.目录文件.字符特殊文件.块特殊文件.管道或FIFO.符号链接.套接字)都有9个权限,如下图所示: -rw-rw-r--就是文件a的 ...

  6. linux的文件权限小结

    对于初接触Linux的朋友来说,会有各种不习惯和各种昏头,文件的权限就很让人不知所措. ls命令以及字段含义 比如我们列出当前目录文件: 我们来看下上述大致含义: 第1行显示的信息: 总用量(tota ...

  7. 【Linux】文件权限

    Linux的每一个文件都跟多种类型相关联.在这些权限中,我们通常需要和三类权限打交道(用户.用户组以及其他实体). 1.文件权限查看ls –l Linux:/qinys # ls -l total 6 ...

  8. Linux的文件权限(简单易懂)

    学习这个章节,必须明白以下三个概念: 1.所有者 2.所属组 3.其他人 明白这三个概念后,接下来就学习文件的属性,那么文件的属性有什么呢?如何查看文件的属性? 在命令行下,执行 ls -l 可以得到 ...

  9. linux的文件权限分析

    windows中,文件的类型是根据后缀名来确定的,但是linux则是根据标志来确定的,查看一个文件的权限的命令是 ls -l #查看文件的权限 文件的权限结构如图: ①第一部分:10个字符(第1位表示 ...

随机推荐

  1. linux 标注主机别名

    vi /etc/bashrc # Turn on checkwinsize  shopt -s checkwinsize  [ "$PS1" = "\\s-\\v\\\$ ...

  2. IP的面向无连接状态

    ip是面向于无连接的状态,在发包前,不需要建立与对端目标地址之间的连接. ip采用面向无连接的原因? 面向连接比无连接复杂,此外每次通信前都要事先建立连接,会降低处理速度.需要有连接时可以委托上一层提 ...

  3. springBoot生成日志文件

    一.安装lombok 说明: 安装bomlok后model可以不用写get.set方法,slf4j日志直接使用log打印 1. Maven Repository中下载lombok.jar 2. 将lo ...

  4. VisualStudioCode中用dotnet命令创建多个ASP.NET Core 项目、类库、控制台程序,并添加应用间的引用

    一.准备工作 首先安装VisualStudioCode并且可以使用. 1.首先新创建空的MyApps文件夹,作为项目主目录,下面将在这个文件夹中创建多个web应用程序.类型.控制台程序等. 2.打开V ...

  5. Redis的持久化之AOF方式

    AOF方式:将以日志,记录每一个操作 优势:安全性相对RDB方式高很多: 劣势:效率相对RDB方式低很多: 配置: [root@localhost redis]# vi redis.conf 编辑re ...

  6. sqlplus用户登录

    1.运行SQLPLUS工具 C:\Users\wd-pc>sqlplus 2.直接进入SQLPLUS命令提示符 C:\Users\wd-pc>sqlplus /nolog 3.以OS身份连 ...

  7. 搭建MHA测试

    搭建MHA:  手工切换:  masterha_master_switch --conf=/etc/masterha/app1.cnf --master_state=alive --new_maste ...

  8. selenium常用操作

    1.访问页面获得源码 browser.get(url) browser.page_source 2.查找单个元素:返回一个标签 find_element_by_id  ==>id选择器 find ...

  9. js 获取鼠标的手势方向角度

    需要获取鼠标的移动角度 1.mousedown 确定起始点 2.mousemove 确立相关点 3.先计算两点的斜率,然后根据三角函数和反三角函数.转换为角度 <!DOCTYPE html> ...

  10. python-soap接口请求

    一.环境准备 方法一: >pip3 install suds >pip3 install suds-jurko 因在线安装报错,所以直接下载安装包. 方法二: 1.suds库下载地址:ht ...