Warum hat das SUID-Bit keine Auswirkung, wenn es auf Verzeichnisse in Linux angewendet wird? Ich sehe deutlich, dass ich es mit 'chmod u+s' einstellen kann. Aber warum hat es nicht „irgendeine“ Wirkung? Was ist der Grund dafür, einen Weg zum SET zu implementieren, aber keinen Effekt zu implementieren?
Akzeptierte Antwort:
Der Hauptgrund für eine Möglichkeit, es einzustellen, ist einfach:Einfachheit. Es ist einfacher, das setuid-Bit in Verzeichnissen einheitlich mit anderen Bits zu behandeln, als eine Ausnahme zu machen und Versuche, es zu setzen, abzulehnen.
Ein weiterer Grund ist, dass Sie ein Dateisystem unter Linux mounten, das setuid-Bit auf ein Verzeichnis setzen und dieses Dateisystem dann unter einem anderen Betriebssystem mounten können, das das setuid-Bit sinnvoll behandelt.
Warum das Setuid-Bit keine Auswirkungen auf Verzeichnisse unter Linux hat, liegt daran, dass niemand eine überzeugende Bedeutung dafür gefunden hat. Es kann nicht auf die gleiche Weise wie das setgid-Bit funktionieren, da Linux es einem Benutzer nicht erlaubt, eine Datei an einen anderen Benutzer weiterzugeben.