Linux_15硬链接和软链接的创建
2019-05-19 本文已影响21人
Y大宽
视频在这里
p12-p17
p12 mv
给文件改名或移动(剪切)
mv oldfile newfile
注意:如果newfile不存在,则oldfile自动改名为newfile。
假如存在newfile文件夹,则oldfile被移动到newfile文件夹下。
p13 硬链接的创建:只针对文件
-
只能对文件进行硬链接,不能对目录进行硬链接
硬链接不是快捷方式,相当于原来文件的备份,但又不是真正的备份。
本质是一个文件有好几个名字,而改变任何一个名字下内容的时候另外都相应变化,如果删除其中任何一个名字,其他不会变化,是平等关系
注意:不能跨分区(可以同分区不同目录)创建硬链接(考虑硬链接的本质)
文件夹不能创建硬链接
ln file.txt hardfile.txt
- hardfile.txt和file.txt内容一模一样,显示的文件大小一样,看起来相当于做了一个copy,实际并不是这样。一旦文件被创建,就会在磁盘上划分一块区域进行储存,可以称为inode。硬链接无论做几个,都是指向这个inode(i结点)。相当于一个实际存在的文件有好几个名字,但是当任何一个硬链接做改变的时候,指向的磁盘空间也会改变,所以不仅仅是几个备份。类似“一荣俱荣,一损俱损”
- 一般都是针对不同目录创建硬链接,不同分区创建软链接
- 而软链接,通过硬链接链接到磁盘空间。
p14软链接的创建
这部分内容在视频中没有。
ll
或readlink
查看
n -s file1 sf.file1
$ ll
total 12
drwxr-xrwx 2 root root 4096 5月 20 08:38 ./
drwxr-xr-x 6 yinli yinli 4096 5月 19 21:57 ../
-rwxrwxrw- 1 yinli yinli 0 5月 19 21:59 file1*
lrwxrwxrwx 1 pc pc 5 5月 20 08:38 sf.file1 -> file1*
-rwxrwxrw- 1 root root 34 5月 19 21:22 wc_test*
file1和sf.file1有相同的内容,但有不同的inode编号。后者依附前者存在。相当于windows的快捷方式。只是指针而已,其大小来自于路径。
- 软链接可以针对目录创建
- 硬链接只针对文件
- 做软链接的时候,被链接的文件的路径可以写绝对路径,如果要写相对路径,一定要写针对快捷方式的相对路径,系统用的都是相对路径。
- 文件部署的时候用处很大,比如版本升级。只需要创建一个软链接即可。当版本升级,只需rm旧指针,重新建立新版本的链接即可。
硬链接和软链接的区别
- 本质:
硬链接:一个文件多个名字,同一个文件
软链接:一个文件对应的快捷方式,不同文件- 1 链接数,硬链接增长链接数
- 2 软链接可以跨分区,硬链接不支持
- 3 目录硬链接不支持目录(文件夹),软链接支持
- 4 原始和链接文件关系:硬链接平等
- 5 删除原始文件,硬链接不受影响,软链接失效
- 6 大小。软链接大小由路径决定。