• linux文件属性介绍


    Linux系统有如表所示的几种文件类型。

    使用ls -lih 命令就可以看到各个文件的具体信息,下面选取以上所提到的这几种文件,列出他们的信息。

    除了设备文件(包括字符设备文件和块设备文件二种)外,每一个文件的信息可分为8个部分:

    他们的意义如下:

    第一部分:

        表示文件的索引节点inode。索引节点里存放一个文件的上述信息,比如文件大小、属主、归属的用户组、读写权限等,并指出文件的实际存放位置。

    字段2:

        文件种类和权限。

        其中 -表示普通文件,d表示目录,c表示字符设备,b表示块设备,p表示FIFO(即管道),l表示软连接(也称符号链接),s表示套接字(socket)。

        没有专门的符号来表示硬连接类型,硬连接也是普通文件,只不过文件的实际内容只有一个副本,连接文件和被连接文件都指向它,如上面的ln_hard文件是使用

    ln readme.txt   In_hard 命令创建出来的到redame.txt文件的硬连接,readme.txt和In_hard地位完全一样。他们都指向文件系统中的同一个位置,他们的硬连接个数都为2,表示 这个文件的实际内容被引用二次,可以看到这二个文件的inode都是一样的。

        硬连接文件引入的另一个作用是使得可以用别名来引用一个文件,避免文件被误删除(只有当硬链接个数为1时,对一个文件执行删除操作才会真正删除文件的副本),它的缺点是不能创建到目录的连接,被连接文件和连接文件必须在同一个文件系统中。对此引入软连接,也称符号连接。

        软连接只是简单地指向一个文件或者目录,并不增加它的硬连接个数,比如上面的ln_soft文件就是使用ln -s readme.txt ln_soft 创建出来的到readme.txt文件的软连接,它使用另一个inode。

    第三部分:硬连接个数。

    第四部分:文件拥有者。

    第五部分:所属群组。

    第六部分:文件或目录的大小。

    第七部分:表示最后访问或修改时间。

    第八部分:表示文件名或目录名。

    对于设备文件,第六部分表示主设备号(用来表示这是哪类设备),第七部分表示次设备号(用来表示这是这类设备中的第几个)。

  • 相关阅读:
    《金字塔原理》听书笔记
    凡事有交代
    关于马云不用淘宝不用支付宝的想法
    jenkins如何在一台机器上开启多个slave
    jenkins结合docker
    flask-assets使用介绍
    touch: cannot touch ‘/var/jenkins_home/copy_reference_file.log’: Permission denied Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
    JS中event.preventDefault()取消默认事件能否还原?
    flask前端优化:css/js/html压缩
    What's New In DevTools (Chrome 59)来看看最新Chrome 59的开发者工具又有哪些新功能
  • 原文地址:https://www.cnblogs.com/zhangshuaifeng/p/10017818.html
Copyright © 2020-2023  润新知