Linux系统入坑系列(萌新报道!)———— 链接命令

本文含有这个链接的内容

链接命令:ln
命令原意:link
语法: ln -s [原文件] [目标文件]

  • -s 创建软链接
  • 没有 -s 就是创建硬链接文件

功能: 生成链接文件

原文件: 你想生成链接文件的文件
目标文件: 生成的链接文件

eg: ln - s /temp/file /temp/file.soft 生成软链接文件
ln /temp/file /temp/file.hard 生成硬链接文件
软链接: 类似于windows系统中的快捷方式

以下详细的解释一下软链接和硬链接的区别:

在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号inode软链接,其实就是新建立一个文件,这个文件就是专门用来指向别的文件的(那就和windows 下的快捷方式的那个文件有很接近的意味)。软链接产生的是一个新的文件,但这个文件的作用就是专门指向某个文件的,删了这个软链接文件,那就等于不需要这个链接,和原来的存在的实体原文件没有任何关系,但删除原来的文件,则相应的软链接不可(cat那个软链接文件,则提示“没有该文件或目录“)

硬链接是不会建立inode的,他只是在文件原来的inode link count域再增加1而已,也因此硬链接是不可以跨越文件系统的。相反都是软链接会重新建立一个inode,当然inode的结构跟其他的不一样,他只是一个指明源文件的字符串信息。一旦删除源文件,那么软链接将变得毫无意义。而删除硬链接文件的时候,系统调用会检查inode link count的数值,如果他大于等于1,那么inode不会被回收,因此文件的内容不会被删除,相当于删除了一个索引。

硬链接实际上是为文件建一个别名 链接文件和原文件实际上是同一个文件。可以通过ls -i来查看一下,这两个文件的inode号是同一个,说明它们是同一个文件; 而软链接建立的是一个指向,即链接文件内的内容是指向原文件的指针,它们是两个文件。

软链接可以跨文件系统,硬链接不可以;软链接可以对一个不存在的文件名(filename)进行链接(当然此时如果你vi这个软链接文件,Linux会自动新建一个文件名为filename的文件),硬链接不可以(其文件必须存在,inode必须存在);软链接可以对目录进行链接,硬链接不可以。两种链接都可以通过命令 ln 来创建。ln 默认创建的是硬链接。使用 -s 开关可以创建软链接

简单总结一下:软链接就和Windows的快捷方式一样,而硬链接是cp原文件 + 同步更新功能

  • 软链接可以目录使用
  • 硬链接不能对目录使用
  • 硬链接不能跨分区使用

软链接文件的权限是rwxrwxrwx,软链接是最常见的ugo的权限都为rwx的文件
软链接还有很明确的显示,有箭头显示,->指向原文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值