[root@localhost ~]# ln [选项] 源文件 目标文件
选项:
-s:建立软链接文件。如果不加 "-s" 选项,则建立硬链接文件;
-f:强制。如果目标文件已经存在,则删除目标文件后再建立链接文件;
1、创建硬链接:
建立硬链接文件,目标文件没有写文件名,会和原名一致
也就是/tmp/cangls 是硬链接文件
2、创建软链接:
linux下的软链接类似于windows下的快捷方式。
实例:
ln -s httpd.conf confighttp其中 httpd.conf 就是源文件,confighttp是链接文件名,其作用是当编辑confighttp
,实际上是链接编辑httpd.conf。
如果要删除软链接:
rm -rf confighttp这样只会删除confighttp链接文件,而不会删除源文件httpd.conf。
相对于软连接,还有硬链接,
建立硬链接命令:
ln httpd.conf confighttp硬链接文件相当于一个文件存储在两个位置,可以有效防止误删。
由 1 号inode 读取到连结档的内容仅有档名,根据档名链接到正确的目录去取得目标文件的inode ,最终就能够读取到正确的数据了。
创建软连接,从下图可以看出软连接的大小是11个字节,对比/etc/passwd和passwdlns可知他们不是同一个文件。
对指向文件的的软连接 :使用cp oldfilename newfilename ,是对软连接指向的文件进行复制,属性和大小都和指向文件相同。
如果只是想复制软连接可以使用:cp -d filename1 filename2
复制指向目录的软连接 :
使用cp -r dir1 dir2 可以看出对于指向目录的软连接的复制是对软连接复制的。
如果我就是相同过软连接复制目录下的全部文件,该如何呢?
使用rm删除文件结果如下,可以看到删除的是软连接文件。
使用rm删除软连接指向的源文件,赶紧将备份的passwd文件还原。
对于目录的删除是对软连接进行删除还是目标目录:
在目录后不加/是对软连接进行 *** 作:
在目录后加上/是对连接目录进行删除:下图可以看出/tmp/testdir的大小已经变成了6了,删除了目录里的全部文件。
对软连接改变权限会对源文件有什么样的影响 :不管是文件软连接还是目录软连接,对软连接进行修改权限,修改的是目标文件和目录的权限
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)