centos里软硬链接问题

来源:互联网 发布:北京增值税开票软件 编辑:程序博客网 时间:2024/06/18 10:40

软硬链接的区别:

硬链接:

创建硬链接会增加额外的记录项以引用文件
对应于同一文件系统上一个物理文件
每个目录引用相同的 inode 号
创建时链接数递增
删除文件时:
rm 命令递减计数的链接
文件要存在,至少有一个链接数
当链接数为零时,该文件被删除
不能跨越驱动器或分区
语法 :
ln filename [linkname ]

软链接:

一个符号链接指向另一个文件
ls - l的 的  显示链接的名称和引用的文件
一个符号链接的内容是它引用文件的名称
可以对目录进行
可以跨分区
指向的是另一个文件的路径;其大小为指向的路径字符串的
长度;不增加或减少目标文件inode 的引用计数;
语法:
ln -s filename [linkname]

链接的用法

下面是简单的用法实例:

硬链接

记住硬链接不能跨分区,sda1与sda2是不同的分区。

[root@centos7init3 ~]#ln /root/date /root/link[root@centos7init3 ~]#ll -itotal 4100663363 -rw-------. 1 root root 1482 Jul 15 09:59 anaconda-ks.cfg100663402 -rw-r--r--. 2 root root    0 Jul 15 16:32 date100663402 -rw-r--r--. 2 root root    0 Jul 15 16:32 link


用软链接的时候记住路径要用相对路径,被链接的文件的路径要用相对于链接文件的相对路径,这样确保不会出错。

软链接

在同一个目录下

[root@centos7init3 app]#ln -s f1 f1link[root@centos7init3 app]#ll -itotal 068 drwxr-xr-x. 3 root root 18 Jul 20 10:22 dir167 -rw-r--r--. 1 root root  0 Jul 19 21:43 f169 lrwxrwxrwx. 1 root root  2 Jul 20 10:28 f1link -> f1[root@centos7init3 app]#

在同一目录下的不同子目录

[root@centos7init3 app]#tree ..├── dir1│   └── dir2├── f1└── f1link -> f12 directories, 2 files[root@centos7init3 app]#ln -s ../../f1 /app/dir1/dir2/f1link[root@centos7init3 app]#ll /app/dir1/dir2/total 0lrwxrwxrwx. 1 root root 8 Jul 20 10:33 f1link -> ../../f1[root@centos7init3 app]#
关键点:就本例来说,f1的路径要看链接文件所在目录相对于被链接文件的父目录的相对路径,有点绕口,可以结合实例理解。

在不同目录,可以跨分区

[root@centos7init3 ~]#ln -s ../app/f1 /root/f1link[root@centos7init3 ~]#lltotal 4-rw-------. 1 root root 1482 Jul 15 09:59 anaconda-ks.cfg-rw-r--r--. 2 root root    0 Jul 15 16:32 datelrwxrwxrwx. 1 root root    7 Jul 20 11:05 f1link -> ../app/f1-rw-r--r--. 2 root root    0 Jul 15 16:32 link[root@centos7init3 ~]#
其实不同目录好写,就是在同目录下的不同子目录有点坑。


自己理解,如有错误请指教。









原创粉丝点击