Der chown
Befehl ist nur root
aus Sicherheitsgründen verfügbar. Wenn Sie dies tun möchten, müssen Sie ihn als root ausführen.
Es gibt zwei Dinge, die mir in den Sinn kommen, die Sie tun können:
Nutze das
SETUID
bisschen. Auf diese Weise erlauben Sie Benutzern, das Skript so auszuführen, wieroot
dies auch der Fall ist (je nach Funktion des Skripts auch Sicherheitsbedenken). Mehr dazu hier .Sie können auch eine aufgabenbasierte Warteschlange erstellen (z. B. mit redis ). Das Skript fügte bei der Ausführung einen Wert in die Warteschlange ein, und ein Skript wurde so ausgeführt
root
, dass es die Warteschlange liest und alle erforderlichen Änderungen vornimmt (in Ihrem Fallchown
für diese Datei verwenden).