首先找一块“空地”——随便找个路径
root@v:/usr/local# mkdir inodelink root@v:/usr/local# cd inodelink root@v:/usr/local/inodelink# ls root@v:/usr/local/inodelink# touch file1
建立源文件file1
root@v:/usr/local/inodelink# ls file1 root@v:/usr/local/inodelink# ln file1 file2 root@v:/usr/local/inodelink# ln -s file1 file3
建立硬链接文件file2和软链接文件file3,软链接不是soft“软”链接是symbolic“符号”链接(翻译误人啊),类似于Windows快捷方式。
root@v:/usr/local/inodelink# ls -li total 0 560454 -rw-r--r-- 2 root root 0 Apr 18 21:29 file1 560454 -rw-r--r-- 2 root root 0 Apr 18 21:29 file2 560455 lrwxrwxrwx 1 root root 2 Apr 18 21:30 file3 -> file1
文件列表,i代表inode,带inode文件节点的列表。试一下ls -l可看出区别,前边有个数字560454是file1和file2的节点,560455是file3的节点。
root@v:/usr/local/inodelink# echo "I am file1" >> file1 root@v:/usr/local/inodelink# cat file1 I am file1
向file1写入内容并回显,或用gedit或用vi,皆可
root@v:/usr/local/inodelink# cat file2 I am file1 root@v:/usr/local/inodelink# cat file3 I am file1 root@v:/usr/local/inodelink# rm file1 root@v:/usr/local/inodelink# ls file2 file3 删除file1,看file2和file3的情况 root@v:/usr/local/inodelink# ls -li total 4 560454 -rw-r--r-- 1 root root 13 Apr 18 21:31 file2 560455 lrwxrwxrwx 1 root root 2 Apr 18 21:30 file3 -> file1 file2和file3都“存在” root@v:/usr/local/inodelink# cat file2 I am file1 root@v:/usr/local/inodelink# cat file3 cat: file3: No such file or directory
无法通过file3找到源文件
结论:file1和file2互不影响,条条大路通罗马,file3依赖于file1,而file1与file2不依赖file3(可测,不废话)。
原因:这种“物理“文件file1有一个inode index索引节点,只要任一文件保存有此索引节点,文件丢不了,也因此,file2充当了备份作用。(至于windows的回收站算不算这种状态,不知)
linux口号:一切皆文件,路径是文件,设备是文件,符号文件更是文件。