鏈接文件是Linux文件系統(tǒng)的一個(gè)優(yōu)勢(shì),它可以保存一份物理文件副本和多個(gè)虛擬副本。這種虛擬的副本稱為 鏈接 。鏈接是目錄中指向文件真實(shí)位置的占位符。Linux系統(tǒng)中有兩種鏈接:符號(hào)鏈接和硬鏈接。
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供龍灣網(wǎng)站建設(shè)、龍灣做網(wǎng)站、龍灣網(wǎng)站設(shè)計(jì)、龍灣網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、龍灣企業(yè)網(wǎng)站模板建站服務(wù),十年龍灣做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
符號(hào)鏈接是實(shí)實(shí)在在的文件,它指向虛擬目錄結(jié)構(gòu)中某個(gè)地方的另一個(gè)文件。兩個(gè)文件通過符號(hào)鏈接在一起,內(nèi)容并不相同。要為一個(gè)文件創(chuàng)建一個(gè)符號(hào)鏈接,原始文件必須存在。 ln -s 命令用來創(chuàng)建符號(hào)鏈接。
硬連接會(huì)創(chuàng)建獨(dú)立的虛擬文件,其中包含了原始文件的位置和信息,但它們從根本上是一個(gè)文件,引用硬連接文件就等同于引用了源文件。創(chuàng)建硬連接時(shí)源文件也必須存在,不過ln命令不需要加上 -s 參數(shù)。
參考文獻(xiàn):
LN的意思有很多,列舉說明如下:
ln是linux中有一個(gè)非常重要命令,請(qǐng)大家一定要熟悉。它的功能是為某一個(gè)文件在另外一個(gè)位置建立一個(gè)同步的鏈接,這個(gè)命令最常用的參數(shù)是-s,具體用法是:ln –s源文件目標(biāo)文件。
ln自然對(duì)數(shù),以常數(shù)e為底數(shù)的對(duì)數(shù)。記作lnN(N0)。在物理學(xué),生物學(xué)等自然科學(xué)中有重要的意義。一般表示方法為lnx。數(shù)學(xué)中也常見以logx表示自然對(duì)數(shù)。
LI-NING簡稱為LN。Make The Change”新口號(hào),取代原來的“一切皆有可能”;而新標(biāo)識(shí)將在原有標(biāo)識(shí)視覺效果基礎(chǔ)上,抽象李寧原創(chuàng)的“李寧交叉”動(dòng)作,又以“人”字形詮釋運(yùn)動(dòng)價(jià)值觀。
ln表示斷路器的額定電流。如ln=160A就表示該斷路器的額定電流是160A。LN在動(dòng)漫中是指“輕小說”(light novel)的意思。同時(shí)還指動(dòng)漫《死亡筆記》中的同人CP,即L尼亞。ln還指插曲。
連接文件或目錄。這里有兩點(diǎn)要注意:
第一、ln命令會(huì)保持每一處鏈接文件的同步性,也就是說,不論你改動(dòng)了哪一出,其它的文件都會(huì)發(fā)生相同的變化;
第二、ln的鏈接有軟連接和硬鏈接兩種,軟鏈接就是ln –s ** **,它只會(huì)在你選定的位置上生成一個(gè)文件的鏡像,不會(huì)占用磁盤空間,硬鏈接ln ** **,沒有參數(shù)-s, 它會(huì)在你選定的位置上生成一個(gè)和源文件大小相同的文件,無論是軟連接還是硬鏈接,文件都保持同步變化。
1、首先有一個(gè)目錄dir, 執(zhí)行l(wèi)n -s dir dir_link 創(chuàng)建目錄的軟鏈接。
2、重新創(chuàng)建mkdir源目錄,目錄軟鏈接重新生效。
3、執(zhí)行命令ln dir dir_hard,創(chuàng)建目錄的硬鏈接。
4、執(zhí)行命令ln -s file file_link,創(chuàng)建文件file的軟鏈接file_link。
5、執(zhí)行命令ln file file_hard創(chuàng)建文件file的硬鏈接file_hard。
6、修改硬鏈接file_hard、cat file,同時(shí)更新到源文件中即可。
ln 命令 用來為文件創(chuàng)建連接,連接類型分為硬連接(默認(rèn))和符號(hào)連接兩種。
語法
選項(xiàng)
其中 CONTROL 共有以下幾種策略:
實(shí)例
1、將目錄 /usr/mengqc/mub1 下的文件 m2.c 鏈接到目錄 /usr/liu 下的文件 a2.c。
執(zhí)行 ln 之后,在 /usr/liu 目錄中才有 a2.c 這一項(xiàng),表明 m2.c 和 a2.c 鏈接起來(注意,二者在物理上是同一文件),利用 ls -l 命令可以看到鏈接數(shù)的變化。
2、在目錄 /usr/liu 下建立一個(gè)符號(hào)鏈接文件 abc,使它指向目錄 /usr/mengqc/mub1。
執(zhí)行該命令后,/usr/mengqc/mub1 代表的路徑將存放在名為 /usr/liu/abc 的文件中。
1. 先來了解一下Linux數(shù)據(jù)是如何保存和查詢的
對(duì)操作系統(tǒng)來說,數(shù)據(jù)分為兩種:1. 用戶數(shù)據(jù) (user data) 2.元數(shù)據(jù) (metadata)。用戶數(shù)據(jù)就是保存和記錄文件的內(nèi)容。比如一個(gè)1M的ppt文件,500K的txt文件。這都屬于用戶數(shù)據(jù)。這個(gè)文件總有屬性吧,比如大小、修改時(shí)間、訪問時(shí)間、創(chuàng)建時(shí)間、存儲(chǔ)的位置(文件所在的inode)、文件創(chuàng)建者等等信息。這些屬性信息或者理解為匯總信息,我們稱它為元數(shù)據(jù)。一句話,用戶數(shù)據(jù)是文件的真實(shí)內(nèi)容,而元數(shù)據(jù)則是匯總信息。
在 Linux 中,元數(shù)據(jù)中的 inode 號(hào)(inode 號(hào)即索引節(jié)點(diǎn)號(hào))才是文件的唯一標(biāo)識(shí)而非文件名。文件名僅是為了方便人們的記憶和使用,系統(tǒng)或程序通過 inode 號(hào)尋找正確的文件數(shù)據(jù)塊。
2. 查看文件對(duì)應(yīng)的inode號(hào)
134474678 latest.tar.gz
linux查看文件對(duì)應(yīng)的inode號(hào)
可以看出latest.tar.gz這個(gè)文件, inode 號(hào)是134474678,Linux查找讀寫該文件時(shí),以為個(gè)inode號(hào)碼為標(biāo)識(shí),而不是文件名。文件名類似于網(wǎng)站域名,僅僅是方便人類記憶。
也就是說, inode134474678有一個(gè)硬鏈接,它就是latest.tar.gz。
3. 根據(jù)inode號(hào)查找對(duì)應(yīng)的文件
那么,問題來了,系統(tǒng)上有沒有第二個(gè)文件,它的inode號(hào)碼也是13447467。
使用find查找一下:
查找結(jié)果如下:
/root/latest.tar.gz
/root/latest2.tar.gz
linux根據(jù)inode號(hào)查找對(duì)應(yīng)的文件
硬盤上真的有第二個(gè)文件它的inode號(hào)碼也是134474678,像這種情況,我們認(rèn)為inode134474678有兩個(gè)硬鏈接。當(dāng)然,這是本文作者提前準(zhǔn)備好的。
為解決文件的共享使用,Linux 系統(tǒng)引入了兩種鏈接:硬鏈接 (hard link) 與軟鏈接(又稱符號(hào)鏈接,即 soft link 或 symbolic link)。鏈接為 Linux 系統(tǒng)解決了文件的共享使用,還帶來了隱藏文件路徑、增加權(quán)限安全及節(jié)省存儲(chǔ)等好處。
4. 確認(rèn)硬鏈接的數(shù)量
查看一下文件latest.tar.gz
輸出結(jié)果如下:
-rwxr-xr-x. 2 root root 8743850 Oct 11 15:00 latest.tar.gz
請(qǐng)留意輸出的結(jié)果中的數(shù)字2,表示該文件存在2個(gè)硬鏈接。
正常情況下,一個(gè)inode只有一個(gè)鏈接,如下例
輸出結(jié)果:
-rw-r--r--. 1 root root 9 Nov 21 11:39 abc.txt
請(qǐng)留意輸出的結(jié)果中的數(shù)字1,表示該文件只存在1個(gè)硬鏈接,默認(rèn)情況下,文件都是只有一個(gè)硬鏈接的。
5. 查看軟鏈接
再來看一個(gè)文件
lrwxrwxrwx. 1 root root 15 Sep 26 15:57 /dev/stdout - /proc/self/fd/1
linux查看軟鏈接
我們發(fā)現(xiàn),/dev/stdout實(shí)際上指向另一個(gè)文件/proc/self/fd/1,這就是軟鏈接。類似于Windows系統(tǒng)上的快捷方式。
6. 軟鏈接與硬鏈接的區(qū)別
6.1 軟鏈接特點(diǎn)
6.2 硬鏈接特點(diǎn)
ln鏈接符原理如下:
Linux ln鏈接符原理圖
7. 創(chuàng)建文件的鏈接
Linux ln命令是一個(gè)非常重要而且常用命令,它用于為文件或者目錄創(chuàng)建鏈接。
7.1 創(chuàng)建軟鏈接
創(chuàng)建一個(gè)文件,用于演示軟鏈接。
創(chuàng)建軟鏈接示例:
檢查結(jié)果:
輸出文件屬性
lrwxrwxrwx. 1 root root 8 Nov 26 17:48 soft123.txt - soft.txt
linux創(chuàng)建軟鏈接
可以看出這個(gè)文件指向當(dāng)前目錄soft.txt,配置成功。7.2 創(chuàng)建硬鏈接
創(chuàng)建一個(gè)文件,用于演示硬鏈接。
創(chuàng)建硬鏈接,沒有使用選項(xiàng)
檢查結(jié)果:
輸出文件屬性:
-rw-r--r--. 2 root root 0 Nov 26 17:47 hard123.txt
linux創(chuàng)建硬鏈接
留意以上輸出數(shù)字2,表明該文件有2個(gè)副本。
8. 總結(jié)
ln命令可以創(chuàng)建文件的副本,也可以創(chuàng)建軟鏈接。
本文題目:linux中l(wèi)n命令詳解,linux中l(wèi)
網(wǎng)頁路徑:http://jinyejixie.com/article16/hopdgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、全網(wǎng)營銷推廣、關(guān)鍵詞優(yōu)化、微信公眾號(hào)、域名注冊(cè)、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
移動(dòng)網(wǎng)站建設(shè)知識(shí)