硬链接:ln 源文件 新建名

指向同一个文件,并独立存在。当源文件删除不会影响硬链接文件的读取。不能跨文件系统和目录建连接。

例:新建一个文件吧!名字test 硬链接为t1。

查看文件,发现2个文件最前的数字是一样的,而这一窜数字称之为inode。

Indoe包含了里面存储了此文件的属性,包括文件大小、所有者、以及访问权限等等。

所以2个inode相同很明显是一个文件(区别于软连接)。还有权限后的数字,就代表了硬链接的份数。每次对t1或test文件添加一个硬链接,数值在原有的基础上加1。

可以认为是备份数,但与备份区别的是,硬链接的每份都是有关联的,在任何一份硬链接上文件做修改,就会对每份硬链接做相同的改动。

软连接:In –s 源文件 新建名

相当于windows中的快捷方式依赖源文件。如源文件删除,软连接则无法执行。可以跨文件系统和目录建连接。

例:当我们挂在光驱时,常常会打入 #mount /dev/cdrom /mnt/cdrom.但只要#mount,就会发现,其实挂载的并不是/dev/cdrom,而是/dev/hdc;

这时你就可以想到了,可能是软连接的缘故,文件指向的是hdc

注意权限,虽然软连接指向源文件,但并不会和源文件的权限相同。一定会出现这问题,或许你会将软连接的权限改为700时。并不代表只有文件所有者能访问。一切还是要以源文件的权限为准。(如果真要问我软连接的权限是干嘛用的,这个嘛。。再议。。。。。。。。)。

注意inode,并不是相同的,所以这就是和硬链接的本质区别。

总结

硬链接不能跨文件系统和不能对目录创建,而软连接可以。

硬链接的inode是相同的,而软连接是不同的。

硬链接每新建一次,值就会在原有基础上加1。而软连接则没此项。

不要被软连接的权限迷惑,最终还是要以源文件的权限为准。

Linux 硬链接和软链接的更多相关文章

  1. linux硬链接与软链接

    在linux操作系统中的文件数据除了实际的内容外,还会含有文件权限(rwx)与文件属性(owner,group,other等),文件系统通常会将这两部分的数据存放在不同的区块,文件权限与文件属性放置在 ...

  2. (转)Linux硬链接、软链接及inode详解

    inode 文件储存在硬盘上,硬盘的最小存储单位叫做“扇区”(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读 ...

  3. 【转】 linux硬链接与软链接

    转自:http://www.cnblogs.com/yfanqiu/archive/2012/06/11/2545556.html Linux 系统中有软链接和硬链接两种特殊的“文件”. 软链接可以看 ...

  4. Linux硬链接和软链接

    1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接. [硬连接]硬连接指通过索引节点 ...

  5. linux 硬链接和软链接(转)

    1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 【硬连接】硬连接指通过索引节点 ...

  6. Linux - 硬链接与软链接

    在 Linux 的文件系统中,磁盘块分成了 3 个部分.一部分称为数据区,用来存放文件内容.另一部分称为 inode 表,用来存放文件属性.第三部分称为超级块,用来存放文件系统本身的属性.文件的内容和 ...

  7. 最浅显、易懂的Linux 硬链接与软链接的理解

    正文: Linux上的文件可以这么理解:文件-->文件名.文件是一个Object,也就是磁盘上的二进制数据.一个文件可以有多个文件名,平时我们都是通过文件名访问文件Object. 这样,硬链接可 ...

  8. Linux 硬链接、软链接

    索引节点 inode(index node) 我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata).用户数据,即文件数据块 ...

  9. 彻底明白Linux硬链接和软链接

    [硬连接] 在Linux的文件系统中,保存在磁盘分区中的实际文件不管是什么类型系统都给它分配一个编号,称为索引节点号(Inode Index),这个索引节点用来标识这个文件,即这个索引节点就代表了这个 ...

  10. linux硬链接和软链接的区别

    1.原理上: 硬链接(hard link):A是B的硬链接(A和B都是文件名),则A的目录项中的inode节点号与B的目录项中的inode节点号相同,即一个inode节点对应两个不同的文件名,两个文件 ...

随机推荐

  1. End of Life check fails with NullPointerException

    Checks if the running version of JIRA is approaching, or has reached End of Life. Details Type: Bug ...

  2. javascript无缝滚动原理

    相比之下,无缝拼接能避免切换时出现空白,使用户体验更好! 无缝滚动原理: 制作一个双胞胎,内容跟主体内容一致,样式一致,如果横向排列则并排,当切换的时候,就可以弥补主体空白的地方,其他按普通循环操作即 ...

  3. 代码规范审查 -Sonar环境搭建

    Sonar概述 Sonar 是一个用于代码质量管理的开放平台,可以进行代码质量的持续跟踪审查,支持的语言包含C#.java.PHP.C等.可以通过UI一睹Sonar的强大之处. Sonar安装     ...

  4. MySQL中SYSDATE()和NOW()函数的区别和联系

    MySQL中有5个函数需要计算当前时间的值: NOW.返回时间,格式如:2012-09-23 06:48:28 CURDATE,返回时间的日期,格式如:2012-09-23 CURTIME,返回时间, ...

  5. input输入框回车事件响应

    1.常用方法 1.方法1$('#applyCertNum').bind('keypress',function(event){ if(event.keyCode == 13) { alert('你输入 ...

  6. apache kafka监控系列-KafkaOffsetMonitor(转)

    原文链接:apache kafka监控系列-KafkaOffsetMonitor 概览 最 近kafka server消息服务上线了,基于jmx指标参数也写到zabbix中了,但总觉得缺少点什么东西, ...

  7. Orchard运用 - 学习资源分享

    这段时间研究Orchard,看到一些资源十分有用. 比如国内还是有些牛人在分享心得,在此也广播一下给新手: JustRun对Orchard的一些代码分析 Orchard源码分析 Orchard中文社区 ...

  8. 如何在Django1.6结合Python3.4版本中使用MySql

    唉,最近赶了个新潮,用起了Python3.4跟Django1.6,数据库依然是互联网企业常见的MySql. 悲催的是在Python2.7时代连接MySql的MySQLdb还不支持Python3.4,还 ...

  9. API的文件遍历,未使用CFileFind,因为里面牵扯MFC,编个DLL好麻烦。

    // FindFileDebug.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include "FindFileDebug. ...

  10. angularjs中的数据绑定

    这是一个最简单的angularjs的例子,关于数据绑定的,大家可以执行一下,看看效果 <html ng-app> <head> <title>angularjs-i ...