4 B* W0 Q0 V- }, @5 mdrwxrwxr-x 3 test test 4096 Feb 6 20:48 test1/ / G/ p' R6 N7 W; t& J7 Z& A T. l
[root @test tmp]# rmdir test1 ( a) C* v3 Q ~. |7 k2 O
. \6 z3 d0 d2 R! E, `* prmdir: `test1': Directory not empty " E) b0 p7 C; X4 i' s) d
有点像是 Windows 的『快捷方式』一样,不过, link 的功能要好的多呦! Link 又分为 hard link 与 symbolic link 两种方式,分别来谈一谈: 6 G8 ~* I) m6 B {% L. u+ A
" v# ?& f, v8 c) W- c+ h
Hard Links: ; h/ I1 \8 a9 z刚刚说过,当系统要读取某一个档案的时候,就会先去读 inode table ,然后再根据 inode 的信息到 block area 去将数据取出来利用!而 hard link 就是直接再建立一个 inode 连结到档案放置的 block 区块。也就是说,进行 hard link 的时候,实际上,你的档案内容不会改变,只是你在查询的时候,利用原来的 inode 与后来的 inode 均可被指定到该档案放置的地点,因此两个档案的内容会是一样的!所以读取任何一个 inode 的结果都是存取在同一个档案的内容就是了。不过,这样一来就有个问题啦,因为 inode 是会连结到 block 区域去的,而『目录』本身仅消耗 inode 而已,那么一来的话, hard link 不就不能 link 目录啦?对的!没错! Hard link 有两个最大的限制: 9 P: w' }8 l; c& @
^/ H6 [9 b5 H" ], L; y不能跨 filesystem ,因为不同的 filesystem 有不同的 inode table 嘛!+ b" U4 i; h3 p2 I
不能 link 目录!9 ~" M! {* K: v9 }' t6 Q* Q3 c
Symbolic Links: ; m* y! _% g8 `1 U$ G1 E相对于 hard link , Symbolic link 可就好理解多了,基本上,他就是在建立一个独立的档案,而这个档案会让数据读取指向他 link 的那个档案内容!由于只是利用档案来做为指向的动作,所以,当来源档被删除之后,symbolic link 的档案会『开不了』,会一直说『无法开启某档案!』 " _4 n) [) ^' |, @( m6 M, i% h$ z. b+ l' l: D2 t7 n
用法:ln [-s] [来源档] [目的档] # F) G4 Z8 o5 S1 _( W: Z' }; e3 v: }* x+ q
参数说明: 0 Y# y. r/ E" z/ k- H $ O' |+ M* D- y1 _$ M3 d-s :提供连结档的连结!如果直接以 ln 不加任何参数的话,那么就属于 hard link 啰! 8 M* {8 {5 z+ h7 @9 i# T
6 U# p6 M' b N& r( D4 t5 T
% M" O( C @7 y