Я хотел бы разрешить определенному пользователю, которому не принадлежат файлы в каталоге, выполнять chmod
для них. В интерактивном режиме я знаю, что могу сделать это, настроив sudo
с помощью файла (ов) конфигурации sudoers, и я также могу определить псевдоним, например:
alias chmod='sudo chmod'
в .bashrc, .profile или .bash_profile, чтобы пользователю больше не приходилось каждый раз вводить sudo chmod
. Этот подход нарушается, если chmod
выполняется не из командной строки в оболочке bash, а из программы. Как я мог заставить это все еще работать?
Фон в создании Syncthing, которую я хочу использовать для синхронизации файлов от разных пользователей. Кроме того, syncthing
должна выполняться не как root
а как пользовательский syncuser
. Пользователь syncuser
не имеет разрешений на выполнение chmod
для файлов, которыми он не владеет, но которые он синхронизировал (разрешения на чтение / запись, управляемые группами), и именно здесь происходит сбой.
Такая ситуация должна возникать чаще. Я в значительной степени убежден, что есть и другое решение, чем запуск syncthing
качестве пользователя root
, но на данный момент я не понимаю, как ...