2026/2/7 4:08:22
网站建设
项目流程
网站首页备案号链接,佛山网站建设慕枫,南京做企业网站公司哪家好,宁波模板建站哪家服务专业Linux系统中#xff0c;有软连接和硬连接两种不同的文件链接方式。硬连接是对文件的另一个目录项#xff0c;所有硬连接都指向相同的inode#xff0c;就好比一块存储数据的内存有着多个名字#xff0c;每增加一个硬连接#xff0c;连接数就会加一。当连接数为0时#xff…Linux系统中有软连接和硬连接两种不同的文件链接方式。硬连接是对文件的另一个目录项所有硬连接都指向相同的inode就好比一块存储数据的内存有着多个名字每增加一个硬连接连接数就会加一。当连接数为0时相对应的内存就会被彻底删除。软连接就好比Windows系统中的快捷方式最终指向的是源文件一旦源文件删除则软连接失效而且软连接和源文件有这个不同的inode号。下面介绍ln命令基本用法方便后面做演示。硬连接 ln 源文件 连接文件软连接 ln -s 源文件 连接文件大家自行找位置创建测试文件我这里使用的是/home/elf/work/test分别创建hard.txt、soft.txt、source.txt文件最后使用stat命令查看最终结果。$ stat ./*File: ./hard.txtSize: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 803h/2051d Inode: 5279891 Links: 2Access: (0644/-rw-r--r--) Uid: ( 1000/ elf) Gid: ( 1000/ forlinx)Access: 2024-11-06 21:31:37.948957601 0800Modify: 2024-11-06 21:31:37.948957601 0800Change: 2024-11-06 21:34:43.967331843 0800Birth: 2024-11-06 21:31:37.948957601 0800File: ./soft.txt - source.txtSize: 10 Blocks: 0 IO Block: 4096 symbolic linkDevice: 803h/2051d Inode: 5279903 Links: 1Access: (0777/lrwxrwxrwx) Uid: ( 1000/ elf) Gid: ( 1000/ forlinx)Access: 2024-11-06 21:34:45.739296928 0800Modify: 2024-11-06 21:32:30.477947367 0800Change: 2024-11-06 21:32:30.477947367 0800Birth: 2024-11-06 21:32:30.477947367 0800File: ./source.txtSize: 0 Blocks: 0 IO Block: 4096 regular empty fileDevice: 803h/2051d Inode: 5279891 Links: 2Access: (0644/-rw-r--r--) Uid: ( 1000/ elf) Gid: ( 1000/ forlinx)Access: 2024-11-06 21:31:37.948957601 0800Modify: 2024-11-06 21:31:37.948957601 0800Change: 2024-11-06 21:34:43.967331843 0800Birth: 2024-11-06 21:31:37.948957601 0800上图中source.txt是源文件hard.txt是硬连接文件soft.txt是软连接文件。其中硬连接和源文件的inode号和连接数Links是一样的这里因存在源文件和硬连接文件所以links数为2。软连接的inode数和link数与源文件都不一致正好验证了前面的理论。下面来说说硬连接和软连接的特点软连接可以跨文件系统创建并可以链接到目录。但删除源文件会导致符号链接失效变成悬链接。硬连接不能跨越文件系统创建也不能链接到目录。但删除一个硬连接不影响其他硬连接或者源文件数据直到最后一个硬连接被删除时文件数据才会被清除。创建软连接可以使用symlink()函数创建硬连接文件可以使用link() 函数下面就来介绍一下这两个函数。