Linux 的“硬链接”与“软链接”

文章参考 http://blog.csdn.net/mianjunan/article/details/6685431

 

        软链接相当于windows中的快捷方式,硬链接相当于一个灾备系统,数据存放在两处,与复制不同的是两处之间存在同步机制,一处数据的改变会实时同步到另一处,另外,一处数据如果被删除了,不会影响到另一处的数据.

 

下面是详细的介绍:

        硬连接指向的是节点(inode),是已存在文件的另一个名字,修改其中一个,与其连接的文件同时被修改;对硬链接文件进行读写和删除操作时候,效果和软链接相同。但如果我们删除硬链接文件的源文件,硬链接文件仍然存在,而且保留了原有的内容。这时,系统就“忘记”了它曾经是硬链接文件,而把他当成一个普通文件。

 

软连接命令格式:

ln -s 实际地址 链接地址 //软链接文件

 

例子

扫描二维码关注公众号,回复: 1154203 查看本文章

1、创建软连接 —— /usr/www 指向 /home/www 目录 

[root@auc-linux ~]# ln -s /home/www /usr/www
 
[root@auc-linux usr]# ls -l
lrwxrwxrwx    1 root root     9 4月   4 02:39 www -> /home/www
    

2、删除软链接 

[root@auc-linux usr]# rm www
rm:是否删除符号链接 "www"?yes
[root@auc-linux usr]# ls
bin  etc  games  include  java  lib  libexec  local  sbin  share  src  tmp
    

硬连接命令格式:

ln -d existfile newfile

备注:硬链接文件,ln命令如果不加任何参数,默认情况下就是硬链接. 

[root@auc-linux home]# ln a.xml b.xml
或者
[root@auc-linux home]# ln -d a.xml b.xml

  

硬链接文件有两个限制:

1、不允许给目录创建硬链接;

[root@auc-linux home]# ln -d /home/logs /home/hb
ln: 创建硬链接"/home/hb/logs" => "/home/logs": 不允许的操作

  

2、只有在同一文件系统中的文件之间才能创建链接。

[root@auc-linux usr]# ln -d /home/logs /usr/logs
ln: 创建硬链接"/usr/logs" => "/home/logs": 无效的跨设备连接

 

猜你喜欢

转载自hbiao68.iteye.com/blog/2041004