У меня есть двоичный файл foo
, сгенерированный из кода C ++, для которого установлены специальные возможности:
sudo setcap cap_sys_rawio=ep ./foo
Теперь я хочу создать еще одну версию этого двоичного файла и вывод build (новый двоичный файл) помещается в файл с именем bar
. Очевидно, что bar
не будет иметь тех же возможностей, что и foo
. Я хотел бы скопировать содержимое bar
поверх foo
, чтобы foo
представлял новый двоичный файл, но без удаления возможностей.
Этот ответ указывает, что изменение файл не влияет на возможности, но когда я пытаюсь использовать cp
(который использует open(..., O_TRUNC)
под обложками), возможности удаляются.