欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

什么是Linux软链接和Linux硬链接

程序员文章站 2022-03-22 11:05:56
linux链接分两种,一种被称为硬链接(hard link),另一种被称为软链接(symbolic link)。默认情况下,ln命令产生硬链接。 一、[硬链接]-->...

linux链接分两种,一种被称为硬链接(hard link),另一种被称为软链接(symbolic link)。默认情况下,ln命令产生硬链接。

一、[硬链接]-->指通过索引节点来进行连接。在linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(inode index)。在linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户 就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和 其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

语法:ln 【源文件】 【硬连接文件】

[root@centos-study pc]# touch test1
[root@centos-study pc]# ll
total 0
-rw-r--r-- 1 root root 0 dec 10 00:34 test1
[root@centos-study pc]# ln test1 test2
[root@centos-study pc]# ll
total 0
-rw-r--r-- 2 root root 0 dec 10 00:34 test1
-rw-r--r-- 2 root root 0 dec 10 00:34 test2
[root@centos-study pc]# 

如果删除上面的test1,那么test2是会继续存在的,并且数据也会保留

[root@centos-study pc]# rm test1
rm: remove regular empty file `test1'? y
[root@centos-study pc]# ll
total 0
-rw-r--r-- 1 root root 0 dec 10 00:34 test2

硬连接总结:

(1)硬链接的inode相同

(2)只能对文件创建,不能应用于目录

(3)不能跨分区

二、软链接 

  相当于windows中的快捷方式,由于软连接所创建的文件为一个独立的新的文件,所以会占用掉indoe与block

系统有个/root/crontab,它是/etc/crontab的软连接,如果删掉源文件/root/crontab,那么/etc/crontab这个文件的数据也不能查看了,就好像windows里面的桌面快捷方 式,源文件被删除了,快捷方式也失效了。

语法:ln -s  【源文件或目录】  【软件链名字】

范列:

[root@centos-study pc]# ll
total 0
-rw-r--r-- 1 root root 0 dec 10 00:34 test2
[root@centos-study pc]# ln -s test2 test3
[root@centos-study pc]# ll
total 0
-rw-r--r-- 1 root root 0 dec 10 00:34 test2
lrwxrwxrwx 1 root root 5 dec 10 00:42 test3 -> test2
[root@centos-study pc]# 

  如果我删除源文件,那么软连接文件也将无法查看里面的数据,并且查看软连接的时候,它会一直闪。  

什么是Linux软链接和Linux硬链接

软连接总结:

(1)可以应用于目录

(2)可以跨文件系统

(3)不会增加被链接文件的链接次数

(4)大小为指定的绝对路径所包含的字符总数

(5)有自己的inode号

(6)权限无关紧要

三、总结 

什么是Linux软链接和Linux硬链接

以上就是本文的全部内容,希望对大家的学习有所帮助。