zoukankan      html  css  js  c++  java
  • Linux:基本权限

    权限介绍

    image-20200919170303599

    ls命令的结果显示,第一列就是文件的权限。如果不算最后的".",有十位。权限的含义如下图所示:

    image-20200919170407815

    第一位:文件类型常见有以下几种,摘自Centos6.8的info ls命令中

    
        `-' regular file 普通文件
        `b' block special file 块设备文件,存储文件都是这种文件
        `c'  character special file 字符设备文件,输入设备一般是这种
        `d' directory 目录文件
        `l' symbolic link 软链接文件
        `p' FIFO (named pipe) 管道符文件
        `s'  socket 套接字文件
    

    第二~四位(第五~七位,第八~十位):rwx。表示读,写,执行三个权限。read,write,excute。

    第十一位的"."表示该文件是否受SELinux安全保护。

    GNU `ls' uses a `.' character to indicate a file with an SELinux security context, but no other alternate access method.  (摘自info ls)
    

    基本权限命令

    chmod:修改文件的权限模式。

    chmod [选项] 权限模式 文件名
    选项: -R 递归设置权限
    

    权限模式格式:[ugoa][[+-=][perms]]

    • ugoa:user,group,other,all
    • +-=:加入权限,减去权限,设置权限
    • perms:包含rwx,表示读,写,执行三个权限。

    例如:给a文件的所有者和其他人赋予写权限。

    chmod g+w,o+w a
    

    数字权限:数字权限的赋予方式比较简单

    • r:4
    • w:2
    • x:1

    例如:给a文件赋予755权限,表示自己拥有rwx权限,所属组和其他人拥有rx权限

    chmod 755 a
    

    常见数字权限:

    • 644:所有者拥有读、写权限,所属组、其他人拥有只读权限。
    • 755:所有者拥有所有的权限,所属组、其他人拥有读、执行权限。
    • 777:最大权限,慎用!

    chown和chgrp

    chown 修改文件和目录的所有者和用户组

    chown [选项] 所有者:所属组 文件或目录
    选项: -R 递归设置权限
    

    普通用户不能修改文件的所有者,哪怕自己是文件的所有者也不行,超级用户才可以。

    普通用户可以修改所有者是自己文件的权限。

    chgrp修改文件和目录的所属组的命令

    权限需要注意的

    对文件有写权限,是不能删除文件本身的,只能修改文件中的数据,如果像删除文件,则需要对文件的上级目录拥有写权限。

    目录的执行(x)权限代表可以进入该目录。

    对文件来说,执行(x)权限是最高权限。

    对目录来说,写(w)权限是最高权限。

    umask默认权限

    系统通过umask来保证新建文件和目录拥有默认权限。

    查看系统的umask权限:

    [root@192 opt]# umask
    0022 #用八进制数值显示umask权限
    [root@192 opt]# umask -S
    u=rwx,g=rx,o=rx #用字母表示文件和目录的初始权限
    

    umask权限的计算方法:

    • 对文件来说,新建文件的默认最大权限是666,没有执行(x)权限
    • 对目录来说,新建目录的默认最大权限是777
    • 文件的默认权限最大只能是666,umask的值是022,"-rw-rw-rw-"减去"-----w--w-"等于"-rwxr--r--"
    • 目录的默认权限最大可以是777,umask的值是022,"drwxrwxrwx"减去"-d---w--w-"等于"drwxr-xr-x"

    永久修改umask权限:在/etc/profile文件修改,建议不要修改。

    image-20200919203036410

  • 相关阅读:
    ajax(ajax开发)
    gnuplot常用技巧
    Gunplot 命令大全
    程序员的绘图利器 — Gnuplot
    什么是 gnuplot
    QT正则表达式---针对IP地址
    JSP实现分页功能
    java.lang.OutOfMemoryError: Java heap space错误及处理办法
    getInitParameter()
    C/S软件的自动升级部署
  • 原文地址:https://www.cnblogs.com/wwjj4811/p/13697496.html
Copyright © 2011-2022 走看看