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-数据库之删除记录

    相关资料:<21天学通Java Web开发> 删除记录 Statementdelete.jsp <%@ page language="java" contentT ...

  2. Android 底部按钮BottomNavigationView + Fragment + viewPager 的使用(一)

    实现的效果,左右滑动,底部栏跟着滑动,中间加的是分帧的页面        上代码:主页面activity_main.xml <?xml version="1.0" encod ...

  3. [转]Oracle SQL函数pivot、unpivot转置函数实现行转列、列转行

    原文地址:http://blog.csdn.net/seandba/article/details/72730657 函数PIVOT.UNPIVOT转置函数实现行转列.列转行,效果如下图所示: 1.P ...

  4. Mac OS X下的移动光标和文字编辑快捷键

    移动光标快捷键 Control-F 光标前进一个字符,相当于右键(F = Forward) Control-B 光标后退一个字符,相当于左键(B = Backward) Control-P 上移一行, ...

  5. mysql5.5编译安装过程(自己总结)

    一,安装过程 //创建mysql安装目录,创建数据存放目录,创建用户和用户组与赋予数据存放目录权限 mkdir -p /usr/local/mysql/ mkdir -p /data/mysql/ g ...

  6. NSDateFormater格式化参数汇总

    NSDateFormatterhtml, body {overflow-x: initial !important;}html { font-size: 14px; } body { margin: ...

  7. Android——浅谈HTTP中Get与Post的区别(转)

    原文地址:http://network.51cto.com/art/201407/446434.htm Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DEL ...

  8. Mask R-CNN详解和安装

    Detectron是Facebook的物体检测平台,今天宣布开源,它基于Caffe2,用Python写成,这次开放的代码中就包含了Mask R-CNN的实现. 除此之外,Detectron还包含了IC ...

  9. table中超过长度的列,显示省略号

    <style type="text/css"> .table-ellipsis { table-layout: fixed; width: 100%; } .table ...

  10. docker启动报错

    1.报“can’t create unix socket /var/run/docker.sock: is a directory” 这是由于存在容器自动启动 --restart= always导致的 ...