2.14 文件和目录权限chmod 
2.15 更改所有者和所属组chown
2.16 umask
2.17 隐藏权限lsattr/chattr

文件和目录权限chmod

文件权限:

r     4       可读

w    2      可写

x     1      可执行

r--         4

rw-       6

rwx      7

passwd的权限是644

[root@centos_1 ~]# ls -l /etc/passwd

-rw-r--r--. 1 root root 889 11月 16 22:53 /etc/passwd

9位权限分三段:

rw- 所有者的权限

r--   所属主的权限

r--  其它用户的权限

更改权限:

chmod  (change mode)

chmod  700  文件名称

[root@centos_1 ~]# chmod 700 1.txt

[root@centos_1 ~]# ls -l 1.txt

-rwx------. 1 root root 0 11月 17 09:10 1.txt

权限中的点"." 表示该文件受制于selinux

selinux限制用户的行为,如果做认证,selinux开启就不会让你登录。

如果selinux开启了,创建文件或者目录的权限后面会有一个点"."

查看selinux是否开启:getenforce

临时关闭selinux   enforce 0

永久关闭selinux:修改配置文件

vi /etc/selinux/config

SELINUX=disabled

这样关闭selinux后创建文件或者目录权限最后就没有点"."

[root@centos_1 ~]# touch xiao.txt

[root@centos_1 ~]# ls -l xiao.txt

-rw-r--r-- 1 root root 0 11月 20 20:25 xiao.txt

chmod -R 批量更改目录下的文件权限:

chmod  -R   770 xiaobo

设置权限的写法:

chmod  u=rwx,g=r,o=r   xiaobo

给所有者所属主其它用户的权限加上x权限:

chmod  a+x xiaobo (a表示all所有)

chmod  a-x  xiaobo 都去掉x权限

也可以单独添加或者减去权限:

chmod  u-x  xiaobo

chmod  u+x xiaobo

chmod  g+x xiaobo

chmod  g-x xiaobo

chmod  o+x xiaobo

chmod  o-x xiaobo

[root@centos_1 ~]# chmod u+x,g+x 1.tx

[root@centos_1 ~]# ls -l 1.tx

-rwxr-xr--. 1 root root 0 11月 17 09:18 1.tx

更改所有者和所属组chown

chown  (change owner) 更改文件所有者

[root@centos_1 ~]# chown xiaobo anaconda-ks.cfg.1

[root@centos_1 ~]# ls -l anaconda-ks.cfg.1

-rw-------. 1 xiaobo root 3360 11月 17 08:43 anaconda-ks.cfg.1

更改所属组: chgrp (change group)

chgrp xiaobo

[root@centos_1 ~]# chgrp xiaobo 1.tx

[root@centos_1 ~]# ls -l 1.tx

-rwxr-xr--. 1 root xiaobo 0 11月 17 09:18 1.tx

一次性更改所有者和所属主:

chown  xiaoming:xiaobo  1.txt

[root@centos_1 ~]# chown xiaoming:xiaobo 11.t

[root@centos_1 ~]# ls -l 11.t

-rw-r--r--. 1 xiaoming xiaobo 0 11月 17 09:19 11.t

只单独改所属主:

chown    :xiaobo  12.txt

[root@centos_1 ~]# chown :xiaobo 12.txt

[root@centos_1 ~]# ls -l 12.txt

-rw-r--r-- 1 root xiaobo 0 11月 20 20:53 12.txt

chown root:  2.txt 一次更改所有者和所属主:

[root@centos_1 ~]# chown root: 2.txt

[root@centos_1 ~]# ls -l 2.txt

-rw-r--r--. 1 root root 0 11月 17 09:17 2.txt

连续批量更改所有者和所属主

chown -R   xiaoming:xiaobo /tmp/

[root@centos_1 /]# chown -R xiaoming:xiaobo /tmp/*

[root@centos_1 /]# ls -l /tmp/

drwx------. 3 xiaoming xiaobo     97 11月 17 05:38 xiaobo

drwx------. 3 xiaoming xiaobo     86 11月 17 05:32 xiaobo1

drwxr-xr-x. 2 xiaoming xiaobo     19 11月 17 05:45 xiaobo2

umask

目录 777 -umask = 目录权限

文件666 -umask = 文件权限

umask  决定默认文件和目录的权限

用9位的权限位来减 umask 就是文件权限

系统umask的值是0022

[root@centos_1 ~]# umask

0022

通过这个值可以确定目录和文件的权限:

目录 777 (rwxrwxrwx)- 022(----w--w-) =755(rwxr-xr-x)

文件 666(rw-rw-rw)- 022(----w--w-)= 644(rw-r-r--)

更改权限 umask  002(权限值)

更改之后创建的文件权限就会改变。

隐藏权限lsattr/chattr

chattr  (change file attributes) 更改文件隐藏权限

chattr - change file attributes

[root@centos_1 ~]# chattr +i 1.txt

会隐藏文件的权限: 查看隐藏权限lsattr 1.txt

[root@centos_1 ~]# lsattr 1.txt

----i----------- 1.txt

看到的权限是:

[root@centos_1 ~]# ls -l 1.txt

-rw-r--r-- 1 root root 0 11月 20 21:50 1.txt

实际上只有一个i权限

加了i权限后文件不能 touch更改文件时间,不能写,不能移动,不能删除,不能追加内容

chattr 1.txt

[root@centos_1 ~]# mv 1.txt /

mv: 无法将"1.txt" 移动至"/1.txt": 不允许的操作

[root@centos_1 ~]# touch 1.txt

touch: 无法创建"1.txt": 权限不够

[root@centos_1 ~]# rm -f 1.txt

rm: 无法删除"1.txt": 不允许的操作

去掉i权限:

chattr -i  1.txt

[root@centos_1 ~]# chattr -i 1.txt

chattr +a 1.txt

文件可以追加,可以touch更改文件时间信息,不能移动 删除 重命名;

去掉权限

chattr -a 1.txt

文件恢复权限

给目录设置隐藏权限: chattr + i 11/

给目录设置i权限跟设置文件权限是一样的.

[root@centos_1 ~]# chattr +i 11/

查看隐藏权限 lsattr -d 11/

[root@centos_1 ~]# lsattr -d 11/

----i----------- 11/

给目录加入i 权限,但是可以往改目录下的文件写入内容:

先在目录下创建文件,之后给目录设置i权限,可以往目录下的文件写入内容

chattr +i 11/

head -n2 /etc/passwd  > 11/1.txt

[root@centos_1 ~]# touch 11/1.txt

[root@centos_1 ~]# chattr +i 11/

[root@centos_1 ~]# head -n2 /etc/passwd > 11/1.txt

lsattr -R  显示所有文件(包括子目录下的文件)

[root@centos_1 ~]# lsattr -R

---------------- ./anaconda-ks.cfg.1

----i----------- ./11

./11:

---------------- ./11/1.txt

lsattr -a 查看隐藏的

lsattr  -d  只查看目录

/文件和目录权限chmod /更改所有者和所属组chown/umask/隐藏权限lsattr/chattr的更多相关文章

  1. 文件和目录权限chmod、更改所有者和所属组chown、umask、隐藏权限lsattr/chattr 使用介绍

    第2周第3次课(3月28日) 课程内容:2.14 文件和目录权限chmod2.15 更改所有者和所属组chown2.16 umask2.17 隐藏权限lsattr/chattr 2.14 文件和目录权 ...

  2. Linux CentOS7 VMware 文件和目录权限chmod、更改所有者和所属组chown、umask、隐藏权限lsattr/chattr

    一.文件和目录权限chmod u User,即文件或目录的拥有者:g Group,即文件或目录的所属群组:o Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围:a All,即全部 ...

  3. linux修改文件的权限和修改文件所有者和所属组

    文件设定法:chmod    [who]   [+][-][=]   [mode] who 文件所有者:u 文件所属组:g 其他:o 所有人:a +  添加权限 -  减少权限 =  覆盖原来权限 权 ...

  4. Linux知识积累 (9) 创建用户、分配权限和更改所有者

    一.useradd和adduser 1.useradd命令: 用于Linux中创建的新的系统用户. useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码. 而可用userde ...

  5. chattr 改变文件、目录属性 (chmod、passwd等涉及文件修改的命令提示Operation not permitted)

    与chmod这个命令相比,chmod只是改变文件的读写.执行权限,更底层的属性控制是由chattr来改变的. lsattr查看文件或目录属性 chattr命令的用法:chattr [ -RVf ] [ ...

  6. linux 文件属性、权限、所有人、所属组

    Linux命令行模式下,文件还是需要通过ls -l来查看 可以通过ll查看长文件,会有如下类型显示drwxr-xr-x  2 root root 4096 Nov 10  2010 conf 总共有7 ...

  7. chown、chgrp 改变所有者、所属组

    chown [option] [所有者][:[所属组]] file... chown指定文件的拥有者或者所属组,可以通过用户名或者用户id.组名.组id来修改,同时可以修改多个文件,文件以空格分割,支 ...

  8. 执行shell文件是,提示chmod: 更改'./shell1.sh' 的权限: 不允许的操作。

  9. 文件和目录之chmod和fchmod函数

    本篇博文内容摘自<UNIX环境高级编程>(第二版),仅作个人学习记录所用.关于本书可参考:http://www.apuebook.com/. 这两个函数使我们可以更改现有文件的访问权限: ...

随机推荐

  1. java 多线程 26 : 线程池

    使用线程池与不使用线程池的差别 先来看一下使用线程池与不适应线程池的差别,第一段代码是使用线程池的: public static void main(String[] args) { long sta ...

  2. layer关闭弹出层,弹出打印

    常规的话,下面能够完成关闭弹出层 var index = parent.layer.getFrameIndex(window.name); //延迟关闭 解决打印窗口弹不出来的情况 parent.la ...

  3. [转]java 下载网络上的图片并保存到本地目录

    原文地址:http://takeme.iteye.com/blog/1683380 import java.io.File; import java.io.FileOutputStream; impo ...

  4. 编辑距离算法(Levenshtein)

    编辑距离定义: 编辑距离,又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数. 许可的编辑操作包括:将一个字符替换成另一个字符,插入一个字符,删除一个字符. 例如 ...

  5. Java输出字符串格式问题 .UnknownFormatConversionException

    今天遇到一个问题,使用JSoup挖掘出的数据一直出错 Exception in thread "main" java.util.UnknownFormatConversionExc ...

  6. mac使用nvm安装node进行多版本管理

    安装 $ git clone https://github.com/creationix/nvm.git ~/.nvm $ source ~/.nvm/nvm.sh vi ~/.bash_profil ...

  7. SpringBoot2 全局异常处理

    参考这篇文章里面的几种异常形式: 全局异常处理是个比较重要的功能,一般在项目里都会用到. 大概把一次请求分成三个阶段,来分别进行全局的异常处理. 一:在进入Controller之前,譬如请求一个不存在 ...

  8. 在PHP中使用协程实现多任务调度

    PHP5.5一个比较好的新功能是加入了对迭代生成器和协程的支持.对于生成器,PHP的文档和各种其他的博客文章已经有了非常详细的讲解.协程相对受到的关注就少了,因为协程虽然有很强大的功能但相对比较复杂, ...

  9. DataWindow.Net组件示例(全部开源)

    1概述 1.1功能简介 Sybase公司的PowerBuilder开发工具,在以前VS工具没有成事以前,是相当风光的.微软都要与其合作,学习它Db方面的技术,才成就了SQLServer数据库.PB开发 ...

  10. Python 文件操作三

    文件重命名os模块中的rename()可以完成对文件的重命名操作rename(需要修改的文件名, 新的文件名) import os os.rename("11.txt", &quo ...