Linux下的链接文件

Linux下有多少种类型的文件?~~了解一下
共7中:

  1. 普通文件-
  2. 目录文件d
  3. 设备文件字符设备c),块设备b
  4. 套接字文件s);例如socket套接字
  5. 链接文件l),硬链接,软链接
  6. 管道文件p

简单了解下linux文件系统:
在这里插入图片描述

每个文件都有一个inode;在Linux中,我们查文件时候,其实是通过inode节点查到的。只是将文件名和inode几点关联起来了,通过文件名就能找到inode节点。

//查看文件的  inode 是多少
ls -i 文件名

【回归正题,硬链接,软链接】
我们已经知道:每个文件都会有一个inode节点:
硬链接:理解为多个文件名对应同一个inode节点;(不会增加新的inode节点和数据块)
创建硬链接的命令:

ln 源文件名 链接文件名

在这里插入图片描述
硬链接文件的位置可以自己指定,大家可以试试:
例如:ln abc …/abc.so:在当前目录的上级目录创建

软链接:也叫符号链接,可以理解为windows下的快捷方式;它创建了一个独立文件,但是这个独立文件的block里存放是源文件的位置(路径);

//在ln 后面加上 -s 选项
ln -s 源文件的绝对路径 软链接文件的位置

在这里插入图片描述

小结

  • 硬链接或者软链接:不管修改源文件还是链接文件内容,二者内容都会发生改变
  • 有多个硬链接时,不管删除源文件还是链接文件,对另一方都不影响;(个人感觉硬链接和智能指针share_ptr很想,只有当链接个数减到0,才是删除数据。)
  • 硬链接不能跨文件系统,不能连接目录
  • 在创建软连接时,一定要使用源文件的绝对路径
  • 软链接:如果源文件删除了,链接文件也就没用了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值