赞
踩
目录
目前Linux中比较常用的是软连接,硬连接不常用,掌握基本的软连接常识即可
语法:ln -s [源文件] [目标文件]
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ln -s hello.txt hello.txt.soft
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ls -lh
- total 8.0K
- -rw-rw-r-- 1 liu liu 4.2K 1月 19 22:17 hello.txt
- lrwxrwxrwx 1 liu liu 9 1月 19 22:17 hello.txt.soft -> hello.txt
特征:
语法:ln [源文件] [目标文件]
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ln hello.txt hello.txt.hard
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ls -lh
- total 16K
- -rw-rw-r-- 2 liu liu 4.2K 1月 19 22:17 hello.txt
- -rw-rw-r-- 2 liu liu 4.2K 1月 19 22:17 hello.txt.hard
特征:
1. 进行硬连接本质上是进行两步操作:拷贝+同步更新,如果源文件进行更新,则硬连接对应的文件内容也会实时更新
2. 如果源文件丢失,硬连接依旧可以访问。因为它进行了拷贝的操作
3. 软硬连接可通过i节点识别。如代码段所示,软连接与源文件节点不同,但硬连接与源文件i节点相同,由于一个文件一定有一个i节点,但是一个i节点不一定只对应一个文件。硬链接一个i节点对应多个文件。当把一个文件删除,另外一个文件依旧存在。且两个文件能够同步更新,因为当对文件进行写操作的时候在内核层面上的操作针对i节点,但是i节点能够同时映射到2个文件,所以可以同步更新。
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ls -i
- 92230489 hello.txt 92230489 hello.txt.hard 92230490 hello.txt.soft
4. 不能跨分区进行连接。比如 把 /home 目录下的文件连接到 /boot 目录下,这是不允许的。但是软连接是允许的,如下代码段所示:
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ln hello.txt /home/liu/hello.txt.hard
- ln: failed to create hard link '/home/liu/hello.txt.hard' => 'hello.txt': Invalid cross-device link
5. 硬连接不可以针对目录使用,只能针对文件。如下代码段所示:
- liu@SLR:/hd1/Dling/lane/Wmq/test$ ln dir1 dir1.hard
- ln: dir1: hard link not allowed for directory
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。