Linux文件类型及颜色标识

文件类型(共7种):

– :普通文件

d:目录文件 (directory)

c:字符设备文件 (char)

b:块设备文件 (block)

s:本地域套接口 (socket)

p:有名管道 (pipeline)

l:符号连接 (link)

关于硬链接、软连接、复制之间的区别说明:

Linux文件类型及颜色标识

上图中,我为photo.png这个图片文件建立了一个拷贝(photo-copy.png),一个硬链接(photo-hlink),一个软连接(photo-slink),用ls -il命令显示出他们的文件信息,下面我就进行下对比说明:

先对比复制版和硬链接(图中第一行和第二行)

可以看出两者的区别只在我画黄框的地方,这个黄框中的内容是iNode,通过和原文件photo.png对比,可以看出,硬链接photo-link和原文件的iNode相同,而复制版photo-copy.png与原文件iNode不同。这里的区别导致的现象是当你修改原文件时,photo-copy.png的内容不会发生改变,而photo-hlink会与原文件同时变化,反过来也是一样,修改photo-hlink原文件也会发生变化,而photo-copy.png不会改变。也就是说,原文件和photo-hlink还是同一个文件,而photo-copy.png已经是另一个文件了。还有一点区别在于,拷贝可以跨文件系统,而硬链接只能在一个文件系统内。

再对比下硬链接和软连接(图中第二行和第四行)

软连接更像windows里的快捷方式,可以看到黄框中,软连接和原文件的iNode的也不同,再看绿框中的内容,这列代表文件类型,软连接的文件类型是一个link类型,而硬链接的类型还是普通文件类型,再看红框中的内容,这列表示文件大小,可以看到软连接的文件大小只有9字节,说明它并不是一个文件的拷贝版本,而只是一个引用而已。软连接和硬链接都能启动并编辑程序,区别在于删除部分,删除原文件后,硬链接仍然可用,但软连接已经失效了。

总结:

拷贝:和我们正常理解的拷贝没有区别,与原文件大小相同,iNode是一份独立的文件,可以跨文件系统,原文件修改或删除对其都没有影响。

硬链接:也是一种拷贝,与原文件大小相同,但iNode与原文件相同,不可以跨文件系统,原文件内容修改,硬链接跟随会有相同的修改,原文件删除,硬链接仍然可用。

软连接:是一种应用,类似与windows的快捷方式,文件类型为l,大小很小,iNode与原文件不相同,可以跨文件系统,当原文件删除时,软连接将失效。

终端中文件的颜色:

蓝色:目录绿色:可执行文件;红色:压缩文件;浅蓝色:链接文件;灰色:其他文件;红色闪烁:链接的文件有问题了黄色:设备文件。紫色:图片文件。

原创文章,作者:yangtian,如若转载,请注明出处:http://www.178linux.com/52278

(0)
yangtianyangtian
上一篇 2016-10-16
下一篇 2016-10-16

相关推荐

  • linux网络管理

    什么是计算机网络     计算机网络是指将不同地理位置上,具有独立功能的计算机和网络设备通过通信链路连接起来,通过操作系统,网络管理软件,和网络通信协议的共同组合下的计算机系统团体,实现资源共享,信息传递的网络。计算机网络的组成部分有各种微小大型计算机,网桥,交换机,路由器,传输介质等网络设备,相应的软件系统,相应的通…

    Linux干货 2016-09-05
  • 编译安装lamp框架

    一、 先说说啥叫lamp     1. lamp简介: Linux Apache Mysql PHP(Python, Perl)的简称,下面说说他们之间的关系         Linux:系统运行平台    &…

    Linux干货 2015-06-18
  • 马哥教育网络班21期+第11周课程练习

    1、详细描述一次加密通讯的过程,结合图示最佳。 单向加密:只能加密,不能解密,提取数据指纹(特征码),来保证数据的完整性,如上图的第二步,单向加密的协议有MD5,SHA等 非对称加密:公钥和私钥成对出现,私钥必须本机器保存,用公钥加密的数据,只能使用与之配对儿的私钥解密;反之亦然,数字签名是私钥加密特征码,如上图的第三步;实现对称秘钥交换,如上图第五步 对称…

    Linux干货 2016-08-15
  • 2. 初识shell

        在Linux早期, 可以用来工作的只有shell. 那时, 系统管理员, 程序员和系统用户都坐在Linux命令行终端前, 输入文本命令, 查看文本输出. 而现在, 因为有了绚丽的图形化桌面环境, 在系统上找到shell提示符都变得困难起来. 接下来将会讨论提供命令行环境需要什么, 然后带你逐步了解可能会在各种L…

    Linux干货 2016-11-06
  • Linux基础知识(五)

    1、显示当前系统上root、fedora或user1用户的默认shell [root@server01 ~]# cat /etc/passwd | grep –color=auto -E "^root|fedora|user1" | cut -d : -f 1,7 2、找出/etc/rc.d/init.d/functions文…

    Linux干货 2016-10-25
  • Linux基础之软件包管理

    一.概述 在redhat系列的发行版中,采用rpm软件包管理器,rpm原名是Red Hat Package Manager,后来当其他发行版也采用这种软件包管理机制以后,重新命名,改为RPM Package Manager,它所能提供的功能是将编译好的应用程序文件打包成一个或几个程序文件,从而使得用户能够方便的安装,升级,卸载软件,而yum则是rpm包管理器…

    Linux干货 2016-11-16