Linux下的softlink和hardlink
来源:互联网 发布:算法提供者错误 编辑:程序博客网 时间:2024/06/06 07:42
Linux中包括两种链接:硬链接(hard link)和软链接(soft link),软链接又称为符号链接(symbolic link)
创建命令:
ln -s destfile/directory softlink #建立软连接
ln destfile hardlink #建立硬连接
inode
在Linux系统中,内核为每一个新创建的文件分配一个Inode,每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永 远指向本文件的具体存储位置。文件属性保存在inode里,在访问文件时,inode被复制到内存,从而实现文件的快速访问。系统是通过inode来定位 每一个文件。
硬链接(hard link)
硬链接实际上是一个指针,指向源文件的inode,系统并不为它重新分配inode。硬连接不会建产新的inode,硬连接不管有多少个,都指向的是同一 个inode节点,只是新建一个hard link会把结点连接数增加,只要结点的连接数不是0,文件就一直存在,不管你删除的是源文件还是连接的文件。只要有一个存在,文件就存在(其实就是引用 计数的概念)。当你修改源文件或者连接文件任何一个的时候,其他的文件都会做同步的修改。
软链接(soft link)
软链接最直观的解释:相当于Windows系统的快捷方式,是一个独立文件(拥有独立的inode,与源文件inode无关),该文件的内容是源文件的路 径指针,通过该链接可以访问到源文件。所以删除软链接文件对源文件无影响,但是删除源文件,软链接文件就会找不到要指向的文件(可以类比Windows上 快捷方式,你点击快捷方式可以访问某个文件,但是删除快捷方式,对源文件无任何影响)。
区别
1. 软链接和源文件操作权限不一样;硬链接与源文件操作权限完全一致。
2. 软链接可以跨文件系统(分区);由于inode的限制以及文件系统的可卸载性,硬连接不容许跨文件系统。
3. 软连接可以对一个不存在的文件名进行连接;硬链接不可以。
4. 软连接可以对目录进行连接;硬链接不可以。
创建命令:
ln -s destfile/directory softlink #建立软连接
ln destfile hardlink #建立硬连接
inode
在Linux系统中,内核为每一个新创建的文件分配一个Inode,每个文件都有一个惟一的inode号,我们可以将inode简单理解成一个指针,它永 远指向本文件的具体存储位置。文件属性保存在inode里,在访问文件时,inode被复制到内存,从而实现文件的快速访问。系统是通过inode来定位 每一个文件。
硬链接(hard link)
硬链接实际上是一个指针,指向源文件的inode,系统并不为它重新分配inode。硬连接不会建产新的inode,硬连接不管有多少个,都指向的是同一 个inode节点,只是新建一个hard link会把结点连接数增加,只要结点的连接数不是0,文件就一直存在,不管你删除的是源文件还是连接的文件。只要有一个存在,文件就存在(其实就是引用 计数的概念)。当你修改源文件或者连接文件任何一个的时候,其他的文件都会做同步的修改。
软链接(soft link)
软链接最直观的解释:相当于Windows系统的快捷方式,是一个独立文件(拥有独立的inode,与源文件inode无关),该文件的内容是源文件的路 径指针,通过该链接可以访问到源文件。所以删除软链接文件对源文件无影响,但是删除源文件,软链接文件就会找不到要指向的文件(可以类比Windows上 快捷方式,你点击快捷方式可以访问某个文件,但是删除快捷方式,对源文件无任何影响)。
区别
1. 软链接和源文件操作权限不一样;硬链接与源文件操作权限完全一致。
2. 软链接可以跨文件系统(分区);由于inode的限制以及文件系统的可卸载性,硬连接不容许跨文件系统。
3. 软连接可以对一个不存在的文件名进行连接;硬链接不可以。
4. 软连接可以对目录进行连接;硬链接不可以。
0 0
- Linux下的softlink和hardlink
- Linux下的softlink和hardlink
- Linux下软连接(softlink)和硬连接(hardlink)的区别
- Softlink & Hardlink
- linux hardlink 和 symbolic link的区别
- Windows Explorer扩展----junction/softlink,hardlink,stream,term/cmd
- Linux下的>和>>
- linux下~/*和./*的区别
- linux下&&和;的区别
- NTFS之HARDLINK攻防
- NTFS之HARDLINK攻防
- Linux 下和windows下 的true 和false
- Linux下软件的安装和卸载
- linux下mysql的安装和使用
- linux 下软件的安装和卸载
- linux 下软件的安装和卸载
- Linux下的常用命令和设置
- Linux下软件的安装和卸载
- 上机题目(中级)- 两个超级大的整数相加相减 (Java)
- 函数:PHP将字符串从GBK转换为UTF8字符集iconv
- php 垃圾回收机制 写时复制和引用计数
- 在yii中显示友好的时间格式
- Smile Format
- Linux下的softlink和hardlink
- PHP垃圾回收机制的理解
- 杭电1000
- 异常初探(三)
- 笨方法学python(ex1-17)--%,input,解包,读取,写文件
- 使用NFS文件系统实现数据同步
- (一)01汤姆猫小游戏
- LightOJ 1019 (FLoyd裸题)
- python中的 \r以及基于此实现简单的倒计时小程序