1 概述

日常工作中,需要对文件或者是目录创建链接,使得工作更加方便

2 硬链接

硬链接用于创建文件,不能用于创建目录

创建硬链接会增加额外的记录项以引用文件

对应于同一文件系统上一个物理文件

每个目录引用相同的inode号

创建时链接数递增

删除文件时:

rm命令递减计数的链接

文件要存在,至少有一个链接数

硬链接相当于直接做了cp,任何一个链接信息都不会丢失,当链接数为零时,该文件被删除

不能跨越驱动器或分区

语法:

ln filename [linkname]

例子 aa是源,bb是新生成的链接名

ln aa bb

3 软链接

一个符号链接指向另一个文件

ls -l的显示链接的名称和引用的文件

一个符号链接的内容是它引用文件的名称

可以对目录进行

可以跨分区

指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数;

软链接创建注意事项

软链接目的名称可以不存在,如果源是文件夹,且要生成的文件夹已经存在,会在该即将生成文件夹目录下重新创建一个目录是输入目的地的名称

如果源和目都是文件,那么目的的文件名不能存在,才能创建成功

源地址和地址可以都写决定路径

源地址如果要写相对路径,要相对当前的目录来说的路径

软链接inode节点数不会增加,链接数也不会增加

任何生成的硬链接的条目被删掉,信息都不会丢失,但是,如果把源删掉,所有的软链接都将无效

重新创建一个被删掉的相同名字的软链接源,则软链接恢复,但是内容是新的链接的内容

语法:

ln -s filename [linkname]

例子  /sharedisk/ 是源, /root/share 是新生成的软链接名

ln -s /sharedisk/ /root/share

4 特殊情况

这里通过mount的命令可以实现把文件挂到其他分区的作用,达到的效果和给文件夹穿件软链接一样,但是挂载点的文件夹要存在,链接数不会增加,而且可以跨分区创建

mount  -B  |  --bind 源文件夹  挂载点文件夹

例子

mount -B /boot/tt  ss2

mount --bind  /boot/tt  /root/ss3