Linux

文件的操作速度(複製、移動、刪除)是否取決於該文件的權限?

  • June 12, 2021

文件的操作速度(複製、移動、刪除)是否取決於該文件的權限?如果是這樣,那怎麼辦?

原因:需要不斷地對很多文件進行提到的操作。如果文件具有一定的權限,這些操作會更快完成嗎?例如,“只讀”權限。

文件的操作速度(複製、移動、刪除)是否取決於該文件的權限?如果是這樣,那怎麼辦?

只有在權限阻止操作時,操作將被拒絕(因此可以認為需要無限時間)。

除了這種極端情況之外,權限不會影響任何複製/移動/刪除操作的速度。


我被要求驗證我的陳述,這對某人來說是完全可以接受的。這是我回答的理由。(如果我對挑戰的引用/解釋不佳,我深表歉意;我無意迴避。)

如果您對數百萬個小文件中的每一個都有大量的 ACL 怎麼辦?在這種情況下解析權限可能比實際從磁碟(即 PCI-E gen4 SSD)讀取這些文件需要更多時間。您是否可以使用讀取速度通常高達 10GB/秒的 PCI-E 第 4 代 NVMe 驅動器?

我找不到每個文件的 ACL 數量的最大數量。但是,對此進行了一些研究,並提供了可下載的腳本。在研究人員的測試中,每個文件大約有 500 個 ACL。在我的測試中,我在 Raspbian 上的 ext4 文件系統達到了 252 個 ACL 的限制。(我們不考慮速度,只考慮限制。)

在這種大小下,它們要麼被打包在 inode 的塊中,要麼最多被打包在一個街區之外。這是要讀取和解析的一個額外塊。非常小的文件可以儲存在 ext4 inode 中,因此無需讀取額外的數據塊。使用 NVMe 驅動器,每個文件的額外 ACL 塊的讀取時間將是最短的,並且解析 250 個左右的 ACL 條目不會在計算上非常困難。這是假設非常小的文件不需要額外的塊。

經驗?當然。實際的?我相信是這樣。

引用自:https://unix.stackexchange.com/questions/653984