導航:首頁 > 操作系統 > linux下鏈接文件

linux下鏈接文件

發布時間:2022-06-23 19:47:43

linux 如何鏈接文件夾

使用 Linux 自帶的超鏈接命令 ln ,即可實現文件、以及文件夾的超鏈接。

⑵ linux系統中鏈接文件什麼意思

鏈接:一種在共享文件和訪問它的用戶的若干目錄項之間建立聯系的一種方法。
Linux中包括兩種鏈接:硬鏈接(Hard
Link)和軟鏈接(Soft
Link),軟鏈接又稱為符號鏈接(Symbolic
link)。
我們首先來了解一下幾個名詞:
索引節點(inode)
要了解鏈接,我們首先得了解一個概念,叫索引節點(inode)。在Linux系統中,內核為每一個新創建的文件分配一個Inode(索引結點),每個文件都有一個惟一的inode號,我們可以將inode簡單理解成一個指針,它永遠指向本文件的具體存儲位置。文件屬性保存在索引結點里,在訪問文件時,索引結點被復制到內存在,從而實現文件的快速訪問。系統是通過索引節點(而不是文件名)來定位每一個文件。
硬鏈接(Hard
Link)
硬鏈接說白了是一個指針,指向文件索引節點,系統並不為它重新分配inode。可以用:ln命令來建立硬鏈接。
引用
ln
[options]
existingfile
newfile
ln
[options]
existingfile-list
directory
用法:
第一種為」existingfile」創建硬鏈接,文件名為」newfile」。
第二種在」directory」目錄中,為」
existingfile-list」中包含的所有文件創建一個同名的硬鏈接。
常用可選[options]:-f
無論」newfile」存在與否,都創建鏈接。-n
如果」newfile」已存在,就不創建鏈接。
軟鏈接(Soft
Link)
軟鏈接又叫符號鏈接,這個文件包含了另一個文件的路徑名。可以是任意文件或目錄,可以鏈接不同文件系統的文件。和win下的快捷方式差不多。
可以用:ln
-s
命令來建立軟鏈接。
引用
ln
-s
existingfile
newfile
ln
-s
existingfile-list
directory
下面我們用一個實例來說明硬鏈接和軟鏈接。
現在目錄下有兩個文件,一個名為file1,一個名為file2。
引用
$
ls
–il
1052671
-rw-r--r--
1
Leanx
Leanx
0
2010-03-29
13:46
file1
1052670
-rw-r--r--
1
Leanx
Leanx
0
2007-03-29
13:46
file2
首先先做一個file1的硬鏈接。
引用
$
ln
file1
file1hard
$ls
–il
1052671
-rw-r--r--
2
Leanx
Leanx
0
2010-03-29
13:46
file1
1052670
-rw-r--r--
1
Leanx
Leanx
0
2010-03-29
13:46
file12
1052671
-rw-r--r--
2
Leanx
Leanx
0
2010-03-29
13:46
file1hard
這里我們注意在創建鏈接前,file1顯示的鏈接數目為1,創建鏈接後
1.file1和file1hard的鏈接數目都變為2。
2.file1和file1的inode號是一樣的,都是1052671。
3.file1和file1hard顯示的文件大小也是一樣,都是0B。
可見進行了ln命令的操作結果:file1和file1hard是同一個文件的兩個名字,它們具有同樣的索引節點號和文件屬性,建立文件file1的硬鏈接,就是為
file1的文件索引節點在當前目錄上建立一個新指針。你可以刪除其中任何一個,如rm
file1,每次只會刪除一個指針,鏈接數同時減一,只有將所有指向文件內容的指針,也即鏈接數減為0時,內核才會把文件內容從磁碟上刪除。
盡管硬鏈接節省空間,也是Linux系統整合文件系統的傳統方式,但是存在一些不足之處:
1.不允許給目錄創建硬鏈接。
2.不可以在不同文件系統的文件間建立鏈接。
接著我們做一個指向file2的軟鏈接,軟鏈接克服了硬鏈接的不足,沒有任何文件系統的限制,任何用戶可以創建指向目錄的符號鏈接。因而現在更為廣泛使用,它具有更大的靈活性,甚至可以跨越不同機器、不同網路對文件進行鏈接。
引用
$
ln
-s
file2
file2soft
$
ls
–il
總用量
0
1052671
-rw-r--r--
2
Leanx
Leanx
0
2010-03-29
13:34
file1
1052670
-rw-r--r--
1
Leanx
Leanx
0
2010-03-29
13:35
file2
1053313
lrwxrwxrwx
1
Leanx
Leanx
5
2010-03-29
13:45
file2soft
->
file2
1052671
-rw-r--r--
2
Leanx
Leanx
0
2010-03-29
13:34
file1hard
從上面鏈接後的結果可以看出來軟鏈接與硬鏈接,區別不僅僅是在概念上,在實現上也是完全不同的。
區別:
1.硬鏈接原文件/鏈接文件公用一個inode號,說明他們是同一個文件,而軟鏈接原文件/鏈接文件擁有不同的inode號,表明他們是兩個不同的文件;
2.在文件屬性上軟鏈接明確寫出了是鏈接文件,而硬鏈接沒有寫出來,因為在本質上硬鏈接文件和原文件是完全平等關系;
3.鏈接數目是不一樣的,軟鏈接的鏈接數目不會增加;
4.文件大小是不一樣的,硬鏈接文件顯示的大小是跟原文件是一樣的。而這里軟鏈接顯示的大小與原文件就不同了,file2大小是0B,而file2soft是5B。
總之,建立軟鏈接就是建立了一個新文件。當訪問鏈接文件時,系統就會發現他是個鏈接文件,它讀取鏈接文件找到真正要訪問的文件。
當然軟鏈接也有硬鏈接沒有的缺點,因為鏈接文件包含有原文件的路徑信息,所以當原文件從一個目錄下移到其他目錄中,再訪問鏈接文件,系統就找不到了,而硬鏈接就沒有這個缺陷,你想怎麼移就怎麼移;還有它要系統分配額外的空間用於建立新的索引節點和保存原文件的路徑。

⑶ linux 鏈接文件有幾種那些用戶能建立

兩種,一種是硬鏈接,一種是軟鏈接。

軟鏈接可以直接理解為windows中的快捷方式
硬鏈接則直接作用於文件的inode,相當於將同一個文件的inode的引用計數加1,所以只有當所有硬鏈接被刪除時,文件才會刪除,相對比較安全。但硬鏈接不能跨文件系統,也不能跨目錄,限制比較多,所以一般用軟鏈接。

創建鏈接的命令是ln,加-s選項創建軟鏈接,默認創建硬鏈接。

⑷ linux怎麼將一個文件夾鏈接到另一個文件夾上

ln -s bbb的文件目錄 ccc的文件目錄

In的功能是為某一個文件在另外一個位置建立一個同步的鏈接,命令最常用的參數是-s,具體用法是:

ln -s 源文件 目標文件

-s 是 symbolic的意思。

ln的鏈接有軟鏈接和硬鏈接兩種。

軟鏈接就是ln -s ** **,只會在選定的位置上生成一個文件的鏡像,不會佔用磁碟空間。

硬鏈接ln
** **,沒有參數-s,在選定的位置上生成一個和源文件大小相同的文件。

無論是軟鏈接還是硬鏈接,文件都保持同步變化。軟鏈接是可以跨分區的,但是硬鏈接只能在同一分區內。

(4)linux下鏈接文件擴展閱讀:

1、目錄不能建立硬鏈接,但可以建立軟鏈接。

ln-s
test_chk test_chk_ln

2、正確的刪除方式(刪除軟鏈接,但不刪除實際數據):

rm -rf ./test_chk_ln

3、錯誤的刪除方式:

rm -rf ./test_chk_ln/ (這樣就會把原來test_chk下的內容刪除)

4、用ls查看一個目錄時,發現有的文件後面有一個@的符號,那就是一個用ln命令生成的文件。用ls
-l命令去查看,就可以看到顯示的link的路徑。

⑸ Linux中硬鏈接文件和軟鏈接文件有什麼區別

linux系統中鏈接文件分為硬鏈接和軟鏈接(軟鏈接也叫符號鏈接)。硬鏈接和軟鏈接都是指向文件的一種方式,但兩者有不同的地方,主要有以下不同:
1.硬鏈接是創建一個指向block的inode,有防止誤刪除的功能。因為刪除一個文件,實際上是刪除inode信息,切斷了inode與block之間的聯系。當給一個文件做了硬鏈接之後,刪除文件時,只會減少文件的鏈接數,當鏈接數為0時,才會徹底刪除該文件。
軟鏈接類似windows系統的快捷方式,是一個完整的文件,有自己的inode和block,block的內容就是原文件的文件名。當原文件刪除後,軟鏈接就失效了,沒有防止誤刪除的功能。
2.文件的大小不一樣。由於硬鏈接是指向原文件的block,所以硬鏈接的文件大小和原文件大小是一致的。而軟鏈接是新的文件,block里是原文件的的文件名,所以軟鏈接文件的大小一般是4k,即一個block的大小。
3.硬鏈接不能給目錄做,不能跨分區做。軟鏈接則都可以。
創建硬鏈接命令:
ln
file
filenew
#file為原文件名,filenew為新文件名。
創建軟鏈接命令:
ln
-s
file
filenew
#file為原文件名,filenew為新文件名。

⑹ Linux操作系統文件鏈接問題

鏈接有兩種,一種被稱為硬鏈接(Hard
Link),另一種被稱為符號鏈接(Symbolic
Link)。默認情況下,ln命令產生硬鏈接。
硬連接指通過索引節點來進行的連接。在Linux的文件系統中,保存在磁碟分區中的文件不管是什麼類型都給它分配一個編號,稱為索引節點號(Inode
Index)。在Linux中,多個文件名指向同一索引節點是存在的。一般這種連接就是硬連接。硬連接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬連接到重要文件,以防止「誤刪」的功能。其原因如上所述,因為對應該目錄的索引節點有一個以上的連接。只刪除一個連接並不影響索引節點本身和其它的連接,只有當最後一個連接被刪除後,文件的數據塊及目錄的連接才會被釋放。也就是說,文件才會被真正刪除。
與硬連接相對應,Lnux系統中還存在另一種連接,稱為符號連接(Symbilc
Link),也叫軟連接。軟鏈接文件有點類似於Windows的快捷方式。它實際上是特殊文件的一種。在符號連接中,文件實際上是一個文本文件,其中包含的有另一文件的位置信息。
touch
f1(創建一個f1的文件)
ln
f1
f2
創佳一個f2的硬連接
ln
-s
f1
f3
創建一個f3的軟連接
此時如果刪除f3,對f1,f2無影響;如果刪除f2,對f1,f3也無影響,如果刪除f1,那麼因為f2也應用f1,所以並不影響f2節點的,touch創建的文件仍然存在;但是此時f3因為是軟連接,導致f3失效。如果刪除f1,f2
,那麼touch
創佳的文件會被刪除。
看了這篇文章,終於比較了解連接是怎麼一回事了,給我一個經驗就是研究問題一定得深入,才能知道它的原理。明天實驗一下,看看效果把。
軟體教程小編推薦:
Linux安裝配置MariaDB資料庫全程詳解
Linux系統怎麼設置開機密碼?
Linux啟動菜單修改教程

⑺ 什麼是Linux操作系統文件鏈接

鏈接是指在電子計算機程序的各模塊之間傳遞參數和控制命令,並把它們組成一個可執行的整體的過程。為解決文件的共享使用,Linux系統中將鏈接分為兩種:一種是硬鏈接,另一種是符號鏈接,又叫做軟鏈接,接下來我們看看相關的內容介紹。
硬鏈接
硬鏈接指通過索引節點來進行連接。在Linux的文件系統中,保存在磁碟分區中的文件不管是什麼類型都給它分配一個編號,稱為索引節點號。在Linux中,多個文件名指向同一索引節點是存在的,比如A和B的硬鏈接,則A的目錄項中的inode節點號與B的目錄項中的inode節點號相同,即一個inode節點對應兩個不同的文件名,兩個文件名指向同一個文件,A和B對文件系統來說是完全平等的。刪除其中任何一個都不會影響另外一個的訪問。
硬鏈接的作用是允許一個文件擁有多個有效路徑名,這樣用戶可以建立硬鏈接到重要文件,以防止誤刪的功能。其原因是因為對應目錄的索引節點有一個以上的鏈接。只刪除一個鏈接並不影響索引節點本身和其它的鏈接,只有當最後一個鏈接被刪除後,文件的數據塊及目錄的鏈接才會被釋放。也就是說,文件真正刪除的條件是與之相關的所有硬鏈接文件均被刪除。
軟鏈接
軟鏈接也被稱之為符號鏈接,也叫做軟鏈接。軟鏈接文件類似於Windows的快捷方式,它實際上是一個特殊的文件。在符號連接中,文件實際上是一個文本文件,其中包含的有另一文件的位置信息。比如:A是B的軟鏈接,A的目錄項中的inode節點號與B的目錄項中的inode節點號不相同,A和B指向的是兩個不同的inode,繼而指向兩塊不同的數據塊。但是A的數據塊中存放的只是B的路徑名。A和B之間是主從關系,如果B被刪除了,A仍然存在,但指向的是一個無效的鏈接。

⑻ linux鏈接文件有哪兩種類型它們有何區別是什麼

硬鏈接和軟鏈接。硬鏈接相當於復制軟鏈接相當於快捷方式區別在於:軟鏈接的源文件刪除之後,軟鏈接失效。硬鏈接的源文件刪除之後,該鏈接仍然可以訪問。

⑼ linux給文件創建硬鏈接

在了Linux下創建硬連接和軟連接(也就是符號連接)都是用ln命令,當使用ln命令時加上-s選項就表示創建的連接文件是一個軟連接,如果使用ln命令時不帶-s選項就表示創建的是一個硬連接。而ln命令的格式則是:ln 原文件 連接文件
比如如下命令是創建硬連接的,/home/testfile就是創建的硬連接文件,它連接到/root/testfile這個文件:
ln /root/testfile /home/testfile
下面的則是創建軟連接的,這次/home/testfile是一個軟連接文件:
ln -s /root/testfile /home/testfile

⑽ linux下的文件連接有什麼作用

鏈接的好處:鏈接操作實際上是給系統中已有的某個文件指定另外一個可用於訪問它的名稱。對於這個新的文件名,我們可以為之指定不同的訪問許可權,以控制對信息的共享和安全性的問題。 如果鏈接指向目錄,用戶就可以利用該鏈接直接進入被鏈接的目錄而不用打一大堆的路徑名。而且,即使我們刪除這個鏈接,也不會破壞原來的目錄。
你看看應不應該給自己的文件創建鏈接,如果不嫌麻煩的話可以不建的,但貌似建鏈接的也很少。

閱讀全文

與linux下鏈接文件相關的資料

熱點內容
UG命令變成灰色用不了 瀏覽:150
sdk命令 瀏覽:94
好玩免費下載的解壓游戲 瀏覽:9
單片機老師招聘考試內容 瀏覽:425
彈性雲伺服器配置流程 瀏覽:304
android交叉編譯linux 瀏覽:988
金聖嘆水滸傳pdf 瀏覽:501
安卓官換新機是什麼意思啊 瀏覽:922
java如何分頁 瀏覽:558
如何查找加密的視頻 瀏覽:742
單片機lcd漢字顯示 瀏覽:879
能夠識別中文的編譯器 瀏覽:63
androidlayout注釋 瀏覽:959
重啟手機命令 瀏覽:838
程序員那麼可愛男女主是誰 瀏覽:492
文件如何上傳到自己的伺服器 瀏覽:401
你用什麼app 瀏覽:224
安卓平板用什麼優化軟體 瀏覽:747
centos重新編譯程序 瀏覽:335
cocoapods命令 瀏覽:906