用实例区分Linux下硬链接和符号链接
2009-04-09 20:48
148 查看
我们按几下命令操作顺序新建4个文件:
touch a:新建一个空文件a
ln a ha: 建立a的一个硬链接文件ha
ln -s a sa:建立a的一个符号链接文件sa
ln -s sa ssa:建立sa的一个符号链接文件ssa
ll -i后显示如下:
9389954 -rw-rw-r-- 2 wqm wqm 0 04-09 20:28 a
9389954 -rw-rw-r-- 2 wqm wqm 0 04-09 20:28 ha
9389973 lrwxrwxrwx 1 wqm wqm 1 04-09 20:29 sa -> a
9389974 lrwxrwxrwx 1 wqm wqm 2 04-09 20:29 ssa -> sa
从上图可以得知以下信息:
a,ha的i-节点号相同,为9389954,表明是同一个文件,文件大小也相同,都是0.
sa,ssa,a的i-结点编号都不同,表明他们是不同的文件。它们都过文件名建立联系。sa的文件大小就是文件a的文件名的长度,为1.ssa的情况类似。
修改a文件,ha也随之变化。sa本身不变,只是它们指向的文件发生了变化。
删除文件a,只是将链接数减1,并未实际上删除此文件。ha不发生变化。而删除a后,sa与ssa的文件名在终端中会闪烁显示,表明它们所指向的文件不见
了,此时cat ha命令会正常显示ha的内容。而cat sa或cat
ssa则显示:没有那个文件和目录。而实际上,文件a的克隆体ha还是存在的,但是硬链接却发现不了这一点,直接说找不到文件。可见硬链接的智商程度还是
较低的,它只认文件名而已。
touch a:新建一个空文件a
ln a ha: 建立a的一个硬链接文件ha
ln -s a sa:建立a的一个符号链接文件sa
ln -s sa ssa:建立sa的一个符号链接文件ssa
ll -i后显示如下:
9389954 -rw-rw-r-- 2 wqm wqm 0 04-09 20:28 a
9389954 -rw-rw-r-- 2 wqm wqm 0 04-09 20:28 ha
9389973 lrwxrwxrwx 1 wqm wqm 1 04-09 20:29 sa -> a
9389974 lrwxrwxrwx 1 wqm wqm 2 04-09 20:29 ssa -> sa
从上图可以得知以下信息:
a,ha的i-节点号相同,为9389954,表明是同一个文件,文件大小也相同,都是0.
sa,ssa,a的i-结点编号都不同,表明他们是不同的文件。它们都过文件名建立联系。sa的文件大小就是文件a的文件名的长度,为1.ssa的情况类似。
修改a文件,ha也随之变化。sa本身不变,只是它们指向的文件发生了变化。
删除文件a,只是将链接数减1,并未实际上删除此文件。ha不发生变化。而删除a后,sa与ssa的文件名在终端中会闪烁显示,表明它们所指向的文件不见
了,此时cat ha命令会正常显示ha的内容。而cat sa或cat
ssa则显示:没有那个文件和目录。而实际上,文件a的克隆体ha还是存在的,但是硬链接却发现不了这一点,直接说找不到文件。可见硬链接的智商程度还是
较低的,它只认文件名而已。
相关文章推荐
- WINDOWS也可以象LINUX一样建立符号链接
- Linux动态链接库同名符号装载问题(一)
- linux 链接的使用 创建和删除符号连接
- linux中的硬链接和符号链接[转]
- Intel平台下Linux中ELF文件动态链接的加载、解析及实例分析(一):
- 十个Linux中命令链接操作符的最佳实例
- Linux或Unix环境利用符号链接升级Maven
- C语言程序的编译、链接具体过程及Linux环境下的具体实例
- 【linux】——硬链接和符号链接
- linux 链接ln的使用 创建和删除符号连接(软、硬链接)
- Intel平台下Linux中 ELF文件动态链接的加载、解析及实例分析(一): 加载
- Linux硬链接和软链接(符号链接)
- 笔试题目中出现了Linux下的符号链接的问题,顺便学习一下软链接和硬连接
- linux下符号链接和硬链接的区别
- 一日一省linux:符号链接(软链接)和硬链接的区别
- Linux硬链接和符号链接
- Linux的硬链接(Hard Link)与符号链接(Symbolic Link)
- 实例讲解Linux系统中硬链接与软链接的创建
- linux中创建符号链接出错
- linux学习篇5--- 文件系统 实体连接与符号链接 磁盘 分割挂载 格式化 swap