linux中軟連結與永久連結有什麼區別?

來源:互聯網
上載者:User

下面是我個人在學習linux/unix環境編程中總結的軟連結與永久連結的區別,僅供參考

軟連結可以跨檔案系統,永久連結則不可以。

永久連結和源檔案分享權限設定一個inode,這說明本質上還是同一個檔案,而軟連結與源檔案擁有各自的inode,說明他們是獨立的不同的檔案。

再查看檔案屬性時(ls -l),軟連結標明的時連結檔案,而永久連結則沒有標出,因為本質上永久連結和源檔案是對等的。

inode節點中的連結指標數不同,建立永久連結時會使源檔案的inode節點中的連結指標的數加一,而軟連結不會。

檔案大小不同,永久連結檔案的大小與源檔案相同,而軟連結的大小時源檔案檔案名稱的長度。
軟連結的檔案中包含了源檔案的路徑資訊,所以源檔案移動位置時再訪問該檔案的軟連結則會找不到源檔案。而永久連結則可以隨意移動。

軟連結可以為一個目錄建立一個軟連結,而只有root使用者才可以為目錄檔案建立永久連結。
可以為不存在的檔案建立軟連結,但不可以建立永久連結。

例子

1:軟連結

命令:Ln –s /etc/inittab /test/inittab.soft

查看:ls –l /etc/initab /test/inittab.soft

發現軟串連類似於windows的捷徑,—>表示真實檔案的地址

2:永久連結

命令: ln   /etc/inittab  /test/inittab.hard

查看: ls  -l  /etc/inittab  /test/inittab.hard

發現永久連結與真實檔案的大小和建立日期完全相同,類似於copy,同步更新。

3:永久連結與拷貝的區別:

發現拷貝與真實檔案的建立日期不同。

4: 若想複製時日期相同,可以通過命令:cp –p /etc/inittab  /test/inittab2

5:永久連結的同步更新

軟串連類似於捷徑,訪問的就是源檔案,所有肯定是跟源檔案同步。

而永久連結類似於拷貝,但是卻擁有同步更新的功能,再此我們可以驗證。

首先在/test目錄下建立檔案link

(1)   分別穿件link的軟串連檔案和永久連結檔案,link.soft  link.hard

(2)   向源檔案link 寫入資料

(3)   查看三個檔案的內容

發現永久連結檔案與源檔案同步更新

6:刪除源檔案後,對永久連結和軟串連的影響

軟串連類似捷徑,所有當源檔案不存在時,它也無效。

而永久連結屬於拷貝,仍然存在。

7:為什麼永久連結可以同步更新?

同樣建立了一個檔案link 和它的軟連結和永久連結檔案,

通過命令ls –i  ,發現永久連結檔案和源檔案的i結點數字相同,而核心是根據檔案的i結點來標識檔案的,這兩個檔案的i結點相同,所有被認為是一個檔案,所有同時寫入和修改資料。

8:永久連結的要求

永久連結不能跨檔案系統,即不能跨分區,類似於windows內不能將C盤的永久連結放在D盤。而軟連結可以放在任何檔案系統。

好了到此關於軟連結與永久連結我估計各位也多少瞭解了一些了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.