Capabilities

使用setcap時,權限存放在哪裡?

  • July 5, 2019

使用setcap為二進製文件提供額外權限應該將新權限寫入某處,儲存或記憶體中,它儲存在哪裡?

按原樣使用lsof不起作用,因為該過程消失得太快。

擴展權限,如訪問控制列表設置setfacl和能力標誌設置,setcap儲存在與傳統權限相同的位置並設置

$$ ug $$id 標誌由chmod: 在文件的 inode 中設置。 (它們實際上可能儲存在磁碟上的單獨塊中,因為 inode 具有固定大小,它為傳統權限位留有空間,但對潛在的無限擴展權限沒有空間。但這僅在極少數情況下很重要,例如必須注意setcap可能會耗盡磁碟空間。但甚至chmod可能在使用重複數據刪除的系統上耗盡磁碟空間!)

GNU ls 不顯示文件的 setcap 屬性。您可以使用 顯示它們getcapgetfattr -d -m -您可以使用;列出所有擴展屬性 呼叫 setcap 屬性security.capability,它以二進制格式編碼,getcap為您解碼。

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