目录:

chmod:访问权限设置

chown:所属权限设置

umask:权限掩码

隐藏属性

chattr:写保护、误删保护

单独限权

setfacl

一、归属和访问权限简介

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 2 root root 4096 Nov 10 11:06dasheng

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--- 2 root root 4096 Nov 10 11:06dasheng

[root@localhost lianxi]# chmod o+rx dasheng  //others增加读执行的权限[root@localhost lianxi]# ls-ld dasheng

drwxr-xr-x 2 root root 4096 Nov 10 11:06dasheng

[root@localhost lianxi]# chmod o-rx dasheng  //others去掉读执行的权限[root@localhost lianxi]# ls-ld dasheng

drwxr-x--- 2 root root 4096 Nov 10 11:06 dasheng

2、递归修改权限

[root@localhost lianxi]# cd dasheng/; mkdir huaguoshan shuiliandong

[root@localhost dasheng]# ls

huaguoshan shuiliandong

[root@localhost dasheng]# ll

total8drwxr-xr-x 2 root root 4096 Nov 10 11:10huaguoshan

drwxr-xr-x 2 root root 4096 Nov 10 11:10shuiliandong

[root@localhost dasheng]# cd ..

[root@localhost lianxi]# chmod-R o-rx dasheng  //递归修改dasheng目录及子目录的others权限[root@localhost lianxi]# cd dasheng/; ll

total8drwxr-x--- 2 root root 4096 Nov 10 11:10huaguoshan

drwxr-x--- 2 root root 4096 Nov 10 11:10 shuiliandong

3、利用数值修改权限

r=4

w=2

x=1

-=0

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

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

[root@localhost lianxi]# chmod -R 757dasheng

[root@localhost lianxi]# ls-ld dasheng

drwxr-xrwx 4 root root 4096 Nov 10 11:10dasheng

[root@localhost lianxi]# ll dasheng

total8drwxr-xrwx 2 root root 4096 Nov 10 11:10huaguoshan

drwxr-xrwx 2 root root 4096 Nov 10 11:10 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

total4drwxr-xr-x 2 root root 4096 Nov 10 13:29wudangshan//默认归属是创建者,因为当前是root用户,所以该目录属于root用户,root组的。

[root@localhost zhang]# chown zhangwuji wudangshan/  //修改属主归属zhangwuji[root@localhost zhang]# ll

total4drwxr-xr-x 2 zhangwuji root 4096 Nov 10 13:29wudangshan

[root@localhost zhang]# chown :zhangwuji wudangshan/  //修改属组归属zhangwuji[root@localhost zhang]# ll

total4drwxr-xr-x 2 zhangwuji zhangwuji 4096 Nov 10 13:29 wudangshan

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

[root@localhost zhang]# su -zhangwuji

[zhangwuji@localhost~]$ cd /zhang/[zhangwuji@localhost zhang]$ ll

total4drwxr-xr-x 2 zhangwuji zhangwuji 4096 Nov 10 13:29wudangshan

[zhangwuji@localhost zhang]$ chown zhaomin:zhaomin wudangshan/chown: changing ownership of `wudangshan/': Operation not permitted  //无修改归属权限

[zhangwuji@localhost zhang]$ chmod777 wudangshan/  //有修改rwx权限(作为拥有者)[zhangwuji@localhost zhang]$ ll

total4drwxrwxrwx2 zhangwuji zhangwuji 4096 Nov 10 13:29wudangshan

[zhangwuji@localhost zhang]$ exit

logout

2、递归修改

[root@localhost zhang]# ll

total4drwxrwxrwx2 zhangwuji zhangwuji 4096 Nov 10 13:29wudangshan

[root@localhost zhang]# chown zhaomin:zhaomin wudangshan/ -R  //递归修改属主:属组归属[root@localhost zhang]# ll

total4drwxrwxrwx2 zhaomin zhaomin 4096 Nov 10 13:29wudangshan

[root@localhost zhang]# chown zhangwuji.zhangwuji wudangshan/ -R  //: 和 . 形式不同而已[root@localhost zhang]# ll

total4drwxrwxrwx2 zhangwuji zhangwuji 4096 Nov 10 13:29 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 2 root root 4096 Nov 10 14:07weigai//未改,默认权限掩码022,新建目录777-022=755:rwxr-xr-x

[root@localhost/]# umask 077  //直接修改权限掩码,只是临时有效[root@localhost/]# mkdir gaile

[root@localhost/]# ll |grep gaile

drwx------ 2 root root 4096 Nov 10 14:08gaile//改了,权限掩码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

total0

-rw-r--r-- 1 root root 0 Nov 10 17:30biyao[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-- 1 root root 8 Nov 10 17:30biyao

[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=921(huqishan) gid=922(huqishan) groups=922(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=504(zhaomin) gid=504(zhaomin) groups=504(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具有写保护权限的文件,细说Linux权限相关推荐

  1. linux 创建目录 默认权限,如何设置UNIX/Linux中新创建目录或文件的默认权限

    在unix或者linux中,每创建一个文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,那么这些默认权限是怎么控制的呢? 答案是"umask"权限掩 ...

  2. 过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件

    过滤Linux下不同大小的文件,linux查找当前目录下 M/G 大小的文件,删除Linux下指定大小的文件 find ./ -type f -size +1G| xargs rm 在清理系统日志文件 ...

  3. Mac/Linux/Centos终端中上传文件到Linux云服务器

    Mac/Linux/Centos终端中上传文件到Linux云服务器 1.mac上传文件到Linux服务器 scp 文件名 用户名@服务器ip:目标路径如:scp /Users/test/testFil ...

  4. Linux 命令之 chmod -- 改变文件或目录权限

    文章目录 一.命令介绍 二.语法格式 三.常用选项 四.权限表达式 (一)采用权限字母和操作符表达式 (二)采用权限数字表达式 五.参考示例 (一)为拥有者.所属群组以及其他人添加关于director ...

  5. linux程序没有对日志文件写的权限_好程序员云计算培训分享Linux文件权限简单说明...

    好程序员云计算培训分享Linux文件权限简单说明,在 Linux 中的每一个文件或目录都包含有访问权限,这些访问权限决定了谁能访问和如何访问这些文件和目录.通过设定权限可以从以下三种访问方式限制访问权 ...

  6. Linux如何查询目录默认权限,如何设置UNIX/Linux中新创建目录或文件的默认权限

    在unix或者linux中,创建一个新文件或者目录时,这个文件或者目录都具有一个默认的权限,比如目录755,文件644,这些默认权限是由umask(权限掩码)来控制的,一般umask默认值为022,其 ...

  7. linux系统默认的创建目录的权限是什么,Linux—用户新建目录和文件的默认权限设置:umask详解...

    关注微信公众号:CodingTechWork,一起学习进步. 引言 我们有没有思考过一个问题,在登录Linux系统后,我们创建的目录或者文件的权限,为什么每次创建都是统一的?我们做以下实验:新建一个用 ...

  8. linux chmod和fchmod设置 文件和目录权限设置

    这两个函数使我们可以更改现有文件的访问权限: #include <sys/stat.h> int chmod( const char *pathname, mode_t mode ); i ...

  9. linux文件对用户隐藏,Linux就该这么学-文件的特殊权限、隐藏权限

    1.SUID(让执行者临时拥有文件所有者的权限) SUID是一种对二进制程序进行设置的特殊权限,可以让二进制程序的执行者临时拥有属主的权限(仅对拥有执行权限的二进制程序有效) chmod u+s 文件 ...

最新文章

  1. 从定制软件到通用软件的转变
  2. Realm发布Realm .NET,扩展支持.NET技术栈
  3. STOP:c0000218 {Registry File Failure}
  4. VTK:可视化之ColorSeriesPatches
  5. strlwr,strupr函数
  6. 还有 2 天,这场大咖云集的启智开发者大会即将启动!
  7. 评微软裁员测试:自动化测试并不能代替人工
  8. linux安装audit软件,linux audit工具
  9. 一文读懂python中数据纬度是怎么数的。
  10. android直到开机动画播放完,Android手机开机动画的修改
  11. 14个开源Ajax框架
  12. MacBook M1苹果电脑安装 SVN 以及 简单使用SVN
  13. 英特尔移动处理器全面解析
  14. 万万没想到,低功耗也会烧毁元器件?
  15. 复杂美吴思进出席浙江公共政策研究院“数字赋能与浙江智造”沙龙
  16. 计算机无法安装操作系统的原因,关于电脑无法安装IE浏览器的原因有哪些
  17. DNS域名解析服务正向解析和反向解析
  18. 【全网最全面】SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)...
  19. STM32学习笔记(五 定时器及应用 1 定时器基本原理 )
  20. 4. 频域处理(上)

热门文章

  1. RRC协议学习—系统信息(SI)
  2. 幼儿园保育员好吗 就业前景如何
  3. java 读取excel列_Java读取Excel指定列的数据详细教程和注意事项
  4. 解决win10下 git闪退的问题(或者使用git命令报错fatal: open /dev/null or dup failed)
  5. 区块链是什么通俗解释?
  6. 记录Hbuilder项目使用xcode离线打包上传苹果商店踩过的坑
  7. 生态对对碰|云和恩墨数据库云管平台 zCloud 最新支持 TiDB
  8. matlab半小提琴图,【画图专题】小提琴图vioplot
  9. 苹果审核状态为Metadata Rejected下的问题
  10. glTF格式模型导出方式