Unix/Linux 檔案權限後面的數字(如“-rw-rw-r--.1”)在“ls -l”輸出中意味著什麼

Unix/Linux 檔案權限後面的數字(如“-rw-rw-r--.1”)在“ls -l”輸出中意味著什麼

任何人都可以解釋-rw-rw-r--. 1並提供有關 ls -lart 命令的一些「詳細」資訊。

具體來說,這個數字代表什麼1文件後面的權限是什麼意思?為什麼它會改變或為什麼不同的文件會有所不同?

答案1

一些例子:

-rwxrw-r-- 1是擁有者俱有讀取、寫入和執行權限的檔案。該組已經讀寫,其他人只讀。沒有指向此數據的連結。

drwxr-xr-x 10是一個有8個檔案的目錄。額外的 2 個是...。只有所有者才能在此目錄中建立文件,其他人可以存取目錄中的哪些文件,並在權限允許的情況下讀取這些文件的內容。

-r-------- 2是只有擁有者可以讀取但不能執行或修改的檔案。它有一個鏈接,這意味著磁碟上的某個位置有另一個文件引用可以訪問相同的資料。因此磁碟上實際的「檔案內容」有 2 個「檔案」引用它。這些連結通常是使用ln而不提供創建的-s

所以:

  • 字元1為節點類型:一般-d表示檔案或目錄。
  • 字元 2、3、4 表示擁有者的read、write 和 e ecute。x
  • 角色 5、6、7 對群組執行相同的操作。
  • 字元 8、9、10 對其他字元執行相同操作。
  • 如果節點是文件,則權限字元後面的數字表示連結數;如果節點是目錄,則表示「子節點」數。

參見章節長格式man ls

答案2

對於文件這是數量硬連結到文件的內容。 1 表示沒有硬連結(典型情況),數字以上 1 表示這個和另一個N-1檔案名稱共享相同的內容。

對於目錄 大多數但不是全部文件系統報告連結計數為 2+在哪裡是子目錄的數量。

答案3

[max@localhost ~]$ ll

總計 4

drwxrwxr-x2最大 最大 4096 九月 25 17:11 zzz

這裡2表示連結數

現在我將在 zzz 中建立 3 個目錄

現在值改為 5

[max@localhost ~]$ cd zzz
[max@localhost zzz]$ mkdir abc
drwxrwxr-x 5 最大 最大 4096 9 月 25 日 17:16 。
drwx------ 5 最大 最大 4096 九月 25 17:12 ..
drwxrwxr-x 2 最大 最大 4096 九月 25 日 17:16 a
drwxrwxr-x 2 最大 最大 4096 9 月 25 日 17:16 b
drwxrwxr-x 2 最大 最大 4096 九月 25 17:16 c

[max@localhost zzz]$ cd

[max@localhost ~]$ ll

總計 4

drwxrwxr-x5最大 最大 4096 九月 25 17:16 zzz

這是因為現在 zzz 中有 5 個目錄,其中 3 個是a b c隱藏目錄,2 個是隱藏目錄. ..

如果我創建文件,那麼連結計數不會發生任何變化

[max@localhost zzz]$ 觸摸 1 2 3
[max@localhost zzz]$ ls -al
總計 20
drwxrwxr-x 5 最大 最大 4096 9 月 25 日 17:26 。 ------> 目前目錄連結計數
drwx------ 5 max max 4096 Sep 25 17:12 .. ------> 父目錄連結計數
-rw-rw-r-- 1 最大 最大 0 9 月 25 日 17:26 1
-rw-rw-r-- 1 最大 最大 0 9 月 25 日 17:26 2
-rw-rw-r-- 1 最大 最大 0 9 月 25 日 17:26 3
drwxrwxr-x 2 最大 最大 4096 九月 25 日 17:16 a
drwxrwxr-x 2 最大 最大 4096 9 月 25 日 17:16 b
drwxrwxr-x 2 最大 最大 4096 九月 25 17:16 c
[max@localhost zzz]$ cd
[max@localhost ~]$ ll
總計 4
drwxrwxr-x 5 最大 最大 4096 九月 25 日 17:26 zzz

但如果我刪除任何目錄,連結計數就會改變

[max@localhost zzz]$ rmdir bc
[max@localhost zzz]$ cd
[max@localhost ~]$ ll
總計 4
drwxrwxr-x 3 最大 最大 4096 九月 25 17:28 zzz

相關內容