- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软连接和硬链接的区别详解
linux硬链接和软链接的区别????
简而言之,软链接相当于windows中的快捷方式,硬链接相当于一个灾备系统,数据存放在两处,与复制不同
的是两处之间存在同步机制,一处数据的改变会实时同步到另一处,另外,一处数据如果被删除了,不会影响
到另一处的数据.下面是详细的介绍:
????? 硬连接指向的是节点(inode),是已存在文件的另一个名字,修改其中一个,与其连接的文件同时被修
改;对硬链接文件进行读写和删除操作时候,效果和软链接相同。但如果我们删除硬链接文件的源文件,
硬链接文件仍然存在,而且保留了原有的内容。这时,系统就“忘记”了它曾经是硬链接文件,而把他当
成一个普通文件。硬链接文件有两个限制:1、不允许给目录创建硬链接; 2、只有在同一文件系统中的文件之间才能创建链接。
????? 软连接指向的是路径(path),软链接又叫符号链接,这个文件包含了另一个文件的路径名。可以是
任意文件或目录,还可以链接不同文件系统的文件,和win下的快捷方式差不多。 软链接文件甚至可以链
接不存在的文件,这就产生一般称之为断链的问题(或曰“现象),链接文件甚至可以循环链接自己,类
似于编程语言中的递归。
命令格式: ln -s source_path target_path?? //软链接文件Source为源文件 target为目标文件。
ln -d existfile newfile?? //硬链接文件,如果不加任何参数,默认情况下就是硬链接.Newfile 为不是自己建的系统建的。
示例: $ ln httpd.conf httpd1.conf $ ln -s httpd.conf httpd2.conf
第一条为硬链接,第二条为软链接$ ls -li?? //查看一个文件或目录的inode,要通过ls 命令的的 -i参数,inode值相同的文件,他们的关
系是互为硬链接的关系总用量 80 1077669??? -rw-r--r--???? 2 sam?????? adm????????? 34890 10月 31 00:57 httpd1.conf 1077668?? lrwxrwxrwx???? 1 sam?????? adm???????????? 10 10月 31 00:58 httpd2.conf -;
httpd.conf 1077669?? -rw-r--r--???? 2 sam?????? adm????????? 34890 10月 31 00:57 httpd.conf
可以看到,使用ls -li,软连接只产生了10字节的快捷而已,硬连接却实实在在的的拷贝。最前面的
inode硬链接和源文件是一样的,而软链接不一样.对http1.conf进行编辑,可以发现httpd.conf也发生了
一样的变化.
现在使用命令:
$ rm httpd.conf
现在删除链接的源文件,来比较不同之处
代码: $ ls -l 总用量 44 -rw-r--r--???? 1 sam?????? adm????????? 34890 10月 31 00:57 httpd1.conf lrwxrwxrwx???? 1 sam?????? adm???????????? 10 10月 31 00:58 httpd2.conf -; httpd.conf
发现,httpd2.conf实际已经不存在了,是断链,而httpd1.conf变也了普通文件.
一、硬链接
硬链接说白了是一个指针,指向文件索引节点,系统并不为它重新分配inode。可以用:ln命令来建立硬链
接。语法:
ln [options] existingfile newfileln[options] existingfile-list directory
用法: 第一种:为”existingfile”创建硬链接,文件名为”newfile”。第二种:在”directory”目录中,
为 ”existingfile-list”中包含的所有文件创建一个同名的硬链接。常用可选[options] –f 无论”
newfile”存在与否,都创建链接。-n 如果”newfile”已存在,就不创建链接。
下面举一些例子:
$ ls –il13058 -rwx - - - - - - 1 longcheng longcheng 48 8月 5 16:38 file113059 -rwx - - - - - - 1 longcheng longcheng 57 8月 5 16:40 file2$ ln file2 file2hard$ ls –il13058 -rwx - - - - - - 1 longcheng longcheng 48 8
文档评论(0)