Files
kaka111222333-kaka111222333…/_posts/2014-02-08-linux-power.md
2019-11-17 01:12:14 +08:00

186 lines
5.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
layout: post
title: Linux权限管理
tags: Linux 命令
categories: Linux
---
* TOC
{:toc}
## `chmod`
**改变权限**
*数字法*
root@www ~]# `chmod [-R] xyz` 文件或目录
选项与参数:
`xyz` : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
`-R` : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都会变更
*符号法*
chmod
ugoa
+(加入) -(除去) =(设定)
rwx
文件或目录
>例:
>
>[root@www ~]# chmod u=rwx,go=rx .bashrc
>
>\# 注意!那个 u=rwx,go=rx 是连在一起的,中间并没有任何空格!
---
## `chgrp `
**改变所属群组**
chgrp [root@www ~]# `chgrp [-R] filename ...`
选项与参数:
`-R` : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件、目录 都更新成为这个群组之意。常常用在变更某一目录内所有的文件之情况。
---
## `chown`
**改变文件拥有者**
[root@www ~]# `chown [-R]` 账号名称 文件或目录
[root@www ~]# `chown [-R]` 账号名称:组名 文件或目录
选项与参数:
`-R` : 进行递归(recursive)的持续变更,亦即连同次目录下的所有文件都变更
---
## `chattr`
**配置文件隐藏属性**
[root@www ~]# `chattr [+-=][ASacdistu]` 文件或目录名称
选项与参数:
`+` :添加某一个特殊参数,其他原本存在参数则不动。
`-` :移除某一个特殊参数,其他原本存在参数则不动。
`=` :配置一定,且仅有后面接的参数
>`A` :当配置了 A 这个属性时,若你有存取此文件(或目录)时,他的存取时间 atime将不会被修改可避免I/O较慢的机器过度的存取磁碟。这对速度较慢的计算机有帮助。
`S` :一般文件是非同步写入磁碟的(原理请参考第五章sync的说明),如果加上 S 这个属性时,当你进行任何文件的修改,该更动会『同步』写入磁碟中。
`a` :当配置 a 之后这个文件将只能添加数据而不能删除也不能修改数据只有root才能配置这个属性。
`c` :这个属性配置之后,将会自动的将此文件『压缩』,在读取的时候将会自动解压缩,但是在储存的时候,将会先进行压缩后再储存(看来对於大文件似乎蛮有用的!)
`d` :当 dump 程序被运行的时候,配置 d 属性将可使该文件(或目录)不会被 dump 备份
`i` :这个 i 可就很厉害了!他可以让一个文件『不能被删除、改名、配置连结也无法写入或新增数据!』对於系统安全性有相当大的助益!只有 root 能配置此属性
`s` :当文件配置了 s 属性时,如果这个文件被删除,他将会被完全的移除出这个硬盘空间,所以如果误删了,完全无法救回来了喔!
`u` :与 s 相反的,当使用 u 来配置文件时,如果该文件被删除了,则数据内容其实还存在磁碟中,可以使用来救援该文件喔!
注意:属性配置常见的是 a 与 i 的配置值,而且很多配置值必须要身为 root 才能配置
---
## `lsattr`
**显示文件隐藏属性**
[root@www ~]# `lsattr [-adR]` 文件或目录
选项与参数:
`-a` :将隐藏档的属性也秀出来;
`-d` :如果接的是目录,仅列出目录本身的属性而非目录内的档名;
`-R` :连同子目录的数据也一并列出来!
---
## `umask`
**被排除的权限默认值**
*目前使用者在创建文件或目录时候的被排除的权限默认值*
[root@www ~]# `umask` 显示`数字`型态的权限配置分数
0022 <==与一般权限有关的是后面三个数字表示在777中被排除的权限即该目录中新增文件或目录的默认权限为755又因为新增文件默认不具有x权限所以该目录中新增目录的默认权限为755文件的默认权限为644
[root@www ~]# `umask -S``符号`类型的方式来显示出权限
u=rwx,g=rx,o=rx
[root@www ~]# `umask 002` `指定`权限配置分数
`!` 异或运算可排除权限
---
## 文件特殊权限
**`SUID`**
>`1` SUID 权限仅对二进位程序(binary program)有效;(对目录无效)
>`2` 运行者对於该程序需要具有 x 权限;
>`3` 运行者将具有该程序拥有者 (owner) 的权限,该权限仅在运行该程序的过程中有效 (run-time)
>例如:/etc/shadow只有root能够访问但是普通用户对于passwd有s权限passwd的owner是root所以普通用户可以在运行passwd时暂时获得root权限对/etc/shadow进行操作。
`!` SUID权限指的是文件权限中owner部分x权限的特殊版
`! chmod 4---` 可以赋予SUID权限所属用户的x位将变成s, 若不具备x权限s将变成S
**`SGID`**
*当为文件时*
>`1` SGID 仅对二进位程序有用;
>
>`2` 运行者对於该程序需具有x 权限;
>
>`3` 运行者在运行的过程中将会获得该程序群组group的权限,该权限仅在运行该程序的过程中有效 (run-time) --- 基本同SUID
*当为目录时*
>`1` 使用者若对於此目录具有 r 与 x 的权限时,该使用者能够进入此目录;
>
>`2` 使用者在此目录下的有效群组(effective group)将会变成该目录所属的群组;用途:若使用者在此目录下具有 w 的权限(可以新建文件),则使用者所创建的新文件的群组与此目录所属的群组相同。
`!` SGID权限指的是文件或目录权限中group部分x权限的特殊版
`! chmod 2---` 可以赋予SGID权限所属组的x位将变成s, 若不具备x权限s将变成S
**`SBIT`**
·SBIT权限仅对目录有效对文件无效
·使用者对於此目录需要具有 w, x 权限;
·当使用者在该目录下创建文件或目录时,仅有自己与 root 才有权力删除该文件
`! chmod 1---` 可以赋予SBIT权限其他的x位将变成t