博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ln 软链接与硬链接
阅读量:7025 次
发布时间:2019-06-28

本文共 1229 字,大约阅读时间需要 4 分钟。

原文地址:

  Linux/Unix中有两种链接,硬链接和软链接,均由ln命令来创建。

ln -s /home/m/.vimrc /media/Elements/115/vimrc

软链接

  软链接使用ln命令的-s选项创建:

1
ln -s source filename #创建source文件的软链接target(目的地址)

  软链接类似于Windows中的快捷方式,内部保存的是源文件的路径,路径可以是相对路径,也可以是绝对路径:

123456
dutor@dutor-desktop:~$ ln -s gvim.tgz gvimdutor@dutor-desktop:~$ ln -s /home/dutor/gvim.tgz gvim2dutor@dutor-desktop:~$ ll gvim* # alias ll='ls -l'lrwxrwxrwx 1 dutor dutor    8 2010-07-01 20:32 gvim -> gvim.tgzlrwxrwxrwx 1 dutor dutor   20 2010-07-01 20:33 gvim2 -> /home/dutor/gvim.tgz-rw-r--r-- 1 dutor dutor 8.5M 2010-06-29 23:06 gvim.tgz

  软链接应用十分广泛。

  在文件系统中多处共享同一个较大文件时,使用软链接就可以避免创建多个副本。
  维护动态库文件的版本时,使用软链接,在升级库文件后,只需修改软链接的源文件,而使用该库的程序则不需要修改。

硬链接

  不带有任何选项的ln命令即可创建硬链接:

1
ln source target #创建source文件的硬链接target

  硬链接创建后,链接文件与源文件没有主次之分,文件系统中它们都和同一个inode相关联,即具有相同的inode号:

1234
dutor@dutor-desktop:~$ ln gvim.tgz gvimdutor@dutor-desktop:~$ ll -i gvim*1048032 -rw-r--r-- 2 dutor dutor 8.5M 2010-06-29 23:06 gvim # 第3个域代表该文件的链接数1048032 -rw-r--r-- 2 dutor dutor 8.5M 2010-06-29 23:06 gvim.tgz

  因此,系统不允许用户为目录创建硬件链接,否则,目录树就不再是有向无环的了。只许州官放火,不许百姓点灯,系统却可以为目录“创建”硬链接(系统知道自己在做什么,却不知用户会做什么),那就是.和..分别指向当前目录和上级目录。因此每个目录的链接数至少是2.

  另外,由于硬链接的实现依赖于特定的文件系统,因此不可以跨文件系统。而软链接是基于路径的,所以只要是挂载在系统目录树中的文件或目录,都可以创建软链接。

转载地址:http://mbsxl.baihongyu.com/

你可能感兴趣的文章
Visaul Studio 常用快捷键的动画演示
查看>>
VBS进价编程必须学会的WMI介绍
查看>>
C#进阶系列——动态Lamada(二:优化)
查看>>
今天不谈技术,说说一些常用的软件~By 逆天
查看>>
cocos2d-x 音乐/音效设置
查看>>
Oracle的条件in包含NULL时的处理
查看>>
Web APi之EntityFramework【CRUD】(三)
查看>>
Scala IDE里的WorkSheet的使用
查看>>
Net设计模式实例之迭代器模式(Iterator Pattern)
查看>>
让Editplus自动格式化js、css、html。。。
查看>>
Linux内核跟踪之ring buffer的实现【转】
查看>>
MediaWiki安装配置(Linux)【转】
查看>>
搜索服务solr 一二事(1) - solr-5.5 使用自带Jetty或者tomcat 搭建单机版搜索服务器...
查看>>
Mac mysql 解决中文乱码
查看>>
8.16. config
查看>>
I.MX6 console 跳过 login
查看>>
ASP.NET 5 (vNext) 理解和概述
查看>>
第 44 章 LevelDB
查看>>
Java实现文件复制的四种方式
查看>>
使用数据库sqlite3 C语言实现登陆注册的功能
查看>>