Linux链接

下午对Linux的链接进行了学习,总结经验如下:

链接分为两种,即硬联接、软链接

先说说链接的创建吧


<1>ln [options] yourfile    linkfile(yourfile 就是你想要被链接的文件,linkfile是你创建出来的链接文件)
<2>ln [options] allchildfiles linkpath

-f 建立时,将同档案名删除.
-i 删除前进行询问.

以上是创建硬联接的方式

软链接与之不同之处 仅仅在于 需要在ln之后加‘-s’

用法:
上述的第一种就是为yourfile创建硬链接,文件名为linkfile   

如:ln home/test1  home/test2。

而第二种则是给allchildfiles所有的文件都在linkpath中建立一个同名的硬链接。

如:ln /home/xxj/game/* /home/xxj/game2

其中[options] –f 无论/home/xxj/game2是否存在都创建链接;-n 如果/home/xxj/game2已存在就不创建链接。


两种链接的区别:

1.创造方式不再叙述了

2.本质区别:硬链接其实就是创造了一个新的指向源文件的指针而不是重新去建立一个文件,创造之后于源文件没有任何区别,同时管理使用的是同一个文件,值得一提的是,由于文件创造了硬联接,其I节点的链接数目就会随之变成对应个数,在对该文件删除时,只有再这个文件的链接数为零时(即硬联接于原文件全删除)才会真正意义上的删除此文件。

这也正是我所说的创造出来的硬链接文件于源文件没有区别的体现。

而软链接则不同,其实软链接就相当于windows下的快捷方式,如果原文件发生了变化就会影响软链接的正常使用。此外既然是快捷方式,其源文件的连接数就不合发生变化

值得一提的是,软链接虽然是快捷方式但在查询的时候仍然也有自己的大小(于源文件的大小不同欧)。软链接不直接使用i节点号作为文件指针,而是使用文件路径名作为指针。所以 删除连接文件 对源文件无影响,但 是 删除 源文件,连接文件就会找不到要指向的文件 。软链接有自己的inode,并在磁盘上有一小片空间存放路径名。软连接可以对一个不存在的文件名进行连接 ,软连接可以对目录进行连接。

软连接可以 跨文件系统 ,硬连接不可以 。
实践的方法就是用共享文件把windows下的 aa.txt文本文档连接到linux下/root目录 下 bb,cc . ln -s aa.txt
/root/bb 连接成功 。ln aa.txt /root/bb 失败 。


两种链接的利弊:

<一>硬链接

弊端:

(1)不可以在不同文件系统的文件间建立链接
(2)只有超级用户才可以为目录创建硬链接。

<二>软链接

弊端:

原文件发生了变回就会影响软链接的正常使用

备注:I节点 :它是UNIX内部描述文件特性的数据结构.我们通常称其为文件索引结点(又或信息结点),它包括文件数据块在

磁盘上的地址。每个I节点都有自己的标志号(文件顺序号)I节点包含的信息 有:

1.文件类型

2.文件属主关系

3.文件的访问权限

4.文件的时间截.



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值