Um Funktionen aus einer Datei zu entfernen, verwenden Sie den -r
Flagge
setcap -r /path/to/program
Dies führt dazu, dass das Programm keine Fähigkeiten mehr hat.
Was @stephen-harris gepostet hat, ist richtig. Aber ich glaube, es entfernt alle Funktionen, die dem Programm hinzugefügt wurden, auf einen Schlag. Um eine bestimmte Fähigkeit zu entfernen, würde Folgendes funktionieren (nach dem Beispiel in der Frage)
setcap 'cap_net_bind_service=-ep' /path/to/program
,
Beachten Sie das '-' Zeichen. Sie können die {Auswirkung der Befehle}-Fähigkeiten über eine ausführbare Datei wie folgt überprüfen:
getcap /path/to/program
Im Falle von setcap -r sind alle Fähigkeiten weg und das Ergebnis von getcap ist leer, während das '-ep' nur entfernt, was Sie mit '+ep' hinzugefügt haben. Dies ist praktisch, wenn Sie mehrere Funktionen vergeben haben und diese selektiv entfernen möchten.