Linux常用命令详解之文件处理命令三

十二,(1)命令名称:ln

       (2)命令原意:link

      (3)命令所在路径:/bin/ln

      (4)执行权限:所有用户

      (5)功能描述:产生连接文件

      (6)语法:ln  -s  [源文件名]  [目标文件]      s表示soft(软的)

                     -s  表示创建软连接(不加则表示产生硬连接)

             如:$  head -num  /test/aa

 

注意:软连接和硬连接的区别

软连接的特点:

(1) 软连接的类型是l

(2) 软连接的权限都是rwxrwxrwx,即相当于所有用户都可以操作,但是软连接指向了源文件,即你点击软连接文件的时候,访问的还是源文件,所以重点在于你对源文件有什么操作权限

(3) 软连接很小,它只是一个符号连接

(4) 软连接的时间值是创建软连接的时间,而源文件的时间是创建文件的时间或是修改文件的时间

(5) 总之,软连接相当于windows中的快捷方式,用途和用法都差不多

硬连接的特点:

(1) 硬连接后,新文件的详细信息和源文件的详细信息是一样的,大小、类型都是一样的,所以,硬链接类似于拷贝,但和拷贝还是有点不同的,那就是硬链接是同步更新的,而cp则不是同步更新

与拷贝的区别还在于:cp的时候,新的文件的时间值是复制时的时间,如果你想新的文件的时间和源文件的相同,则要叫上-p,即cp 源文件  目标文件

(2) 也就是说,硬链接相当于cp  -p 加同步更新

所以硬链接可以用于备份。所以软连接和硬链接的另一个非常大的区别就是:当把源文件删除后,软连接是无法再访问的,而硬链接可以

注意:软连接肯定也是同步更新的,很好理解,它只是一个快捷方式,访问的还是源文件

扩展:那么硬链接为什么可以同步更新呢?

(1) 前备知识:Linux的内核(处理所以事情)不认识字母,只认识数字,也就是说Linux内核中,所以要处理的事物都要有一个数字标识,如:文件名就必须有一个对应的数字标识,这个数字就是i节点(inode),用户必须有uid、用户组必须有组id、进程必须有pid,内核是调用这些数字标识对文件等进行处理的;

(2) 每个文件必须有一个i节点,没有i节点就永远没法访问该文件了;但是反过来,一个i节点不一定只对应一个文件,这里的硬连接后的文件和源文件使用的就是同一个i节点,所以内核看到这个i节点后,它不知道哪个是源文件、哪个是硬链接文件,就傻乎乎的都往两个文件更新

还有一点要注意:软连接可以跨文件系统生成,而硬连接不可以。即:

文件系统----à我们创建文件系统分区时可以创建根分区/、swap分区、/test分区等任意个分区,硬连接是不可以跨分区来生成的,会提示:无效的跨设备连接

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值