簡體   English   中英

Linux 權限 - setuid、setgid、sticky bit - 用一個命令刪除所有

[英]Linux Permissions - setuid, setgid, sticky bit - remove all with one command

我目前正在做一門關於 Linux Essentials 的課程,最近我遇到了 setuid、setgid 和sticky bit 權限。

我嘗試制作一個實際示例並運行命令以將它們應用於我創建的文件和目錄。

我注意到刪除它們的數字命令是“chmod 0775”,我想,如果這三個都被應用,如果我運行數字命令來刪除它們會發生什么。 我認為它會按順序刪除它們,但在文件的情況下,它會立即刪除所有這些。

然后我嘗試了目錄。 那里的結果是不同的。 僅刪除了最后應用的權限(即粘滯位)。 我再次運行該命令並沒有做任何事情。 沒有刪除剩余的權限(setuid、setgid)。

為什么會這樣?

謝謝!

文件和目錄的粘性位略有不同...例如,要從名為“Testy”的目錄中刪除粘貼位,您可以鍵入:

sudo chmod g-s Testy/

請注意,輸入以下內容不會起作用sudo chmod 777 Testy 下面的教程提供了很好的工作示例和解釋,我的建議是將這些示例中的一些實踐好幾次然后最終都有意義。 理解的關鍵事項(在我看來無論如何)是八進制系統,一旦你理解它全部落實到位,就會涉及設置權限/位等。

這是教程鏈接: 訪問控制/粘滯位教程

man chmod快速搜索發現您需要在前面附加一個額外的0= 例如像這樣:

chmod 00775 target  

或者像這樣:

chmod =775 target 

如果要遞歸刪除所有文件的 setuid、setgid 和粘性權限,可以使用以下命令:

chmod -R 00775 {.,.*}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM