軟鏈接與硬鏈接是用來干什么的呢?
為解決文件的共享使用,Linux 系統(tǒng)引入了兩種鏈接:硬鏈接 (hard link) 與軟鏈接(又稱符號鏈接,即 soft link 或 symbolic link)。鏈接為 Linux 系統(tǒng)解決了文件的共享使用,還帶來了隱藏文件路徑、增加權(quán)限安全及節(jié)省存儲等好處。
1.硬鏈接(基于索引節(jié)點的共享方式)
由于linux下的文件是通過索引節(jié)點(Inode)來識別文件,硬鏈接可以認(rèn)為是一個指針,指向文件索引節(jié)點的指針,系統(tǒng)并不為它重新分配inode。每添加一個硬鏈接,文件的鏈接數(shù)就加1。
硬鏈接存在的問題
當(dāng)多個用戶共享一個文件時,文件所有者刪除了該文件,也就是刪除了該文件的索引結(jié)點,那么其他用戶指向該索引節(jié)點的指針就會懸空。
2.軟鏈接(基于符號鏈實現(xiàn)的文件共享)
為了使用戶b共享用戶a的文件F,由操作系統(tǒng)創(chuàng)建一個LINK類型的新文件,也叫F,它被寫入到用戶b的目錄中,以實現(xiàn)用戶b的目錄與文件F的鏈接。同名新文件只包含F(xiàn)的路徑名。這樣的鏈接方法叫符號鏈接(軟鏈接)。
只有文件的所有者才擁有指向其索引節(jié)點的指針,而共享該文件的其他用戶只有該文件的路徑名,并不擁有指向其索引節(jié)點的指針。這樣就避免了指針懸空的問題。
軟鏈接克服了硬鏈接的不足,沒有任何文件系統(tǒng)的限制,任何用戶可以創(chuàng)建指向目錄的符號鏈接。因而現(xiàn)在更為廣泛使用,它具有更大的靈活性,甚至可以跨越不同機器、不同網(wǎng)絡(luò)對文件進行鏈接。
總結(jié)區(qū)別如下:
硬鏈接的查找速度比軟鏈接快。
硬鏈接是多個指針指向一個 inode 節(jié)點,而軟鏈接則是創(chuàng)建多個新的link文件,link里面存放目標(biāo)文件路徑。
硬鏈接會刪除增加會改變被訪問文件的鏈接計數(shù),軟鏈接不會。文章來源:http://www.zghlxwxcb.cn/news/detail-416762.html
硬鏈接無法跨分區(qū)、跨設(shè)備建立,軟鏈接可以。文章來源地址http://www.zghlxwxcb.cn/news/detail-416762.html
到了這里,關(guān)于408操作系統(tǒng)-區(qū)分文件共享的兩種方式:軟鏈接和硬鏈接的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!