下面来一起欣赏一下linux常用命令把:
首先我们打开xshell,连接本地虚拟机(暂时没有买服务器),效果如下:
那么接下来,来看一下什么是软链接与硬链接
硬链接: 首先在linux系统内假如有一个文件为A,那么此时有一个硬链接指向了A,就相当于创建了一个跟A一样的文件,不小心删除了A文件,还是可以通过的A的硬链接访问到A文件里面的内容(A文件的备份,可以这样理解),作用可以应用于一些重要的文件上,防止误删
软链接:可以理解为一个指针,或者windows下的快捷方式,如果我们删除了指针或者说快捷方式所指向的真正的对象或者源文件,那么就不能够访问他们了,删除就是删除了。
下面演示一下他们在linux系统当中的区别。。。。
那我们假如在一个目录当中创建一个文件,然后在这个文件当中填写一些内容,然后查看效果。
#在home目录下创建了一个text.txt文件
[root@localhost home]# pwd
/home
[root@localhost home]# ls
elephant luhaihui
[root@localhost home]# touch test.txt
[root@localhost home]# vim test.txt
[root@localhost home]# cat test.txt
I love LINUX
[root@localhost home]#
接下来,我们对text.txt文件进行硬链接和软链接的操作。
[root@localhost home]# ln test.txt A #给test.txt创建一个硬链接A
[root@localhost home]# ls
A elephant luhaihui test.txt
[root@localhost home]# ln -s test.txt B #给text.txt创建一个软链接B
[root@localhost home]# ls
A B elephant luhaihui test.txt
[root@localhost home]# ll #ll命令查看可发现,如果是软链接的话,那么它是直接一个箭头指向text.txt的,并不是像A那样,独立于text.txt存在
total 16
-rw-r--r--. 2 root root 14 Dec 21 10:04 A
lrwxrwxrwx. 1 root root 8 Dec 21 10:08 B -> test.txt
drwx------. 5 elephant elephant 4096 Dec 15 17:28 elephant
drwx------. 17 luhaihui luhaihui 4096 Dec 21 09:28 luhaihui
-rw-r--r--. 2 root root 14 Dec 21 10:04 test.txt
#查看文件本身和对应的软链接和硬链接,发现都可以查看刚才编辑的内容
[root@localhost home]# cat test.txt
I love LINUX
[root@localhost home]# cat A
I love LINUX
[root@localhost home]# cat B
I love LINUX
那么接下来,我们进行删除的操作,也就是删除text.txt文件本身。
[root@localhost home]# ls
A B elephant luhaihui test.txt
[root@localhost home]# rm -rf test.txt
[root@localhost home]# ls
A B elephant luhaihui
[root@localhost home]# cat A #硬链接可以正常访问文件
I love LINUX
[root@localhost home]# cat B #软链接访问,报错!
cat: B: No such file or directory
至此,软链接和硬链接的区别就不言而喻,他们都可以进行指向文件的操作,只不过当删除源文件的时候,硬链接还可以起作用,因为它其实是拷贝了源文件的一份副本,而软链接是真正的指向源文件本身,源文件删除了,自然就指向为空了。