• Linux命令(四)——文件权限管理


    文件权限是指对文件的访问控制,即哪些用户或群组可以访问文件以及执行什么样的操作。

    一、文件的权限

    1.Linux文件类型

    (1)普通文件:文本文件+数据文件+可执行的二进制文件。

    (2)目录文件:即文件夹,第一项以.”作为它的文件名,第二项“..”表示该目录的父目录。

    (3)设备文件:字符设备+块设备,在/dev目录下。

    (4)链接文件:linux中为一个文件起多个名字的功能,称为链接。

    上图中,ls-l输出信息的每一行的第一个字符代表文件类型。其中“-”表示普通文件,“d”表示目录文件,“c”表示字符设备文件,“b”表示块设备文件,“l”表示软链接(符号链接)文件。

    2.文件的访问权限

    1)访问权限规定三种不同的用户

    文件属主(owner):文件的所有者,称为属主。

    同组用户(group):文件所属群组的同组用户。

    其他用户(others):可以访问文件的其他用户。

    2)访问权限的表示

    以上图第一行为例:

    文件类型后的九位字符分别表示:文件属主   同组用户    其他用户

                   r(读权限) w(写权限) x(可执行权限)

    数字4:表示文件的链接数

    第一个root:表示文件的属主

    第二个root:表示文件所属的群组

    4096数字:表示文件的大小

    Oct 2 15:48 :表示文件最后一次被修改的时间

    a/a.txt:表示文件名或目录名

    二、文件权限管理

    1.chown 更改文件的属主和属组chown  [属主] [属组] 文件列表

    2.chmod 修改文件访问权限chmod  模式  文件名

    字母形式修改权限:chmod  u+x,g-r,a=rw  a.txt

    u表示属主,g表示属组,o表示其他用户,a表示所以用户;+添加权限,-取消权限,=赋予给定权限并取消其他所有权限(如果有的话)。

    数字形式修改权限:chmod  三位八进制模式 文件名

    如:chmod  744  a.txt   //更改a.txt文件的权限为111 100 100

    3.三位特殊权限

    用户置位sSUID):进程继承命令拥有者的权限。

    组置位sSGID):目录的s权限使得在该目录下创建的任何文件及目录属于该目录所拥有的组。

    粘着置位tSticky):在程序完成后在内存中保存一份运行程序的备份;目录拥有T权限后,只有该目录的所有者及root才能删除该目录。

    占用执行权限位来表示,若执行权限开启添加特殊权限,则为小写字母,否则为大写字母。

     两种方法设置特殊权限:

    chmod u+s,g+s,o+t a.txt 字母形式设置特殊权限

    chmod 1744 a.txt 数字形式设置特殊权限,400020001000

    4.文件默认权限umask掩码

    设置umask掩码来指定文件的默认权限,即新创建的文件所拥有的权限。

    文件创建时的默认权限=0666-umask

    目录创建时的默认权限=0777-umask

    系统默认的掩码是0022,则文件默认权限为0644,目录默认权限为0755

     

    三、软链接和硬链接

    1.硬链接

    硬链接无法从最初的目录项中区分开,如上图中e.txt硬链接自a.txt文件,两者没有明显的区别,硬链接不能用于创建目录链接和在不同的文件系统中创建文件链接。

    语法:ln 原文件名 [链接名]

    如:ln  /home/wxy/a.txt  /home/mmx/f.txt   //建立硬链接

    原文件被删除,链接文件依然存在,不会被同步删除;若更改任何一个文件内容,则其链接文件被同步更改。

    2.软链接

    软链接又叫符号链接,是将一个文件的路径名链接到另一个文件。包含要链接到的文件的名字,如上图d.txt软链接自a.txt文件,并且在符号链接之前那个文件不一定存在,软链接可以跨越不同的文件系统,并且可以创建目录间的链接。

    语法:ln -s 原文件名 [链接名]

    如:ln  -s  /home/wxy/a.txt  /home/mmx/g.txt   //建立软链接

    若原文件被删除,软链接失效,类似于windows系统中的快捷方式,符号链接文件的大小是其链接文件的路径名中的字节数。

  • 相关阅读:
    如何去除ecshop标题和网站底部的Powered by ECShop
    ecshop标签
    安装Wamp后 Apache无法启动的解决方法
    wamp5中的apache不能启动,80端口被占用
    iOS UI-AlertView(警示框)和ActionSheet(选择框、操作表单)
    iOS UI-三种简单的动画设置
    iOS UI-IOS开发中Xcode的一些使用技巧
    iOS UI-九宫格
    iOS开发-开发文档安装
    iOS UI-创建空项目
  • 原文地址:https://www.cnblogs.com/wxywxy/p/7623402.html
Copyright © 2020-2023  润新知