zoukankan      html  css  js  c++  java
  • 文件和目录权限chmod 更改所有者和所属组chown umask 隐藏权限lsattr/chattr

    命令chown

    更改文件的所有者,格式:chown [-R] 账户名 文件名       chown [-R]  账户名:组名 文件名。   -R选项只适用于目录,作用是级联更改,不仅更改当前目录,目录里面的目录或者文件也劝不回更改

    [root@lizhipeng01 ~]# mkdir dir3
    [root@lizhipeng01 ~]# useradd user1
    [root@lizhipeng01 ~]# touch dir3/test3
    [root@lizhipeng01 ~]# chown user1 dir3
    [root@lizhipeng01 ~]# ls -ld dir3
    drwxr-xr-x. 2 user1 root 18 12月 19 04:42 dir3
    [root@lizhipeng01 ~]# ls -l dir3
    总用量 0
    -rw-r--r--. 1 root root 0 12月 19 04:42 test3
    [root@lizhipeng01 ~]# chown -R user1:testgroup dir3
    chown: 无效的组: "user1:testgroup"
    [root@lizhipeng01 ~]# groupadd testgroup
    [root@lizhipeng01 ~]# chown -R user1:testgroup dir3
    [root@lizhipeng01 ~]# ls -l test
    ls: 无法访问test: 没有那个文件或目录
    [root@lizhipeng01 ~]# ls -l test3
    ls: 无法访问test3: 没有那个文件或目录
    [root@lizhipeng01 ~]# ls -l dir3
    总用量 0
    -rw-r--r--. 1 user1 testgroup 0 12月 19 04:42 test3

    命令chmod

    用于改变用户对文件/目录的读写执行权限,格式:chmod [-R] xyz 文件名(xyz表示数字),R表示级联

    [root@lizhipeng01 ~]# ls -ld dir3                                     查看目录dir3权限
    drwxr-xr-x. 2 user1 testgroup 18 12月 19 04:42 dir3
    [root@lizhipeng01 ~]# ls -l dir3                                       查看目录dir3下文件的权限
    总用量 0
    -rw-r--r--. 1 user1 testgroup 0 12月 19 04:42 test3
    [root@lizhipeng01 ~]# chmod 750 dir3
    [root@lizhipeng01 ~]# ls -ld dir3
    drwxr-x---. 2 user1 testgroup 18 12月 19 04:42 dir3
    [root@lizhipeng01 ~]# ls -l dir3/test3
    -rw-r--r--. 1 user1 testgroup 0 12月 19 04:42 dir3/test3
    [root@lizhipeng01 ~]# chmod 700 dir3/test3
    [root@lizhipeng01 ~]# ls -l dir3/test3
    -rwx------. 1 user1 testgroup 0 12月 19 04:42 dir3/test3
    [root@lizhipeng01 ~]# chmod -R 700 dir3                            级联更改
    [root@lizhipeng01 ~]# ls -ld dir3                                           目录权限改成700
    drwx------. 2 user1 testgroup 18 12月 19 04:42 dir3
    [root@lizhipeng01 ~]# ls -l dir3              目录下的文件权限700
    总用量 0
    -rwx------. 1 user1 testgroup 0 12月 19 04:42 test3

    [root@lizhipeng01 ~]# chmod u=rwx,og=rx dir3/test3  
    [root@lizhipeng01 ~]# ls -l dir3
    总用量 0
    -rwxr-xr-x. 1 user1 testgroup 0 12月 19 04:42 test3
    [root@lizhipeng01 ~]# chmod u-x dir3/test3
    [root@lizhipeng01 ~]# ls -l dir3
    总用量 0
    -rw-r-xr-x. 1 user1 testgroup 0 12月 19 04:42 test3
    [root@lizhipeng01 ~]# chmod a-x dir3/test3
    [root@lizhipeng01 ~]# ls -l dir3/test3
    -rw-r--r--. 1 user1 testgroup 0 12月 19 04:42 dir3/test3
    [root@lizhipeng01 ~]# chmod u+x dir3/test3
    [root@lizhipeng01 ~]# ls -l dir3
    总用量 0
    -rwxr--r--. 1 user1 testgroup 0 12月 19 04:42 test3

    命令umask

    默认情况下,目录的权限值755,普通文件的权限值644

    [root@lizhipeng01 ~]# umask
    0022

    umask数值代表的含义是文件(666)或目录(777)需要减去的权限

    umask的值是可以自定义的,如

    [root@lizhipeng01 ~]# umask=002
    [root@lizhipeng01 ~]# mkdir dir4
    [root@lizhipeng01 ~]# ls -ld dir4
    drwxr-xr-x. 2 root root 6 12月 19 05:51 dir4
    [root@lizhipeng01 ~]# touch test4

    [root@lizhipeng01 ~]# ls -l test4
    -rw-r--r--. 1 root root 0 12月 19 05:52 test4

    可以看到目录的默认权限为755,文件的默认权限664。umask可以在/etc/bashrc/里面更改,默认情况下,root的umask为022,而一般使用者002。

    修改文件的特殊属性

    命令chattr,格式:chattr [+-=] [Asaci] [文件或者目录名]

    A:增加该属性后,表示文件或目录的atime将不可修改。

    s:增加该属性后,会将数据同步写入磁盘中。

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

    c:增加该属性后,表示自动压缩该文件,读取时会自动解压。

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

    [root@lizhipeng01 ~]# chattr +i dir2
    [root@lizhipeng01 ~]# touch dir2/test5
    touch: 无法创建"dir2/test5": 权限不够
    [root@lizhipeng01 ~]# chattr -i dir2
    [root@lizhipeng01 ~]# touch dir2/test5
    [root@lizhipeng01 ~]# chattr +i dir2
    [root@lizhipeng01 ~]# rm -f dir2/test5
    rm: 无法删除"dir2/test5": 权限不够

    [root@lizhipeng01 ~]# chattr -i dir2
    [root@lizhipeng01 ~]# touch dir2/test6
    [root@lizhipeng01 ~]# ls dir2
    test5 test6
    [root@lizhipeng01 ~]# chattr +a dir2
    [root@lizhipeng01 ~]# rm -f dir2/test6
    rm: 无法删除"dir2/test6": 不允许的操作
    [root@lizhipeng01 ~]# touch dir2/test7
    [root@lizhipeng01 ~]# ls dir2
    test5 test6 test7
    dir2目录增加a权限后,只可以在里面创建文件,而不能删除文件。文件亦是如此。

    [root@lizhipeng01 ~]# chattr +a dir2/test7
    [root@lizhipeng01 ~]# echo '11111'>dir2/test7
    -bash: dir2/test7: 不允许的操作
    [root@lizhipeng01 ~]# echo '11111' >> dir2/test7
    [root@lizhipeng01 ~]# cat dir2/test7
    11111
    [root@lizhipeng01 ~]# chattr +i dir2/test6
    [root@lizhipeng01 ~]# echo '11111'>> dir2/test6
    -bash: dir2/test6: 权限不够
    [root@lizhipeng01 ~]# echo '11111' > dir2/test6
    -bash: dir2/test6: 权限不够
    [root@lizhipeng01 ~]# rm -f dir2/test6
    rm: 无法删除"dir2/test6": 不允许的操作

    命令lsattr,该命令用于读取文件或者目录的特殊权限,格式:lsattr [-aR] [文件/目录名]

    -a:类似于ls的-a选项,即连同隐藏文件一同列出。

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

    [root@lizhipeng01 ~]# lsattr dir2
    ---------------- dir2/test5
    ----i----------- dir2/test6
    -----a---------- dir2/test7
    [root@lizhipeng01 ~]# lsattr -aR dir2
    -----a---------- dir2/.
    ---------------- dir2/..
    ---------------- dir2/test5
    ----i----------- dir2/test6
    -----a---------- dir2/test7

  • 相关阅读:
    Nodejs学习笔记(4) 文件操作 fs 及 express 上传
    Nodejs学习笔记(3) 创建服务器:Web 模块(http)与 express 框架
    Nodejs学习笔记(2) 阻塞/非阻塞实例 与 Nodejs事件
    VS code自定义用户代码片段snippet
    Nodejs学习笔记(1) Nodejs安装+借助express模块简单部署服务器
    jQuery学习笔记(1) 初识jQuery
    jQuery学习笔记(2) jQuery选择器
    第八章 Python之常用模块
    selenium元素和浏览器操作
    selenium元素定位
  • 原文地址:https://www.cnblogs.com/sisul/p/8060153.html
Copyright © 2011-2022 走看看