Linux 趣味小知识--软硬连接以及应用
前言
链接文件在Linux中的使用是很普遍的,也是非常重要的,合理的使用链接文件能提高一定的效率哦。但,混乱的链接会是一场灾难。
概念
文件和文件夹是具有属性的,属性包括:文件类型,文件修改,创建时间戳,文件权限,
Linux中链接分为软链接和硬链接,软链接对标的是Windows的链接,硬链接是Linux中的独有概念,因此,在Linux中只要见到软链接就等于Windows中的快捷方式,但是,Linux的软链接是互相同步的。必须这么理解并且记忆。
硬链接的概念就象是一个完全镜像体,并且这些硬链接之间是无间的可同步的镜像,可以理解为完全相同的克隆体,并且克隆体之间的行为方式等等一切都是相同的,除了名字剩下的都是一样的。
说了半天还是实验来证明吧。
软链接:命令为 ln -s 源文件(夹) 目标文件 (夹)
新建一个文件并软链接该文件到另一个分区的目录内,假设源文件为a,软链接文件为b,那么,在a文件内的修改,比如添加内容,b文件也会同步,在b文件内的修改也会同步到a文件内,这个就是软链接的功能了:同步文件或者文件夹的内容。
软链接的建立必须要注意,源文件或者源文件夹必须是绝对路径,源文件或者文件夹删除了,目标文件也就是链接文件就会失效,也就是不可访问了。软链接可以跨分区使用。链接的目标文件会自动拥有777满权限。
硬链接:命令为 ln -d 源文件 目标文件
硬链接不支持文件夹,只支持文件,只可以本分区内链接。但,由于链接是单独的仅仅名字不同的文件,可作为保护措施。
总结:
ln命令限制比较多,通常软链接使用在配置文件之间,作用为迅速同步,保护源文件。同时赋予满权限,使用的范围很广。但需要注意,链接时最好源和目标都使用绝对路径。在脚本内使用时,为了脚本不会遇到非法错误而终止,通常为 ln -sf 源文件(夹) 目标文件(夹),强制链接而不管目标是否存在而引起脚本崩溃。
注意了,软链接的文件是满权限的文件,因此,不能滥用软链接,尤其是对于重要的可执行文件。
硬链接也具有迅速同步,保护源文件的功能,但由于无法跨分区使用,限制了它的使用,使用的机会极少,通常,极为重要的文件使用硬链接保护,从而防止误删除源文件造成严重后果。最后说一句,硬链接安全可靠,只是不能跨分区,不能链接目录毁了它。