Centos链接ln

阅读更多
1. 链接命令

(1) 链接命令(link) ln
    ln -s [源文件] [目标文件]
        选项:
            -s 创建软链接

(2) 硬链接特征:
1) 拥有相同的i节点和存储block块,可以看作是同一个文件;
2) 可通过i节点识别;
3) 不能跨分区;
4) 不能针对目录使用;

(3) 软链接特征:
1) 类似Windows快捷方式;
2) 软链接拥有自己的I节点和Block块,但是数据块中只保存原有文件的文件名和I节点号,并没有实际的文件数据;
3) lrwxrwxrwx l 软链接 软链接文件权限都为 rwxrwxrwx
4) 修改任意文件,另一个都改变;
5) 删除原文件,软链接不能使用;

(4) 软链接和硬链接的重要区别是假如把原文件删除,软链接则不能用,但是假如是硬链接,删除原文件的话,不影响硬链的使用;


2. 使用链接

1) 创建硬链接

创建硬链接
    [root@localhost ~]# ln /root/anaconda-ks.cfg /tmp/ana.cfg

查看原文件和链接的关系    
    [root@localhost ~]# vi /root/anaconda-ks.cfg
    点击i,进入insert模式
    修改内容
    按Esc退出,在命令行写入:wq命令,最后按Enter即可
    [root@localhost ~]# cat /tmp/ana.cfg
    发现内容也发生了改变
查询两个文件的 inode一致
    [root@localhost ~]# ls -i /root/anaconda-ks.cfg /tmp/ana.cfg
    删除其中一个也不影响另一个的使用
    
2) 创建软链接

创建硬链接
    [root@localhost ~]# ln -s /root/anaconda-ks.cfg /tmp/link.cfg
    [root@localhost ~]# ll /tmp/
    会显示link.cfg -> /root/anaconda-ks.cfg

查询两个文件的 inode不一致
    [root@localhost ~]# ls -i /root/anaconda-ks.cfg /tmp/link.cfg
    软链接是指向原文件的引用,存的仅仅是地址
删除原文件,软连接就无效了
    [root@localhost ~]# vi /tmp/link.cfg
    显示空
    [root@localhost ~]# cat /tmp/link.cfg
    提示没有文件
修改一个,另一个也发生变化
    [root@localhost ~]# echo 2222 >> /root/anaconda-ks.cfg
    [root@localhost ~]# cat /root/anaconda-ks.cfg
    1111
    2222
    [root@localhost ~]# cat /tmp/link.cfg
    1111
    2222
    [root@localhost ~]# echo 3333 >> /tmp/link.cfg
    [root@localhost ~]# cat /tmp/link.cfg
    1111
    2222
    3333
    [root@localhost ~]# cat /root/anaconda-ks.cfg
    1111
    2222
    3333

你可能感兴趣的:(CentOS)