Linux链接分为两种,一种是硬链接一种是符号链接。

  硬链接:

    硬链接是指通过索引节点来进行。再Linux文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点(Inode Index)。在Linux中,多个文件指向同一个索引节点是存在的,一般这种连接就是硬链接。硬链接的作用就是允许一个文件拥有多个有效路径名,这样用户就可以建立硬链接给重要文件,防止“误删”。当删除文件的时候只删除一个链接并不影响索引本身和其他的链接,只有当最后一个链接被删除后,文件的数据块和目录的链接才会被真正的释放。也就是说,文件真正删除的条件是与之相关的所有硬链接和文件均被删除。

  软链接:

    软链接也叫作符号链接。软链接文件类似于windows的快捷方式。他其实是一个特殊的文件。在软链接中,文件实际上是一个文本文件,其中包含另一文本的位置信息。

  举个例子如下:

    

    ln命令默认创建的是硬链接,要想创建软链接需要用-s选项。

    

    写入内容并查看,此时三个文件并没有什么不同

    

    删除f1之后,f2并没有什么影响,而f3就找不到了。这是因为f3符号链接就像快捷方式一样,文件删除了符号链接就损坏了。而硬链接则不同,删除一个硬链接不会影响到其他硬链接和文件。

    

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

  1. linux文件属性软硬链接知识

    链接的概念 在linux系统中,链接可分为两种:一种为硬链接,另一种为软链接或符号链接.在默认不带参数的情况下,执行ln命令创建的链接是硬链接. 如果使用ln  -s创建链接则为软链接,前面文件类型为 ...

  2. Linux创建软硬链接和打包压缩、解压缩

    软硬链接 ln = link make links between files 语法: 软链接 ln -s 源文件 链接名称 实例: ln -s HelloWord.java hw.lnk 给Hell ...

  3. linux之软硬链接【转】

    链接---------是一种在共享文件和访问它的用户的若干目录项之间建立联系的一种方法. Linux中包括两种链接:硬链接(Hard Link)和软链接(Soft Link),软链接又称为符号链接(S ...

  4. linux的软硬链接的特性

    硬链接的特征: 1.拥有相同的i节点和储存block块,可以看作是同一个文件 2.可以通过i节点识别 3.不能跨分区 4.不能针对目录使用 软链接的特征: 1.类似于windows的快捷方式 2.软链 ...

  5. NO21 Llinux的文件种类与扩展名--文件权限--软硬链接--Linux删除文件原理

    Linux的文件种类与扩展名 一.文件种类:1.普通文件(regular file)第一个字符为[ - ]包括:①纯文本档(ASCII):这是Linux系统中最多的一种文件类型,称为纯文本档.是因为内 ...

  6. Linux中的软硬链接

    说到Linux中的软硬链接,就必须谈一下Linux的文件系统的组成的重要部分iNode和block. 首先是iNode,先用一张图了解一下iNode在Linux文件系统中的地位: Linux中的文件的 ...

  7. linux基础文件管理软硬链接

    一.文件系统的基本结构 1.文件和目录被组成一个单根倒置树目录结构 2.文件系统从根目录下开始,用“/”表示 3.根文件系统(rootfs):root filesystem文件名区分大小写 4.以 . ...

  8. Linux 软硬链接区别

    一.“硬链接“和“软链接“ 链接的概念:链接简单说实际上是一种文件共享的方式,是 POSIX 中的概念,主流文件系统都支持链接文件. 链接的作用:可以将链接简单地理解为 Windows 中常见的快捷方 ...

  9. 初始Linux软硬链接

    转载 https://blog.csdn.net/libaineu2004/article/details/85918682 用实践让你明白"软链接"和"硬链接" ...

随机推荐

  1. 设计模式-生成者模式之c#代码

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. 百度 ueditor 1.2.0 注意事项 ,上传文件问题

    <script type="text/javascript" src="script/ueditor/ueditor.config.js" charset ...

  3. C语言 链表基本函数

    #include <stdio.h> #include <malloc.h> typedef struct my_node mynode; struct my_node{    ...

  4. java如何实现以数据流的形式下载压缩包到本地?

    先不多说,直接贴代码吧,在服务器的E盘下放一个E:/manual.rar的压缩包 package com.cellstrain.icell.controller; import org.springf ...

  5. js 验证input 输入框

    <h1>js验证输入框内容</h1><br /><br /> 只能输入英文<input type="text" onkeyup ...

  6. file.write(str),file.writelines(sequence)

    file.write(str)的参数是一个字符串,就是你要写入文件的内容.file.writelines(sequence)的参数是序列,比如列表,它会迭代帮你写入文件.

  7. Redis java client ==> Jedis

    https://github.com/xetorthio/jedis Jedis is a blazingly small and sane Redis java client. Jedis was ...

  8. Mybatis中的update动态SQL语句

    Mybatis中的CRUD操作(增删改查)中,简单的SQL操作比较直观,如查找操作: <select id="findBySrcId" resultMap="ent ...

  9. (最小生成树)Truck History --POJ -- 1789

    链接: http://poj.org/problem?id=1789 Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 2213 ...

  10. 《Android开发艺术探索》第11章 Android的线程和线程池

    第11章 Android的线程和线程池 11.1 主线程和子线程 (1)在Java中默认情况下一个进程只有一个线程,也就是主线程,其他线程都是子线程,也叫工作线程.Android中的主线程主要处理和界 ...