五大权限UGO权限SetUID SetGID StickyACL权限chattr(文件系统级别的权限)、SELINUX
 
======================文件属性以及ugo权限==================================
ls -l 列出文件的属性
 
linux文件的类型包括以下六种:
-  普通文件
 
d 目录文件
l  链接文件
b block类型的设备文件  块设备文件
c 字符型的设备文件
s socket文件 网络类型的文件
p 管道类型的文件
 
ugo权限
u 代表 users 拥有者
g 代表 group所属组
o 代表 others
a 代表所有,包括ugo
 
rwx的含义
 r代表读权限 w代表写权限 x代表执行权限
对于文件:r代表可使用cat等命令查看文件内容,w代表可增 加/删除/修改文件内容,x代表可执行该文件。
对于目录:r代表可使用ls命令列出目录下的文件名,要想看文件的详细信息,需结合x权限。
w代表表可在该目录下创建/删除文件和子目录,或修改 文件名称, 要与x结合使用。x代表可进入该目录。
r=4    w=2    x=1
 
文件类型的查看方式?两种 ls -l 或者 file
 
文件夹的权限
x     代表可以cd进去
rx    代表可以cd进去 ls ls-l
wx   代表可以cd ls touch rm vi 自己的文件和别人的文件
wxt  只能编辑自己的文件 cd touch vi
 
chmod修改文件ugo权限
chmod ugoa  +-= rwx的命令方式:
chmod o+w file1
chmod g-w  file1
chmod o=--- file1
chmod a=rw file1
chmod -R 递归修改文件ugo权限
chmod 644 file1
 
chown
chown sherk a
chown shrek.ttt b
chown shrek:ttt b
chown -R
chown .ttt
chgrp ttt
 
R4  W2  X1
 
 
在ext2 ext3文件系统中
文件以inode + block的方式存在,inode保存了文件的属性
stat filename可以用来检查文件的inode
 
umask
umask 决定用户创建的文件和目录的默认权限
root 用户 022(默认) 普通用户 002 (默认)
文件最大权限666,目录最大权限777。
umask 直接回车,可查看当前用户的umask值。
设置umask 值
(1)umask 数字 可临时修改当前用户的umask值。
~/.bashrc 添加umask 数字 可永久修改用户的umask值
 (2) vim ~/.bashrc  永久生效
/etc/bashrc 是系统级的配置
vim /etc/bashrc (全局配置) 一般不用
======================suid sgid sticky=============================
suid 作用在二进制的可执行程序上,让任何人在执行这个二 进制可执行程序时临时拥有文件拥有者的权限。
设置方式:chmod u+s filename,例如passwd可执行文件就是这个权限
sgid 作用在二进制的可执行程序上,任何人在执行这个二进 制可执行程序时临时拥有文件所属组内用户的权限。
作用在目录上,任何人在这个目录下创建的文件所属组都继承目录的所属组。
设置方式:chmod g+s filename/dirname
sticky 作用在目录上。任何人都可以在该目录下创建文件, 但是自己只能删除或修改自己的文件,
不能删除其他用户创建的文件,只用这个目录的拥有者能够删除该目录下所有文件,达到动态平衡。
设置方式:chmod +t dirname
suid=4 sgid=2 sticky=1
chmod 1777 file
chmod 7777 file
 
======================acl权限=============================
访问控制列表
acl 权限 是UGO权限的补充权限,UGO最多可控制三类用户,acl可针对单个用户和单个组做权限的设置。
getfacl filename 查看某个文件拥有的acl权限
setfacl -m u:usename:rwx  file1 针对某个特定用户设置acl权限
setfacl -m g:groupname:r-x  file1 针对单个组设置acl权限
setfacl -m m:权限 设置mask值,mask是规定除了user和others之外,剩下的用户能够拥有的最大权限。 ^C
setfacl -x u:username finame删除一条acl条目 ^C
setfacl -x g:groupname filename
setfacl -x m filename
setfacl -b filename 清空整个acl列表
 
acl权限一般用在linux和windows连用的时候,因为windows一般权限都是针对单个用户
 
ls的变化
drwxrwxr-x+ 2 root root 4096 Feb  5 17:08 aclfile
 
===================== =ATTR权限===========================
针对特殊用户的特殊权限
lsattr file1 查看
chattr +i  filename 任何人不能修改该文件  chattr -i filename  适用于重要文件防止误删除    
chattr +a 只能追加文件,不能改原本的东西 chattr -a filename  适用于日志文件
+A 文件时间戳不被更新     适用于访问量大的文件
用的最多的就是 +i 和 +a
帮助文档man chattr
 
 
查看文件的属性
ls
file
lsattr
stat
getfacl

五大权限:UGO权限、SetUID SetGID Sticky、ACL权限、chattr(文件系统级别的权限)、SELINUX的更多相关文章

  1. 关于文件目录等的特殊权限setuid, setgid , sticky chattr, lsattr

    有三种特殊权限 总之, 设置这些特殊权限有两种方法, 一是使用 chmod ugo的方式, 另一个是 使用 数字的方式, 通常的读写执行 权限 是 3位 数字, 那么 特殊权限 就用 4位数字, 而且 ...

  2. Linux学习之文件特殊权限详解(SetUID、SetGID、Sticky BIT)(十一)

    Linux学习之文件特殊权限详解(SetUID.SetGID.Sticky BIT) 目录 SetUID SetGID Sticky BIT SetUID SetUID简介 只有可以执行的二进制程序和 ...

  3. Linux权限管理:setUID、setGID 和 Sticky BIT

    1.setUID.setGID 和 Sticky BIT 的功能详解 setuid 功能: 1.只有可执行的二进制文件程序才能设定 SUID 权限(前提) 2.命令执行者要对该程序有执行(x)权限(必 ...

  4. 特殊权限 SUID、SGID、Sticky

    摘录之----------QuintinX 一. 前提 本篇主要讲解SUID, SGID, Sticky三个权限的基本原理和应用. 为什么要使用特殊权限? 比如系统中假如有超过四类人然而每一类人都需要 ...

  5. Linux文件权限与属性详解 之 ACL

    Linux文件权限与属性详解 之 一般权限 Linux文件权限与属性详解 之 ACL Linux文件权限与属性详解 之 SUID.SGID & SBIT Linux文件权限与属性详解 之 ch ...

  6. 八、linux文件系统上的特殊权限 SUID 、GUID、Sticky

    安全上下文 前提:进程有属主和属组,文件有属主和属组 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限 启动为进程之后,其进程的属主为发起者:进程的属组为发起者所属的组 进 ...

  7. Kafka SASL/SCRAM+ACL实现动态创建用户及权限控制

    kafka系列文章 第一章 linux单机安装kafka 第二章 kafka--集群安裝部署(自带zookeeper) 第三章 Kafka SASL/SCRAM+ACL实现动态创建用户及权限控制 Ka ...

  8. setuid setgid

    http://blog.csdn.net/oo__yan/article/details/7076889 在Linux系统中每个普通用户都可以更改自己的密码,这是合理的设置. 问题是:用户的信息保存在 ...

  9. jenkins用户权限配置错误,导致登录时提示:没有Overall/read权限

    jenkins用户权限配置错误,导致登录时提示:没有Overall/read权限 由于初次接触jenkins,于是在搭建好jenkins以后,想要对用户进行管理,于是乎开始在系统管理->conf ...

随机推荐

  1. P1038 神经网络

    #include <bits/stdc++.h> using namespace std; const int maxn = 105; struct node { int situatio ...

  2. play for scala 在模板中格式化Date

    在play模板中格式化Date非常简单,只要编写一个静态函数,然后在模板中直接使用就可以了.如编写Html.scala package utils import java.text.SimpleDat ...

  3. sql 在not in 子查询有null值情况下经常出现的陷阱

    如果下:TempSalesPriceFixedValues表和SalesPriceFixedValues表,要求查询出在TempSalesPriceFixedValues表中且不在SalesPrice ...

  4. Web3D编程入门总结——WebGL与Three.js基础介绍

    /*在这里对这段时间学习的3D编程知识做个总结,以备再次出发.计划分成“webgl与three.js基础介绍”.“面向对象的基础3D场景框架编写”.“模型导入与简单3D游戏编写”三个部分,其他零散知识 ...

  5. linux挂载移动硬盘

    1. 安装ntfs-3g2. mkdir /mnt/disk3. mount -t ntfs-3g /dev/sdb /mnt/disk4.卸载 umount /dev/sdb

  6. 刨根问底U3D---如何退出Play模式后保留数据更改

    实际中遇到的需求 在做一款对抗类游戏,目前正在调整游戏的平衡性 所以就产生了一个需求 希望可以在Play模式时候对数据源做的更改可以在退出时候被保存下来. 举个Case, 比如 有一个炮塔 可以发射子 ...

  7. struts action和jsp之间的传值

    一.jsp对Action传值 提交表单即可,Action的属性必须和表单的标签名字相同 二.Action对jsp传值: (1)利用session,(个人推荐) action中ActionContext ...

  8. 学习Uml开始

    Um的全称是 Unified Modeling Language, 统一建模语言,uml可以帮助我们做软件需求和软件设计的工作, 1.1UML的定义 UML是一种通用的可视化建模语言,是一种标准化的用 ...

  9. SpringMVC集成AOP错误:java lang classnotfoundexception org aspectj lang joinpoint

    记录自己出现的问题,Spring AOP 使用测试类测试没问题,在SpringMVC启动服务器时出现java lang classnotfoundexception org aspectj lang ...

  10. Linux 的字符串截取方法(转)

    Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.aaa.com/123.htm. 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} ...