软链接
相当于对windows下的快捷方式
硬链接
可以理解为对同一块磁盘取了两个名字,分别指向这块磁盘,所以删除一个对另一个没有影响
演示示例
#创建两个目录 mkdir dir1 dir2 cd dir1 #创建两个文件 touch file1 file2 #为file1在dir2创建一个硬链接 ln file1 ../dir2/strong #为file2在dir2创建一个软件连接 ln -s file2 ../dir2/soft cd ../dir2 ll #显示 #lrwxrwxrwx 1 root root 5 Nov 27 09:58 soft -> file2 可以直接看出这个是软连接 #-rw-r--r-- 2 root root 0 Nov 27 09:50 strong #向文件中写入一些信息 echo "这是一个硬链接">> strong cd ../dir1 cat file1
#这是一个硬链接 rm -rf file1 #不会影响/dir2/strong ,仍然存在并且内容也在
echo "这是一个软连接">>file2
//以下会显示一样的信息
cat file2
cat 。。/dir2/soft
//修改dir2/soft dir1/file2也会跟着改变
//如果先删除了dir2/soft对dir1/file2没有影响
//但是如果删除了dir1/file2 此时dir2/soft就没法访问了不知道指向了哪里
补充ln参数
-f : 链结时先将与 dist 同档名的档案删除
-d : 允许系统管理者硬链结自己的目录
-i : 在删除与 dist 同档名的档案时先进行询问
-n : 在进行软连结时,将 dist 视为一般的档案
-s : 进行软链结(symbolic link)
-v : 在连结之前显示其档名
-b : 将在链结时会被覆写或删除的档案进行备份
-S SUFFIX : 将备份的档案都加上 SUFFIX 的字尾
-V METHOD : 指定备份的方式
--help : 显示辅助说明
--version : 显示版本