linux中的link
来源:互联网 发布:windows arp老化时间 编辑:程序博客网 时间:2024/06/05 03:13
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中的link
- linux中的link,unlink,open,close
- linux中的软链(symbolic link)
- Link-Linux
- windows中的link--junction
- struts中的link标签
- 关于tss中的link
- win7 中的 "link" 命令
- 【linux】关于Linux shell中的cd和pwd对于simbolic link的行为
- Linux Man Link
- linux c program link....
- linux的link命令
- Linux Soft Link
- Linux中link,unlink
- linux之link用法
- linux命令link汇总
- Linux--链接文件link
- linux Symbolic link
- WebUtil
- php中在一个php文件调用另一个php的函数,保存登录时保存的用户id
- Android--RecyclerView
- 异步加载(AsyncTask异步任务、Handler、Json解析、Lrucache缓存、ListView滑动优化等来实现ListView图文混排)
- 动态内存分配
- linux中的link
- Android开发问题集锦
- C语言——缓冲区
- struts 2 实现文件下载 中文乱码问题
- [置顶] xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)
- Django1.9 Python3.4出现Error loading MySQLdb module:No module named ‘MySQLdb’问题
- 全屏点击,开始游戏
- iOS中的Runloop
- Nova client源码分析---nova list命令