zoukankan      html  css  js  c++  java
  • Liunx学习笔记(三) 文件权限

    一、文件权限

    1、查看文件权限

    (1)文件权限

    在 Linux 中对于文件有四种访问权限,列举如下:

    • 可读取:r,Readable
    • 可写入:w,Writable
    • 可执行:x,Execute
    • 无权限:-

    另外,在 Linux 中对于权限的设置有三组对象,列举如下:

    • 所有者:u,User
    • 所属组:g,Group
    • 其他用户:o,Other

    (2)查看文件权限

    我们可以使用 ls -l 文件名 命令查看一个文件的权限,其中每一行显示内容的第一个字段就是对文件权限的描述

    例如:

    user@ubuntu:~$ ls -l
    total 8
    drwxrwxr-x 2 user user 4096 Sep 12 16:05 test
    -rw-rw-r-- 1 user user   12 Sep 12 16:00 test.txt
    

    其中,test.txt 文件的权限表示为 -rw-rw-r--

    第 1 个字符 - 表示 文件类型 为普通文件

    第 2~4 个字符 rw- 表示 所有者权限 为可读取,可写入,不可执行

    第 5~7 个字符 rw- 表示 所属组权限 为可读取,可写入,不可执行

    最后,第 8~10 个字符 r-- 表示 其它用户权限 为可读取,不可写入,不可执行

    再补充一下其它文件类型的符号表示:

    • -:普通文件

    • b:块设备文件,块设备简单来说就是存储数据的接口设备,例如硬盘

    • c:字符设备文件,字符设备简单来说就是串行端口设备,例如键盘、鼠标

    • d:目录

    • l:链接文件,原文件的软链接,相当于 Windows 下的快捷方式

    • p:管道文件,常用于进程通信

    • s:套接字文件,常用于网络通信

    2、修改文件权限

    (1)权限表示方法

    ① 数字表示法

    将所有者、所属组和其他用户的访问权限分别转化为八进制数字,再根据八进制数字转化为十进制数字

    有相应的权限数字表示为 1,反之为 0,例如:rwxrwxr-x -> (111)(111)(101) -> (7)(7)(5) -> 775

    ② 文字表示法

    所有者使用 u 表示、所属组使用 g 表示、其他用户使用 o 表示;

    读取权限使用 r 表示、写入权限使用 w 表示、执行权限使用 x 表示

    (2)修改文件权限

    在 Linux 中修改文件权限可以使用 chmod 命令,具体使用方法如下:

    ① 对于数字表示法

    语法格式:

    chmod 数字表示法 文件名
    

    例如:chmod 664 file.txt

    ② 对于文字表示法

    语法格式:

    chmod 文字表示法的权限修改 文件名
    

    例如:

    增加所有者的执行权限:chmod u+x file.txt

    减少所属组的写入权限:chmod g-w file.txt

    重新指定其他用户的访问权限:chmod o=rw file.txt

    (3)目录权限

    修改目录权限所使用的命令以及语法和上面是完全一致的,不同之处在于符号含义的差异

    r:可以使用 ls 命令列出目录中的内容

    w:可以在目录中新建、删除、修改文件

    x:可以只用 cd 命令切换到目录

    -:无任何权限

    注意:若修改目录权限时发现该目录含有子目录并需要一同修改的,则需要使用 -R 参数

    3、权限掩码

    权限掩码由 4 个八进制数字组成,用来指定新建文件或目录的默认权限

    权限掩码和默认权限之间的关系如下:默认权限 - 权限掩码 = 新建文件或目录的默认权限

    在 Linux 下,文件的默认权限为 666,目录的默认权限为 777,而默认的权限掩码为 002

    所以,新建文件的默认权限为 666 - 002 = 664,新建目录的默认权限为 777 - 002 = 775

    我们可以使用 umask 命令检查和修改默认的权限掩码

    【Linux学习笔记相关文章】

    版权声明:本博客属于个人维护博客,未经博主允许不得转载其中文章。
  • 相关阅读:
    LeetCode 275. H-Index II
    LeetCode 274. H-Index
    LeetCode Gray Code
    LeetCode 260. Single Number III
    LeetCode Word Pattern
    LeetCode Nim Game
    LeetCode 128. Longest Consecutive Sequence
    LeetCode 208. Implement Trie (Prefix Tree)
    LeetCode 130. Surrounded Regions
    LeetCode 200. Number of Islands
  • 原文地址:https://www.cnblogs.com/wsmrzx/p/9665391.html
Copyright © 2011-2022 走看看