1. 程式人生 > >Linux硬鏈接和軟連接的區別與總結

Linux硬鏈接和軟連接的區別與總結

無法刪除 文件 點號 原理 和源 image 鏈接命令 快捷 技術

圖示軟硬鏈接的區別

技術分享

有關硬鏈接的總結

  1. 具有相同inode節點號的多個文件互為硬鏈接文件;
  2. 刪除硬鏈接文件或者刪除源文件任意之一,文件實體並未被刪除;
  3. 只有刪除了源文件和所有對應的硬鏈接文件,文件實體才會被刪除;
  4. 硬鏈接文件是文件的另一個入口;
  5. 可以通過給文件設置硬鏈接文件來防止重要文件被誤刪;
  6. 創建硬鏈接命令 ln 源文件 硬鏈接文件;
  7. 硬鏈接文件是普通文件,可以用rm刪除;
  8. 對於靜態文件(沒有進程正在調用),當硬鏈接數為0時文件就被刪除。註意:如果有進程正在調用,則無法刪除或者即使文件名被刪除但空間不會釋放。

有關軟鏈接的總結

  1. 軟鏈接類似windows系統的快捷方式;
  2. 軟鏈接裏面存放的是源文件的路徑,指向源文件;
  3. 刪除源文件,軟鏈接依然存在,但無法訪問源文件內容;
  4. 軟鏈接失效時一般是白字紅底閃爍;
  5. 創建軟鏈接命令 ln -s 源文件 軟鏈接文件;
  6. 軟鏈接和源文件是不同的文件,文件類型也不同,inode號也不同;
  7. 軟鏈接的文件類型是“l”,可以用rm刪除。

硬鏈接和軟鏈接的區別

原理上,硬鏈接和源文件的inode節點號相同,兩者互為硬鏈接。軟連接和源文件的inode節點號不同,進而指向的block也不同,軟連接block中存放了源文件的路徑名。 實際上,硬鏈接和源文件是同一份文件,而軟連接是獨立的文件,類似於快捷方式,存儲著源文件的位置信息便於指向。 使用限制上,不能對目錄創建硬鏈接,不能對不同文件系統創建硬鏈接,不能對不存在的文件創建硬鏈接;可以對目錄創建軟連接,可以跨文件系統創建軟連接,可以對不存在的文件創建軟連接。

Linux硬鏈接和軟連接的區別與總結