首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux】为什么创建目录文件,链接数是2;创建普通文件时,链接数是1?(超详细图文解答)

我们对test2创建一个链接文件test1.hard.link 发现 二者inode编号一致 3.Linux中不允许用户对目录建立链接文件 为了1. 防止目录循环引用 2....保护文件系统结构完整性 3.简化文件系统设计,Linux中不允许用户对目录建立链接文件 二.解析部分: 我们分别创建一个普通文件testfile和一个目录文件testdir,ls -li查看源目录;...发现创建目录链接数是2;创建文件时,链接数是1 普通文件,只有 文件名 和inode编号有映射关系 , 所以链接数为1 我们进入空目录,任何一个空目录, 下面都有两个隐藏的 链接文件...表示当前目录——————因为这个文件(指向)的inode,和目录文件本身的inode是同一个 ..表示上一级目录 所以目录文件,除了 文件名 和inode有映射关系 ,还有目录文件下面的链接....和inode有映射关系 , 所以链接数为2 三.理解原理后,试着分析 在newdir1下,再创建newdir2,发现newdir1

7010

Linux链接,软链接

Linux链接,软链接 参考网上其他博客整理的内容 一. inode 1. 文件存储 文件是存储在硬盘上的,硬盘最小单位叫扇区(sector),每个扇区存储512字节。...链接 在Unix/Linux中是允许多个文件名与一个inode节点对应的,即多个文件名指向同一个inode。...命令来创建一个链接: ln 源文件 新的目标文件 通过ln创建出来的新文件的inode号码将和原文件的inode号码一样,而在inode信息中的链接数将会加1 需要注意的是不能对目录链接。...通过mkdir命令创建一个新目录,其链接数应该有2个,因为常见的目录本身为1个链接,而目录下面的隐藏目录.(点号)是该目录的又一个链接,也算是1个连接数。...软链接(符号链接) 类似windows中的快捷方式,可以快速连接到目标文件和目录,称为软链接,或符号链接 首先看看怎么创建一个软链接,只需在ln命令后加一个s选项即可 ln -s 源文件 新的目标文件

9.9K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linux链接链接

    链接文件 链接文件有两个限制: 1、不允许给目录创建链接; 2、只有在同一文件系统中的文件之间才能创建链接。 对链接文件进行读写和删除操作时候,结果和软链接相同。....conf (软链接) 第一条为链接,第二条为软链接 代码: $ ls -li   //查看一个文件或目录的inode,要通过ls 命令的的 -i参数,inode值相同的文件,他们的关系是互为链接的关系...连接的命令是   ln -d existfile newfile 链接文件有两个限制   1)、不允许给目录创建链接;   2)、只有在同一文件系统中的文件之间才能创建链接。   ...在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是连接。连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立连接到重要文件,以防止“误删”的功能。...软链接也有链接没有的缺点,因为链接文件包含有原文件的路径信息,所以当原文件从一个目录下移到其他目录中,再访问链接文件,系统就找不到了;还有它要系统分配额外的空间用于建立新的索引节点和保存原文件的路径。

    8.6K50

    Linux链接与软链接

    链接与软链接 链接是通过inode进行的链接。...一般情况下,文件名和inode号码是“一一对应”关系,每个inode号码对应一个文件名,但是Unix/Linux系统允许多个文件名指向同一个inode号码,这意味着,可以用不同的文件名访问同样的内容,但是...链接只能在同一个文件系统的文件中间进行链接,不能对目录进行创建。如果删除链接对应的源文件,则链接文件仍然存在,而且保存了原有的内容,这样可以防止因为误操作而删除文件的作用。...可以使用ln 源文件 新文件 命令建立链接或者使用ln -d 源文件 新文件 命令建立链接。 通过上面的操作印证了前述关于链接的相关内容。...这是软链接链接最大的不同:文件A指向文件B的文件名,而不是文件B的inode号码,文件B的inode链接数不会因此发生变化。可以使用ln -s 源文件或目录 目标文件或目录 命令建立软链接

    8.7K30

    LINUX链接链接

    1.Linux链接概念 Linux链接分两种,一种被称为链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。...在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是连接。连接的作用是允许一个文件拥有多个有效路径名,这样用户 就可以建立连接到重要文件,以防止“误删”的功能。...其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和 其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。...2.通过实验加深理解 [oracle@Linux]$ touch f1 #创建一个测试文件f1 [oracle@Linux]$ ln f1 f2 #创建f1的一个连接文件...f2 [oracle@Linux]$ ln -s f1 f3 #创建f1的一个符号连接文件f3 [oracle@Linux]$ ls -li # -i参数显示文件的inode

    8.1K51

    Linux链接链接

    创建链接链接是一个指向另一个文件或目录的引用,类似于Windows系统中的快捷方式。...ln -s [目标文件路径] [链接文件名]例如,要在当前目录创建一个名为link_file的软链接,指向/home/user/desktop/link,可以执行以下命令ln -s /home/user...创建链接就像是创建了原始文件的副本,但实际上它们都指向相同的数据块。...ln [目标文件路径] [链接文件名]例如,要在当前目录创建一个名为link_file的链接,指向/home/user/desktop/link,可以执行以下命令ln /home/user/desktop...删除软链接rm [软链接文件名]软链接链接区别软链接就像是创建了一个快捷方式,指向另一个文件或目录。如果原始文件被删除或移动,软链接失效,因为它只是一个路径的引用。

    27610

    Linux链接与软链接

    Linux中,连接文件有两种,一种类似于Windows的快捷方式,可以让你快速地链接到目标文件(或目录),这种称为软链接(soft link),也叫作符号链接(symbolic link);另一种则是通过文件系统的...这种情况就被称为"链接"(hard link)。 ln命令可以创建链接: ln 运行上面这条命令以后,源文件与目标文件的inode号码相同,都指向同一个inode。...这里顺便说一下目录文件的"链接数"。创建目录时,默认会生成两个目录项:".“和”…"。...所以,任何一个目录的"链接"总数,总是等于2加上它的子目录总数(含隐藏目录),这里的2是本身目录名对其的“链接”和当前目录下的“.”对其的链接“。...下面创建链接并查看软链接的属性: #创建链接 $ ln -s /etc/lvlv.txt lvlv_sb.txt #查看文件属性 $ ll -i 7792474 -rw---x--x 2 b3335

    23.4K20

    Linux链接与软链接

    链接与软链接 A1 前言 1、我们知道文件,都有文件名和数据。...4、查看inode号:stat或ls -i A2 why 为解决文件的共享使用,Linux引入了两种链接链接(hard link)与软链接(又称符号链接,即soft link 或 symbolic...解决了文件的共享使用 隐藏文件路径 增加权限安全 节省存储 A3 链接 what 若一个inode号对应多个文件名,则称这些文件链接。 换言之,同一个文件使用多个别名。...不能交叉文件系统进行链接创建 不能对目录进行创建,只可对文件创建(受限于文件系统的设计) 删除一个链接文件并不影响其他有相同inode号的文件 特性展示 A4 软链接 what 若文件用户数据块中存放的内容是另一个文件的路径名的指向...特点 软链接有自己的文件属性及权限等 可对不存在的文件或目录创建链接链接支持交叉文件系统 软链接可对文件或目录创建 创建链接时,链接计数i_nlink不会增加 删除软链接并不影响被指向的文件

    7.6K20

    Linux ln 软、链接

    最近在学习Linux系统的,给我的感觉就是“智慧的结晶,智慧的大脑,智慧的操作” 今天研究到了一个有趣的命令 ln 我们先来看一下它的概念吧 Linux ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接...---- 一、语法 ln [参数][源文件或目录][目标文件或目录] 命令功能 : Linux文件系统中,有所谓的链接(link),我们可以将其视为档案的别名,而链接又可分为两种 : 链接(hard...类似于Windows操作系统中的快捷方式 2.软链接可以 跨文件系统 ,链接不可以 3.软链接可以对一个不存在的文件名进行链接 4.软链接可以对目录进行链接 链接: 1.链接,以文件副本的形式存在...2.不允许给目录创建链接 3.链接只有在同一个文件系统中才能创建 二、命令参数 必要参数: -b 删除,覆盖以前建立的链接 -d 允许超级用户制作目录链接 -f 强制执行 -i 交互模式,文件存在则提示用户是否覆盖...发现链接和源文件的 i 节点是相同的,而软链接与源文件的 i 节点是不同的   第六:不允许将链接指向目录;不允许跨分区创建链接

    5.9K20

    Linux文件的软链接链接

    1.Linux链接概念 Linux链接分两种,一种被称为链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。...这种情况就被称为”链接”(hard link)。 链接就是同一个文件使用了多个别名(他们有共同的 inode)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是连接。...连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。...只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有连接文件均被删除。...2.通过实验加深理解 [oracle@Linux]$ touch f1 #创建一个测试文件f1 [oracle@Linux]$ ln f1 f2 #创建f1的一个连接文件

    7.7K01

    Linux中的链接与软链接

    链接:在一个文件里面,对于目录来说,记录着文件的名字和inode号(inode 是文件元数据的一部分但其并不包含文件名,inode 号即索引节点号,是文件的唯一标识),我们也可以在多个目录里记录相同的...也就是说,当文件的链接数被目录记录了一次,文件的链接数就增加了一次。所以,文件只要在目录里存在,它就至少有一个链接。...链接     ln 源  新文件        一旦创建成功,则没有源和目的文件关系 (链接里面不分主次关系)一个文件,只有链接为0时才是彻底删除。 ​...link [root@Centos6 kobe]#     链接不能对目录创建(因为引入了对目录连接就有可能在目录中引入循环,在目录遍历的时候系统就会陷入无限循环当中,这样导致无法定位到访问目录...-s 源文件 目的文件     快捷方式 (wimdows)     软链接可以跨分区     可以相对路径 ,也可以绝对路径     在创建相对路径时,推荐进入到最终目录,再创建

    4.2K10

    Linux下的链接和软链接

    链接和软链接介绍 Linux文件系统中,有所谓的链接(link),我们可以将其视为文件的别名,而链接又可分为两种 : 链接(hard link)与软链接(symbolic link)。...链接是指文件可以有多个名称。 软链接的方式则是产生一个特殊的文件,该文件的内容是指向另一个文件的位置 链接是存在同一个文件系统中,而软链接却可以跨越不同的文件系统。...三、Linux链接 1.创建文件 [root@node ~]# mkdir /hon [root@node ~]# echo "aa-bb-test" > /hon/test.01 2.创建链接文件...test.bak [root@node ~]# ln /hon/test.01 test.bak 3.查看链接文件 [root@node ~]# ll test.bak -rw-r--r-- 2...软链接 1.创建一个测试文件 [root@node ~]# mkdir /ron [root@node ~]# echo aa > /ron/aa.txt 2.创建链接文件 ln -s /ron/aa.txt

    37110

    彻底明白Linux链接和软链接

    链接Linux系统下可以使用ln命令创建链接: ln [参数] [源文件或目录] [目标文件或目录] 在文件系统里,每一个文件都会有一个索引节点(Inode Index),这个索引节点用来标识这个文件...那么,为什么目录就不能创建链接?我们来试一下。...如上图一样,是不允许用户给目录创建链接的,目录树大家知道吧,如果给目录创建链接,我们仔细想一想,这样的话那目录树是不是就变成环形的了,当我们要定位这个目录下的文件的时候,就不能通过名字去定位了。...链接相当于创建了源文件的副本,如果链接文件的内容修改了,那么源文件的内容也会改变。 我们在Linux系统下开发的时候,是不是遇到过有时候误删了一些文件,然后想找回来又无能为力,怎么办?...在Linux系统下使用ln命令创建链接,和创建链接的命令差不多,我们来试一试: 1. 创建链接: 2.

    5K10

    解决 mklink 使用中的各种坑(链接,软链接符号链接目录链接

    解决 mklink 使用中的各种坑(链接,软链接/符号链接目录链接) 2018-03-08 12:23 通过 mklink 命令可以创建文件或文件夹的链接...---- 0x00 背景介绍:mklink mklink 可以像创建快捷方式一样建立文件或文件夹的链接,但不同于快捷方式的是,mklink 创建链接绝大多数程序都不会认为那是一个链接,而是一个实实在在的文件或文件夹...mklink 可以创建符号链接链接目录链接。在 cmd 中输入 mklink 即可看到以下这样的帮助信息。 C:\Users\lvyi>mklink 创建符号链接。...MKLINK [[/D] | [/H] | [/J]] Link Target /D 创建目录符号链接。...默认为文件 符号链接。 /H 创建链接而非符号链接。 /J 创建目录联接。

    31K11

    Linux链接链接实战解析

    1.链接 一般情况下,文件名和inode号码是"一一对应"关系,每个inode号码对应一个文件名。但是,Unix/Linux系统允许,多个文件名指向同一个inode号码。...这种情况就被称为"链接"(hard link)。 ? 执行ln a.c a.c.bak后,链接数加1。 ? 每创建一个链接链接数加1,并不会增加额外的空间。软链接是原文件的快捷方式。 ?...3.总结 1.链接是通过索引节点进行的链接。在Linux中,多个文件指向同一个索引节点是允许的,像这样的链接就是链接链接只能在同一文件系统中的文件之间进行链接,不能对目录进行创建。...2.软链接(也叫符号链接)与链接不同,文件用户数据块中存放的内容是另一文件的路径名的指向。软链接就是一个普通文件,只是数据块内容有点特殊。软链接可对文件或目录创建。(快捷方式指的就是软链接)。...例如某个文件文件系统空间已经用完了,但是现在必须在该文件系统下创建一个新的目录并存储大量的文件,那么可以把另一个剩余空间较多的文件系统中的目录链接到该文件系统中,这样就可以很好的解决空间不足问题。

    6.1K20

    Linux软连接和链接

    1.Linux链接概念 一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法 Linux链接分两种,一种被称为链接(Hard Link),另一种被称为符号链接(Symbolic Link...在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永远指向本文件的具体存储位置。...其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。...2.通过实验加深理解 [oracle@Linux]$ touch f1          #创建一个测试文件f1 [oracle@Linux]$ ln f1 f2          #创建f1的一个连接文件...f2 [oracle@Linux]$ ln -s f1 f3       #创建f1的一个符号连接文件f3 [oracle@Linux]$ ls -li            # -i参数显示文件的

    6.2K100

    Linux中的链接文件_软链接链接

    一、链接文件介绍 Linux操作系统中的“链接文件”分为链接(hard link)和软链接(symbolic link)。两种链接的本质区别在于inode。...链接有两个限制: 不能跨文件系统,因为不同的文件系统有不同的inode table; 不能链接目录。...一开始目录下面只有一个passwd文件,目录总大小为4KB,做了链接后,虽然两个文件的大小都为2364B,但目录的总大小没有变化。 所以我们先试着删除源文件,再来比较,例: ?...说明链接文件并不会复制数据块额外占用磁盘空间。 再看链接的另外一个限制——不允许目录链接。例: ?...上例中,如果删除源文件,则不能读取软链接文件,而且使用命令ll查看时发现颜色也有变化。 说明目录不可以做链接,但可以做软链接,例: ?

    6.6K30

    Linux中的链接文件_软链接链接

    一、链接文件介绍 Linux操作系统中的“链接文件”分为链接(hard link)和软链接(symbolic link)。两种链接的本质区别在于inode。...链接有两个限制: 不能跨文件系统,因为不同的文件系统有不同的inode table; 不能链接目录。...一开始目录下面只有一个passwd文件,目录总大小为4KB,做了链接后,虽然两个文件的大小都为2364B,但目录的总大小没有变化。 所以我们先试着删除源文件,再来比较,例: ?...说明链接文件并不会复制数据块额外占用磁盘空间。 再看链接的另外一个限制——不允许目录链接。例: ?...上例中,如果删除源文件,则不能读取软链接文件,而且使用命令ll查看时发现颜色也有变化。 说明目录不可以做链接,但可以做软链接,例: ?

    6.9K30

    Linux下软链接链接的区别

    1)默认不带参数情况下,ln命令创建的是链接,带-s参数的ln命令创建的是软链接。 2)链接文件与源文件的inode节点号相同,而软链接文件的inode节点号与源文件不同。...3)ln命令不能对目录创建链接,但可以创建链接,对目录的软链接会经常被用到。...4)删除软链接文件,对源文件及链接文件无任何影响; 5)删除文件的链接文件,对源文件及链接文件无任何影响; 6)删除链接文件的源文件,对链接无影响,会导致其软链接失效(红底白字闪烁状) 7)...8)很多硬件设备中的快照功能,使用的就类似链接的原理。 9)软链接可以跨文件系统,链接不可以跨文件系统。...附:两种创建链接的方式如下: ln -s 源文件  链接文件      # 创建链接 ln  源文件  链接文件     # 创建链接

    3.3K20

    详解 Linux 中的链接与软链接

    Linux 链接文件类似于 Windows 中的快捷方式,Linux 链接文件分为链接和软链接,不过在具体介绍 Linux 中的链接和软链接之前,先来看看 Linux 文件系统中文件的具体结构。...在 Linux 中允许多个文件名指向同一个索引节点号,而链接(hard link, 也称链接)指的是通过索引节点号进行的链接。...可以通过ln指令为文件创建链接: ln 源文件 链接文件 为 hello.txt 文件创建两个链接: chenkc:~$ ln hello.txt hardlink_hello.txt chenkc...链接相当于为文件创建了一个新的文件名,当删除其中一个链接的时候并不影响索引节点本身以及其它链接到该索引节点的文件名,所以这些链接是相对独立的,这也是为什么 Linux 中仅仅标识文件链接的数目,并没有显示的标识文件是否为链接文件的原因...例如某个文件文件系统空间已经用完了,但是现在必须在该文件系统下创建一个新的目录并存储大量的文件,那么可以把另一个剩余空间较多的文件系统中的目录链接到该文件系统中,这样就可以很好的解决空间不足问题; 链接与软链接的区别

    12.5K51
    领券