Linux的链接

Linux下具有为一个文件起多个名字的功能,称为链接。如果被链接的文件被存放在系统的目录下,则必须取不同的文件名,而不用再硬盘上为同样的数据重复备份;但如果被链接的文件是存放在不同的目录下,被链接的文件则可以使用相同的文件名,因此只要对一个目录下的文件进行修改,就会完成对所有目录下同名链接文件的修改。需要注意的一点就是,对于某个文件的各链接文件,可以给它们指定不同的存取权限,以控制对信息的共享和增加安全性。

文件链接分为两种:硬链接和符号链接。

1)硬链接:亦称为链接,在建立硬链接时,在别的目录或本目录中增加目标文件的一个目录项,则目标文件就记录在多个目录中了。创建硬链接后,已经存在的文件的Inode会被多个目录文件项使用。一个文件的硬链接数可以在目录的长列表格式的第二列中可以看到,无额外链接的文件的链接数为1.ln命令在默认的情况下,可以创建硬链接,同时增加了链接数,而rm命令则会减少链接数,文件除非链接数为0,否则不会从文件系统中被物理地删除。

Linux下对硬链接的限制:

1.不能对目录文件创建硬链接;

       2.不能在不同的文件系统之间创建硬链接,即链接文件与链接文件必须存在同一个文件系统中。

 2)符号链接:亦称为软链接,即将一个路径名链接到一个文件,这些文件是一种特别的文件,其实就是一个文本文件,文件里包含它所提供链接的另一个文件的路径名,另一个文件是实际包含所有数据的文件。所有读和写文件内容的命令被用于符号链接时,将沿着链接方向前进来访问实际的文件。

   与硬链接的区别:

1.符号链接的确是一个新文件,拥有自己不同的Inode,但硬链接并没有建立新文件;

2.符号链接没有硬链接的限制,可以对目录文件建立符号链接,也可以在不同的文件系统之间建立符号链接。

           使用ln -s来建立符号链接,在建立链接的时候,源文件最好使用绝对路径名,这样可以在任何目录下进行符号链接。如果源文件使用相对路径,在当前的工作路径与要创建的符号链接文件所在路径不同时,就无法进行链接。

   符号链接保持了与源文件或目录之间的区别:

1.删除源文件或目录,只删除数据,不会删除链接。一旦以同样文件名创建源文件,链接将继续指向该文件的新数据;

2.在目录长列表中,符号链接以一种特殊的文件类型显示出来,其第一个字母是l;

3.符号链接的大小是其链接文件的路径名的字节数;

4.当用ls -l命令列出文件时,可以看到符号链接名后有一个箭头指向源文件或目录。

注意点:符号链接文件不是一个独立的文件,它的许多属性依赖于源文件,所以给符号链接文件设置存取权限是无意义的。

拓展:ln命令:链接的对象可以是文件或目录,如果链接指向目录,用户就可以利用该链接直接进入被链接的目录,而不需要给出到达该目录的一长串路径,同时即使删除这个链接,也不会破坏原来的目录,类似于Windows下的快捷方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值