導航:首頁 > 操作系統 > linux創建鏈接目錄

linux創建鏈接目錄

發布時間:2023-08-25 03:35:15

linux 鏈接的使用 創建和刪除符號連接(軟、硬鏈接)

1 . 使用方式 :ln [option] source_file dist_file (source_file是待建立鏈接文件的文件,dist_file是新創建的鏈接文件)
-f 建立時,將同檔案名刪除.
-i 刪除前進行詢問.
ln -s abc cde 建立abc 的軟連接
ln abc cde 建立abc的硬連接,

對於一個文件來說,有唯一的索引接點與之對應,而對於一個索引接點號,卻可以有多個文件名與之對應。因此,在磁碟上的同一個文件可以通過不同的路徑去訪問該文件。注意在Linux下是一切皆文件的啊,文件夾、新加的硬碟 ...都可以看著文件來處理的啊。
連接有軟連接和硬連接(hard link)之分的,軟連接(symbolic link)又叫符號連接。符號連接相當於Windows下的快捷方式。
不可以對文件夾建立硬連接的,我們通常用的還是軟連接比較多。

eg:
ln -s source dist # 建立軟連接
ln source dist # 建立硬連接
軟鏈接實際上只是一段文字,裡麵包含著它所指向的文件的名字,系統看到軟鏈接後自動跳到對應的文件位置處進行處理;相反,硬聯接為文件開設一個新的目錄 項,硬鏈接與文件原有的名字是平權的,在Linux看來它們是等價的。由於這個原因,硬鏈接不能連接兩個不同文件系統上的文件。
(1)軟連接可以 跨文件系統 ,硬連接不可以 。實踐的方法就是用共享文件把windows下的 aa.txt文本文檔連接到linux下/root目錄 下 bb,cc . ln -s aa.txt /root/bb 連接成功 。ln aa.txt /root/bb 失敗 。
(2)關於 I節點的問題 。硬連接不管有多少個,都指向的是同一個I節點,會把 結點連接數增加,只要結點的連接數不是 0,文件就一直存在,不管你刪除的是源文件還是 連接的文件 。只要有一個存在 ,文件就 存在 (其實也不分什麼源文件連接文件的 ,因為他們指向都是同一個 I節點)。 當你修改源文件或者連接文件任何一個的時候 ,其他的文件都會做同步的修改。軟鏈接不直接使用i節點號作為文件指針,而是使用文件路徑名作為指針。所以 刪除連接文件 對源文件無影響,但是刪除源文件,連接文件就會找不到要指向的文件 。軟鏈接有自己的inode,並在磁碟上有一小片空間存放路徑名.
(3)軟連接可以對一個不存在的文件名進行連接 。
(4)軟連接可以對目錄進行連接。

備 註:I節點 :它是UNIX內部用於描述文件特性的數據結構.我們通常稱I節點為文件索引結點(信息結點).i節點含有關於文件的大部分的重要信息,包括文件數據塊在 磁碟上的地址.每一個I節點有它自己的標志號,我們稱為文件順序號.I節點包含的信息 1.文件類型 2.文件屬主關系 3.文件的訪問許可權 4.文件的時間截.

最後 刪除符號鏈接,有創建就有刪除
rm -rf symbolic_name 注意不是rm -rf symbolic_name/
在Linux系統中,內核為每一個新創建的文件分配一個Inode(索引結點),每個文件都有一個惟一的inode號。文件屬性保存在索引結點里,在訪問文件時,索引結點被復制到內存在,從而實現文件的快速訪問。

鏈接是一種在共享文件和訪問它的用戶的若干目錄項之間建立聯系的一種方法。Linux中包括兩種鏈接:硬鏈接(Hard Link)和軟鏈接(Soft Link),軟鏈接又稱為符號鏈接(Symbolic link)。符號連接相當於Windows下的快捷方式。

硬鏈接說白了是一個指針,指向文件索引節點,系統並不為它重新分配inode。可以用:ln命令來建立硬鏈接。
語法:
ln [options] existingfile newfile(sexistingfile 待建立鏈接文件的文件,newfile是新創建的鏈接文件)
ln [options] existingfile-list directory

-f 建立時,將同檔案名刪除.
-i 刪除前進行詢問.

ln -s abc cde 建立abc 的軟連接
ln abc cde 建立abc的硬連接,

用法:
第一種:為」existingfile」創建硬鏈接,文件名為」newfile」。
第二種:在」directory」目錄中,為」existingfile-list」中包含的所有文件創建一個同名的硬鏈接。
常用可選[options] –f 無論」newfile」存在與否,都創建鏈接。-n 如果」newfile」已存在,就不創建鏈接。

下面舉一些例子:

[ [email protected] test]# ls -il
總計 0
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
[ [email protected] test]# ln file2 file2hand
[ [email protected] test]# ls -il
總計 0
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
[ [email protected] test]#

注意在創建鏈接前,file1 顯示的鏈接數目為1,創建鏈接後file1和file1hard的鏈接數目都變為2;file1和file1hard在inode號是一樣的file1和file1hard顯示的文件大小也是一樣。可見進行了ln命令的操作結果:file1和file1hard是同一個文件的兩個名字,它們具有同樣的索引節點號和文件屬性,建立文件file1的硬鏈接,就是為file1的文件索引節點在當前目錄上建立一個新指針。你可以刪除其中任何一個,如rm file2 ,每次只會刪除一個指針,鏈接數同時減一,當鏈接數減為0時,內核才會把文件內容從磁碟上刪除。

還可以在不同目錄,但同一文件系統中建立文件的硬鏈接。設file1、file2在目錄/home/root/dir1中,下面的命令,在/home/root中建立file2的硬鏈接。

ln file2 /home/root/file2hard
下面的程序,是將dir1目錄中所有文件,在目錄dir2中建立硬鏈接

如果使用了 ln –f existingfile newfile,如果newfile已經存在,則無論原來newfile是什麼文件,只用當前用戶對它有寫許可權,newfile就成為exisitngfile的硬鏈接文件。

盡管硬鏈接節省空間,也是Linux系統整合文件系統的傳統方式,但是存在一下不足之處:
(1)不可以在不同文件系統的文件間建立鏈接
(2)只有超級用戶才可以為目錄創建硬鏈接。

軟鏈接克服了硬鏈接的不足,沒有任何文件系統的限制,任何用戶可以創建指向目錄的符號鏈接。因而現在更為廣泛使用,它具有更大的靈活性,甚至可以跨越不同機器、不同網路對文件進行鏈接。
建立軟鏈接,只要在ln後面加上選項 –s,下面舉個例子

[ [email protected] test]# ls -il
總計 0
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand

[ [email protected] test]# ln -s file1 file1soft
[ [email protected] test]# ls -il
總計 0
1491138 -rw-r–r– 1 root root 48 07-14 14:17 file1
1491140 lrwxrwxrwx 1 root root 5 07-14 14:24 file1soft -> file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand

從上面鏈接後的結果可以看出來軟鏈接與硬鏈接,區別不僅僅是在概念上,在實現上也是不同的。區別:硬鏈接原文件&鏈接文件公用一個inode號,說明他們是同一個文件,而軟鏈接原文件&鏈接文件擁有不同的inode號,表明他們是兩個不同的文件;在文件屬性上軟鏈接明確寫出了是鏈接文件,而硬鏈接沒有寫出來,因為在本質上硬鏈接文件和原文件是完全平等關系;鏈接數目是不一樣的,軟鏈接的鏈接數目不會增加;文件大小是不一樣的,硬鏈接文件顯示的大小是跟原文件是一樣的,這用強調,因為是等同的嘛,而這里軟鏈接顯示的大小與原文件就不同了,file1大小是48B,而file1soft是5B,這裡面的5實際上就是「file1」的大小。

總之,建立軟鏈接就是建立了一個新文件。當訪問鏈接文件時,系統就會發現他是個鏈接文件,它讀取鏈接文件找到真正要訪問的文件。
在不同系統之間建立軟鏈接、對目錄建立鏈接,這里就不舉例了,讀者可以自己去嘗試,我也是在不斷實踐中學習的。
當然軟鏈接也有硬鏈接沒有的缺點,因為鏈接文件包含有原文件的路徑信息,所以當原文件從一個目錄下移到其他目錄中,再訪問鏈接文件,系統就找不到了~~,而硬鏈接就沒有這個缺陷,你想怎麼移就怎麼移(呵呵);還有它要系統分配額外的空間用於建立新的索引節點和保存原文件的路徑。

補充一下:可以通過symlink來查看鏈接文件,可以用 man symlink來學習。
三、刪除鏈接

有創建就有刪除

rm -rf symbolic_name 注意不是rm -rf symbolic_name/

[ [email protected] test]# ls -il
總計 0
1491138 -rw-r–r– 1 root root 0 07-14 14:17 file1
1491140 lrwxrwxrwx 1 root root 5 07-14 14:24 file1soft -> file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
[ [email protected] test]# rm -rf file1soft
[ [email protected] test]# ls -il
總計 0
1491138 -rw-r–r– 1 root root 0 07-14 14:17 file1
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2
1491139 -rw-r–r– 2 root root 0 07-14 14:17 file2hand
[ [email protected] test]#

————————————
linux 軟連接和硬鏈接的區別:
————————————
4點不同 :
(1)軟連接可以 跨文件系統 ,硬連接不可以 。
實踐的方法就是用共享文件把windows下的 aa.txt文本文檔連接到linux下/root目錄 下 bb,cc . ln -s aa.txt
/root/bb 連接成功 。ln aa.txt /root/bb 失敗 。

(2)關於 I節點的問題 。硬連接不管有多少個,都指向的是同一個I節點,會把 結點連接數增加 ,只要結點的連接數不是 0,文件就一直存在 ,不管你刪除的是

源文件還是 連接的文件 。只要有一個存在 ,文件就 存在 (其實也不分什麼 源文件連接文件的 ,因為他們指向都是同一個 I節點)。 當你修改源文件或者連接文件

任何一個的時候 ,其他的 文件都會做同步的修改 。軟鏈接不直接使用i節點號作為文件指針,而是使用文件路徑名作為指針。所以 刪除連接文件 對源文件無影響,但

是 刪除 源文件,連接文件就會找不到要指向的文件 。軟鏈接有自己的inode,並在磁碟上有一小片空間存放路徑名.

(3)軟連接可以對一個不存在的文件名進行連接 。

(4)軟連接可以對目錄進行連接。

備註:I節點 :它是UNIX內部用於描述文件特性的數據結構.我們通常稱I節點為文件索引結點(信息結點).i節點 含有關於文件的大部分的重要信 息,包括文件數據塊在

磁碟上的地址.每一個I節點有它自己的標志號,我們稱為文件順序號.I節點包含的信息 1.文件類型 2.文件屬主關系 3.文件的訪問許可權 4.文件的時間截.

❷ 2-18 Linux中的連接文件 --- 軟鏈接

Linux中的軟鏈接類似於windows中的快捷方式。

創建方式:ln -s oldfile newfile。

    例:文件軟鏈接 (目錄軟鏈接也是一樣的操作方式)。

    1、tmp 目錄下創建一個 test.txt 文件。

    2、ln -s test.txt test,為 test.txt 文件創建一個名為 test 的軟鏈接。

    3、ll 查看詳情會發現有一個藍色的 test --> test.txt (test 指向 test.txt)。同時文件類型是            l 開頭,l 是指鏈接文件的意思。 

    4、對軟鏈接文件進行 vim 操作。輸入This is ln -s test. :wq保存並退出。

    5、通過cat test 和 cat test.txt 查看內容。得出的結果都是一樣的。既軟鏈接 test 和 test.txt              已經建立關聯,對 test 操作等於對 test.txt 操作。

tips:軟鏈接特點。

    1、可以對不存在的文件創建軟鏈接。

    tmp 目錄下除了 test 和 test.txt 並沒有其他文件。

    此時 ln -s abc.txt t1,為不存在的 abc.txt 文件創建一個 t1 的軟鏈接。t1 軟鏈接是可以創建        的,只是由於沒有真實存在的 abc.txt 文件。通過 ll 查看詳情,系統會在 abc.txt 處用紅色閃      爍高光發出提示,意指abc.txt文件不存在。

    此時,tmp 目錄下新建一個 abc.txt 文件,t1 軟鏈接到 abc.txt 文件就會正常。不會再有紅色      提示。

    2、可以對文件 或者 目錄創建軟鏈接,目錄創建軟鏈接和文件創建軟鏈接流程一樣。

    3、刪除軟鏈接,不會影響它的指向文件。

    vim t1:編輯 t1 軟鏈接,輸入1 t1 的內容保存退出。

    刪除 t1 軟鏈接,tmp 目錄下已沒有軟鏈接指向 abc.txt 文件。

    此時,cat abc.txt 文件可以查看內容,也可以 vim abc.txt 增加 2 abc.txt 內容。證實了,刪        除軟鏈接,不會影響它的指向文件。

    4、刪除了指向文件,該軟鏈接將變為無效連接。

    當 t1 軟鏈接指向實際文件 abc.txt 的時候,t1是可以對 abc.txt 進行增刪改查操作的。若 rm -      rf abc.txt 刪除了實質性的 abc.txt 文件後,t1 將不能做任何操作。失去了實質性文件而存在       的軟鏈接等同於創建一個空的軟鏈接效果一樣。

❸ linux 系統中軟連接的創建,修改,刪除

【軟連接】
軟連接是linux中一個常用命令,它的功能是為某一個文件在另外一個位置建立一個同不的鏈接。相當於window系統中的快捷方式
具體用法是:ln -s 源文件 目標文件 或者 ln -s 源目錄 目標目錄

當我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在其它的 目錄下用ln命令鏈接(link)就可以,不必重復的佔用磁碟空間。
例如:ln -s /home/test1 /data/test1
這樣我們就對/home/test1目錄創建了軟連接 ,在/data/test1中打開看到的就是/home/test1目錄下的文件

使用方式
創建軟鏈接
ln -s [源文件或目錄] [目標文件或目錄]
例:當前路徑創建test 引向/var/www/test 文件夾
ln –s /var/www/test ./test (此處建議一定要寫絕對路徑,最好寫到根目錄,而且當前目錄中葯刪除test)
例:創建/var/test 引向/var/www/test 文件夾
ln –s /var/www/test /var/test

修改軟鏈接
這將會修改原有的鏈接地址為新的地址
ln –snf [新的源文件或目錄] [目標文件或目錄]
例如:
創建一個軟鏈接
ln –s /var/www/test /var/test
修改指向的新路徑
ln –snf /var/www/test1 /var/test

刪除軟鏈接
和刪除普通的文件是一樣的,刪除都是使用rm來進行操作,
例:刪除test
rm –rf test
正確的刪除方式(刪除軟鏈接,但不刪除實際數據)
rm -rf ./test
錯誤的刪除方式
rm -rf ./test/ (這樣就會把原來test下,源文件的內容也刪除)

建議使用rm test 待顯示刪除確認提示的時候
頁面出現 rm: remove symbolic link test yes等字樣 說明你正在操作的是軟連接,而不是目錄。
一定要注意啊。亂用rm 還刪除目錄下的全部文件,還循環,後果很嚴重,要再三確認

ln常用參數:
-f : 鏈結時先將與 dist 同檔名的檔案刪除
-d : 允許系統管理者硬鏈結自己的目錄
-i : 在刪除與 dist 同檔名的檔案時先進行詢問
-n : 在進行軟連結時,將 dist 視為一般的檔案
-s : 進行軟鏈結(symbolic link)
-v : 在連結之前顯示其檔名
-b : 將在鏈結時會被覆寫或刪除的檔案進行備份
-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾
-V METHOD : 指定備份的方式
--help : 顯示輔助說明
--version : 顯示版本

【硬連接】
硬連接指通過索引節點來進行連接。在Linux的文件系統中,保存在磁碟分區中的文件不管是什麼類型都給它分配一個編號,稱為索引節點號(Inode Index)。在Linux中,多個文件名指向同一索引節點是存在的。一般這種連接就是硬連接。硬連接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬連接到重要文件,以防止「誤刪」的功能。其原因如上所述,因為對應該目錄的索引節點有一個以上的連接。只刪除一個連接並不影響索引節點本身和其它的連接,只有當最後一個連接被刪除後,文件的數據塊及目錄的連接才會被釋放。也就是說,文件真正刪除的條件是與之相關的所有硬連接文件均被刪除。

❹ Linux系統中對文件和目錄操作的命令有哪些

Pwd:顯示當前所在的位置
cd:切換目錄
tree:以樹形結構顯示目錄下的內容
mkdir:創建目錄
touch:創建空文件或改變文件的時間戳屬性
ls:顯示目錄下的內容及相關屬性信息
cp:復制文件或目錄
mv:移動或重命名文件
rm:刪除文件或目錄
rmdir:刪除空目錄
ln:硬鏈接與軟鏈接
readlink:查看符號鏈接文件的內容
find:查找目錄下的文件
xargs:將標准輸入轉換成命令行參數
rename:重命名文件
basename:顯示文件名或目錄名
dirname:顯示文件或目錄路徑
chattr:改變文件的擴展屬性
lsattr:查看文件擴展屬性
file:顯示文件的類型
md5sum:計算和校驗文件的MD5值
chown:改變文件或目錄的用戶和用戶組
chmod:改變文件或目錄許可權
chgrp:更改文件用戶組
umask:顯示或設置許可權掩碼

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

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

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

ln -s 源文件 目標文件

-s 是 symbolic的意思。

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

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

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

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

(5)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中一個常用命令,它的功能是為某一個文件在另外一個位置建立一個同不的鏈接。

具體用法是: ln -s 源文件 目標文件

當 我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在其它的 目錄下用ln命令鏈接(link)就可以,不必重復的佔用磁碟空間。

例如:

這樣我們就對/usr/bin目錄下的mysql命令創建了軟連接 。

創建軟連接
ln -s [源文件或目錄] [目標文件或目錄]

例如:當前路徑創建test引向/var/www/test 文件夾

創建/var/test 引向/var/www/test 文件夾

刪除軟連接
和刪除普通的文件是一樣的,刪除都是使用 rm 來進行操作
例:
刪除test

修改軟鏈接
ln –snf [新的源文件或目錄] [目標文件或目錄]
這將會修改原有的鏈接地址為新的地址
例如:
創建一個軟鏈接

修改指向新的路徑

常用參數:
-f : 鏈結時先將與 dist 同檔名的檔案刪除
-d : 允許系統管理者硬鏈結自己的目錄
-i : 在刪除與 dist 同檔名的檔案時先進行詢問
-n : 在進行軟連結時,將 dist 視為一般的檔案
-s : 進行軟鏈結(symbolic link)
-v : 在連結之前顯示其檔名
-b : 將在鏈結時會被覆寫或刪除的檔案進行備份
-S SUFFIX : 將備份的檔案都加上 SUFFIX 的字尾
-V METHOD : 指定備份的方式
--help : 顯示輔助說明
--version : 顯示版本

閱讀全文

與linux創建鏈接目錄相關的資料

熱點內容
怎樣刪除手機內不用的英文文件夾 瀏覽:81
android獲得屏幕寬度 瀏覽:302
單片機根據波形寫代碼 瀏覽:669
應屆生程序員怎麼投簡歷 瀏覽:721
數學建模演算法與應用ppt 瀏覽:99
遠程怎麼訪問端游伺服器 瀏覽:106
打電話定位置的源碼 瀏覽:642
即時通訊平台源碼 瀏覽:457
安卓自助app怎麼轉到蘋果手機 瀏覽:328
雅馬哈迴音壁不能識別源碼 瀏覽:730
python如何移植到安卓 瀏覽:29
黃柱選股公式源碼 瀏覽:639
教育系統源碼達標 瀏覽:887
音效卡驅動安裝程序在哪個文件夾 瀏覽:61
錢還完了銀行不給解壓 瀏覽:170
linux的系統調用表 瀏覽:752
php怎麼轉換頁面 瀏覽:547
我的世界買了伺服器之後怎麼開服 瀏覽:829
r1234yf汽車空調壓縮機 瀏覽:147
ftp伺服器地址欄 瀏覽:902