Linux特殊檔案(2) 鏈結檔案

2021-05-22 13:44:06 字數 1013 閱讀 9826

第二章 鏈結檔案

鏈結檔案有點類似於windows 的所謂快捷方式,但並不完全一樣。鏈結有兩種方式,軟鏈結和硬鏈結。

軟鏈結檔案

軟鏈結又叫符號鏈結,這個檔案包含了另乙個檔案的路徑名。可以是任意檔案或目錄,可以鏈結不同檔案系統的檔案。鏈結檔案甚至可以鏈結不存在的檔案,這就產生一般稱之為"斷鏈"的問題(或曰「現象"),鏈結檔案甚至可以迴圈鏈結自己。類似於程式語言中的遞迴。

[yaoyao@linux236 yaoyao]$ ls -l

total 0

lrwxrwxrwx 1 yaoyao yaoyao  5 aug  6 17:39 1.txt -> 3.txt

lrwxrwxrwx 1 yaoyao yaoyao  5 aug  6 17:38 2.txt -> 1.txt

lrwxrwxrwx 1 yaoyao yaoyao  5 aug  6 17:39 3.txt -> 2.txt

上面的三個檔案形成了乙個遞迴,實質上沒有任何作用。系統管理員應該避免系統出現斷鏈或迴圈鏈結。

用ln -s 命令可以生成乙個軟連線,如下:

[root@linux236 test]# ln -s  source_file softlink_file

在對符號檔案進行讀或寫操作的時候,系統會自動把該操作轉換為對原始檔的操作,但刪除鏈結檔案時,系統僅僅刪除鏈結檔案,而不刪除原始檔本身。

硬鏈結檔案

info ln 命令告訴您,硬鏈結是已存在檔案的另乙個名字(a "hard link" is another name for an existing file),這多少有些令人困惑。硬連線的命令是

ln -d existfile newfile

硬鏈結檔案有兩個限制

1、不允許給目錄建立硬鏈結;

2、只有在同一檔案系統中的檔案之間才能建立鏈結。

對硬鏈結檔案進行讀寫和刪除操作時候,結果和軟鏈結相同。但如果我們刪除硬鏈結檔案的原始檔,硬鏈結檔案仍然存在,而且保留了願有的內容。這時,系統就「忘記」了它曾經是硬鏈結檔案。而把他當成乙個普通檔案。

Linux 特殊檔案 dev zero

dev zero 是類 unix 系統中乙個特殊的檔案,當讀取該檔案時,它會提供無限的空字元 null。它的乙個主要用途是提供字元流來初始化資料儲存,也就是使用空字元覆蓋目標資料。另乙個常見的用法是產生乙個特定大小的空白檔案。你可以從 dev zero 讀取任意大小數量的 null 字元。和 dev...

Linux的特殊檔案許可權

一般檔案許可權讀 r 寫 w 執行 x 許可權比較簡單。一般材料上面都有介紹。這裡介紹一下一些特殊的檔案許可權 suid,sgid,stick bit。如果你檢查一下 usr bin passwd和 tmp 的檔案許可權你就會發現和普通的檔案許可權有少許不同,如下圖所示 這裡就涉及到suid和sti...

Linux的特殊檔案許可權

一般檔案許可權讀 r 寫 w 執行 x 許可權比較簡單。一般材料上面都有介紹。這裡介紹一下一些特殊的檔案許可權 suid,sgid,stick bit。如果你檢查一下 usr bin passwd和 tmp 的檔案許可權你就會發現和普通的檔案許可權有少許不同,如下圖所示 這裡就涉及到suid和sti...