更改文件权限(二)
==============================

(参考于千锋教育教学笔记)

命令umask

[root@aminglinux ~]# umask

0022

[root@aminglinux ~]# touch 6.txt
[root@aminglinux ~]# mkdir dir6
[root@aminglinux ~]# ll 6.txt
-rw-r--r-- 1 root root 0 6月 24 22:54 6.txt
6 4 4
[root@aminglinux ~]# ll -d dir6
drwxr-xr-x 2 root root 6 6月 24 22:54 dir6
7 5 5

规则:
若用户建立普通文件,则预设没有可执行权限,只有r,w权限,最大值为666(-rw-rw-rw-);
若用户建立目录,则预设所有权限均开放,即777(drwxrwxrwx).
umask数值代表的含义为以上两条规则中的默认值(文件为666,目录为777)需要减掉的权限。
目录的权限为rwxrwxrwx(777)- ----w--w-(022) = rwxr-xr-x(755)
普通文件的权限为rw-rw-rw-(644) - ----w--w-(022) = rw-r--r--(644)

[root@aminglinux ~]# umask 002 //umask值设为002
[root@aminglinux ~]# touch 7.txt
[root@aminglinux ~]# ll 7.txt
-rw-rw-r-- 1 root root 0 6月 24 23:10 7.txt //文件权限变为664
[root@aminglinux ~]# mkdir dir8
[root@aminglinux ~]# ll -d dir8
drwxrwxr-x 2 root root 6 6月 24 23:10 dir8 //目录权限变为775

[root@aminglinux ~]# umask 022 //umask值设为正常值022
[root@aminglinux ~]# touch 8.txt
[root@aminglinux ~]# ll 8.txt
-rw-r--r-- 1 root root 0 6月 24 23:11 8.txt //文件权限就变为正常的644了

默认情况下,root的umask值为022,而一般普通用户的则为002。

修改文件的特殊属性

1,chattr (change attribute)change file attributes on a Linux file system(更改Linux文件系统上的文件属性)

选项:

a:增加该属性后,表示只能追加不能删除,非root用户不能设定该属性

i : 增加该属性后,表示文件不能删除,重命名,设定链接,写入以及新增数据。(不可改变的)

lsattr ( list attribute) list file attributes on a Linux second extended file system(列出Linux第二个扩展文件系统上的文件属性)

选项:

-a:连同隐藏文件一同列出

-R:连同子目录的数据一同列出。

示例:

[root@aminglinux ~]# touch file100 file200

[root@aminglinux ~]# lsattr file100 file200

---------------- file100

---------------- file200

[root@aminglinux ~]# chattr +a file100

[root@aminglinux ~]# chattr +i file200

[root@aminglinux ~]# lsattr file100 file200

-----a---------- file100

----i----------- file200

[root@aminglinux ~]# echo > 111 file100[

root@aminglinux ~]# cat file100

[root@aminglinux ~]# rm -rf file100

rm: 无法删除"file100": 不允许的操作

[root@aminglinux ~]# echo 222 >> file100

[root@aminglinux ~]# cat file100

222

[root@aminglinux ~]# echo 111 > file200

-bash: file200: 权限不够

[root@aminglinux ~]# echo 222 >> file200

-bash: file200: 权限不够

[root@aminglinux ~]# rm -rf file200

rm: 无法删除"file200": 不允许的操作

[root@aminglinux ~]# chattr -a file100

[root@aminglinux ~]# chattr -i file2002

,set uid、set gid、sticky bit

set uid: 该权限针对二进制可执行文件,使文件在执行阶段具有文件所有者的权限。passwd命令就具有该权限

set gid: 任何用户在此目录下创建文件都具有和该目录所属组相同的组。

sticky bit: 就算用户对目录具有写权限,也不能删除其他用户的文件。

suid: 4; sgid: 2; sticky: 1


设置特殊权限
a,字符
chmod u+s file →suid
chmod g+s dir →sgid
chmod o+t dir →sticky

b,数字
chmod 777 file -rwsrwxrwx
chmod 770 dir drwxrws---
chmod 770 dir drwxrws--t
chmod 777 dir drwsrwsrwt

示例:
[root@aminglinux ~]# ll /usr/bin/passwd
-rw777 /home/dir2
[root@aminglinux ~]# ll -d /home/dir2
drwxrwxrwt 2 root root 19 6月 25 01:44 /home/dir2
[alice@aminglinux home]$ touch dir2/1.txt
[alice@aminglinux home]$ ll dir2
总用量 0
-rw-rw-r-- 1 alice alice 0 6月 25 01:44 1.txt
[it@aminglinux home]$ rm -v dir2/1.txt
rm:是否删除有写保护的普通空文件 "dir2/1.txt"?y
rm: 无法删除"dir2/1.txt": 不允许的操作

Linux更改文件权限(二)的更多相关文章

  1. linux 更改文件权限命令 chmod

    chmod -change file mode bits :更改文件权限 chmod是用来改变文件或者目录权限的命令,但只有文件的属主和超级用户(root)才有这种权限. 更改文件权限的2种方式: 一 ...

  2. Linux更改文件权限(一)

    更改文件权限(一)============================== (参考于千锋教育教学笔记) 设置权限 1.更改文件的属主.属组chown (change owner)[root@ami ...

  3. Linux更改文件权限命令

    chmod命令 1.格式:chmod [-cfvR][--help][--version]mode file 2.参数 1)必要参数 -c 当发送改变时,报告处理信息 -f 错误信息不输出 -R 处理 ...

  4. linux更改文件权限

    chown –Rh cheat:cheat /home/cheat/task/Cheat

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

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

  6. ubuntu批量更改文件权限

    重装系统之后,把文件从windows分区拷到linux分区发现所有文件的权限全是777,在终端下看到所有文件的颜色都很刺眼,文件有很多,一个一个改不现实,所以写了一段python脚本批量更改文件权限. ...

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

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

  8. linux初学者-文件权限

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

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

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

随机推荐

  1. Murano Weekly Meeting 2015.07.14

    会议时间: 2015.07.14 主持人: Kirill Zaitsev, core from Mirantis 会议摘要:  1.periodic nightly builds,然后通过mailin ...

  2. js固定两位小数toFixed(2)

    total=total.toFixed(3); 小数问题:可以number(),或者*1来改变变量类型.

  3. vs2017通过模块文件添加自定义注释

    有时我们在VS里建立类和接口时,需要添加比较规范的注释信息,而每次都要复制粘贴比较麻烦,所以需要我们的IDE做一些支持,比较修改VS里自定义的注释模式,以添加自己公司需要的信息格式. 注释比较规范,是 ...

  4. RabbitMQ使用教程(四)如何通过持久化保证消息99.99%不丢失?

    1. 前情回顾 RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例 RabbitMQ使用教程(二)RabbitMQ用户管理,角色管理及权限设置 RabbitMQ使用 ...

  5. Oracle快速插入数据append

    1:用merge into 进行匹配更新和插入,2: 开启并行,提高速度3: 如果可以的话加NOLOGING 不写入日志4:如果数据有规律的话,分批次执行 1.使用marge快速插入; MERGE / ...

  6. Maven的学习资料收集--(六) 构建Hibernate项目

    前面我们使用Maven构建了Struts2项目,这里我们来试一下Hibernate项目: 这里的例子,大体框架应该是正确的,但是,对于Maven的很多约定都没有掌握,估计包的命名都不是非常好,等以后, ...

  7. SpringMVC05 return (Json)

    这里要主要的是js文件要引入,文中不做解释 1.导入包 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs ...

  8. 前端WEB编辑器-------webstrom

    欲先善其事,必先利其器,如题.看到网上一篇介绍webstrom的文章,觉得功能确实强大,也知道为什么阿里巴巴的前端传到github上的文件为啥都有一个 .idea 文件,(传说淘宝内部推荐写js用we ...

  9. jQuery中$(function(){})与(function($){})(jQuery)、$(document).ready(function(){})等的区别讲解

    1.(function($){...})(jQuery); (1).原理:       这实际上是匿名函数,如下: function(arg){...} 这就定义了一个匿名函数,参数为arg:而调用函 ...

  10. Winform 读取 指定\另一个\其他\任意 配置文件

    ExeConfigurationFileMap map = new ExeConfigurationFileMap();            map.ExeConfigFilename = @&qu ...