1. 命令功能

ln 可以看做是link的简写,功能是创建链接文件,链接文件包括硬链接(hard link)和软链接(符号链接,symbolic link)

2. 语法格式

ln  [option]  source  target

ln  选项  源文件或目录  目标文件或目录

参数

参数说明

无选项

创建硬链接

-s

创建软链接(符号链接)

目录没有硬链接,只有软链接。

3. 硬软链接文件知识

1. 硬链接

硬链接文件创建方式:ln 源文件  目标文件

每个文件都有一个inode(索引)节点,这个inode就是指向文件在磁盘中具体存放的位置编号。创建硬链接,就是在创建一个文件名,这个文件名指向同一个inode索引,相当于给文件的另一个入口。例如到一个房子开始只有一个门能进入,现在又开了另一个门当做出口。这样做的好处,例如备份文件,删除源文件,只是把源文件名删除了,还可以通过硬链接文件访问这个文件,放置误删除。

硬链接的特性:

  1. 具有相同inode节点的多个文件互为硬链接。
  2. 删除源文件或硬链接文件其中之一,文件实体没有被删除。
  3. 只有删除源文件及全部硬链接文件后,文件实体才会被删除。
  4. 可以给文件设置硬链接,来防止重要文件被误删。
  5. 硬链接可以用rm命令删除。
  6. ls –lih 查看第三列,即硬链接数。
  7. 对于静态文件(文件没有被调用),当对应的硬链接数为0时,文件就会被删除

实例:创建硬链接

[root@localhost DIR]# ln 123 abc

[root@localhost DIR]# ls -l

total 0

-rw-r--r--. 2 root root 0 Mar 13 23:21 123

-rw-r--r--. 2 root root 0 Mar 13 23:21 abc    #abc是123的硬链接文件

[root@localhost DIR]# ls –lih

total 0

786446 -rw-r--r--. 2 root root 0 Mar 13 23:21 123  #inode号相同;2 表示有硬链接数:3

786446 -rw-r--r--. 2 root root 0 Mar 13 23:21 abc

[root@localhost DIR]# ln 123 def

[root@localhost DIR]# ls -lih

total 0

786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 123  # 硬链接数有3

786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 abc

786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 def

[root@localhost DIR]# ls -lih 123

786446 -rw-r--r--. 3 root root 0 Mar 13 23:21 123

2. 软链接

软链接(符号链接),类似windows中的快捷方式。

软链接创建方式:ln –s 源文件 目标文件

[root@localhost home]# ls -l test.txt

-rw-r--r--. 1 root root 27 Mar 14 22:45 test.txt

[root@localhost home]# ln -s test.txt test.txt_link   #创建软链接

[root@localhost home]# ls -l test.txt test.txt_link

-rw-r--r--. 1 root root 27 Mar 14 22:45 test.txt

lrwxrwxrwx. 1 root root  8 Mar 14 22:45 test.txt_link -> test.txt  #l:软链接标识符

软链接文件和源文件的inode号不一样,链接数也不一样

[root@localhost home]# ls -lih test.txt test.txt_link

786434 -rw-r--r--. 1 root root 27 Mar 14 22:45 test.txt

786448 lrwxrwxrwx. 1 root root  8 Mar 14 22:45 test.txt_link -> test.txt

ln 硬链接与软链接的更多相关文章

  1. Linux ln命令:在文件之间建立链接(硬链接和软链接)详解版1

    Linux ln命令:在文件之间建立链接(硬链接和软链接)详解版 < Linux创建文件及修改文件时间戳(touch命令)Linux复制文件和目录(cp命令) > <Linux就该这 ...

  2. Linux系统硬链接和软链接介绍

    1.链接的概念 在Linux系统中链接分为硬链接和软连接两种,一种为硬链接,另一种为软连接或符号链接(symbolic Link).ln命令就是创建链接文件的,在默认不带参数的情况下,执行ln命令创建 ...

  3. 实例讲解Linux系统中硬链接与软链接的创建

    导读 Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link).默认情况下,ln命令产生硬链接.硬链接与软链接的区别从根本上要从Inode节点说 ...

  4. 转:理解 Linux 的硬链接与软链接

    Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程 创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键 ...

  5. Linux文件系统中硬链接和软链接的区别 (转)

    建立硬链接命令:ln src-link dest-link建立软链接:ln -s src-link dest-link   1. 硬链接是别名,软链接是快捷方式   2. 硬链接和源链接指向同一个i节 ...

  6. 理解 Linux 的硬链接与软链接

    Linux 的文件与目录 现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用.在 UNIX 系统中,操作系统为磁盘上的文本与图像.鼠标与键盘 ...

  7. 理解 Linux 的硬链接与软链接【转】

    转自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/index.html 从 inode 了解 Linux 文件 ...

  8. 【Linux】Linux系统硬链接和软链接

    在linux系统中有种文件是链接文件,可以为解决文件的共享使用.链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link). 查看lin ...

  9. Linux下硬链接与软链接

    linux下的链接文件,尤其是软链接使用非常的频繁: 链分为硬链接(hard link)与软链接(symbolic link) 两种:关键在于inode: 硬链接: 当系统需要读取一个文件时,就会去读 ...

随机推荐

  1. RedisTemplate访问Redis数据结构(一)——String

    当对String数据结构进行操作时,推荐直接使用spring-data-redis提供的StringRedisTemplate,其配置如下 <bean id="stringRedisT ...

  2. 从源码编译UE4,加快Setup.bat下载文件的环节

    之前很傻,每次运行这个setup.bat都要等很久很久才能把4g多的东西下载完成,知道有一天突然发现了世外桃源…… 从命令行运行setup.bat -help,可以看到参数的说明(没错,参数可选,之前 ...

  3. H. The Game of Life

    题目链接:http://exam.upc.edu.cn/problem.php?id=5206 题意:邻居为八个方向.若一个活人有2或3个邻居,遗传一代,否则死亡:若一个死人有3个邻居,则下一代复活. ...

  4. Oracle-SQL程序优化案例二

    有时候写得不规范的SQL语句真的是占用很多时间 以下是我在工作中发现的规律,如果字段过多的使用函数,尽量不要将这些字段串联在一起做匹配或查询条件,比如红色注释部分,在执行红色部分的时候 这个SQL程序 ...

  5. HTML&&CSS基础知识点整理

    HTML&&CSS基础知识点整理 一.WEB标准:一系列标准的集合 1. 结构(Structure):html 语言:XHTML[可扩展超文本标识语言]和XML[可扩展标记语言] 2. ...

  6. [django]上下文管理器

    上下文管理器django提取context中的数据去供模板调用 需求: 所有的页面都需要一个特定的变量 本质: python函数 , 接收一个HttpRequest对象的参数 , 且返回的必须是一个字 ...

  7. 《SQL Server 2012 T-SQL基础》读书笔记 - 9.事务和并发

    Chapter 9 Transactions and Concurrency SQL Server默认会把每个单独的语句作为一个事务,也就是会自动在每个语句最后提交事务(可以设置IMPLICIT_TR ...

  8. 关于MonoBehaviour的单例通用规则

    长久以来,对于基于MonoBehaviour的单例总是心有梗结,总觉得用得很忐忑,今天,终于有时间思考和总结了下,理清了想通了.代码和注释如下: 其中GameLogic是我们自己的控制游戏生命周期的管 ...

  9. Linux内核调试方法总结之coredump

    什么是core dump? 分析core dump是Linux应用程序调试的一种有效方式,像内核调试抓取ram dump一样,core dump主要是获取应用程序崩溃时的现场信息,如程序运行时的内存. ...

  10. Oracle Flashback Drop

    Ensure that the prerequisites described in Prerequisites of Flashback Drop are met. The following li ...