Переместить файл в корневой каталог другого пользователя (без sudo)?

Если необходимо выполнить его после того, как X-сервер запущен, вероятно, более уместно запустить его с помощью настроек настольной среды, вместо того, чтобы пытаться мостить что-то с systemd (хотя Вы могли запуститься, с systemd в режиме сеанса пользователя, но включая Ваши X запусков там может потребоваться еще некоторая работа, которая только была бы тангенциальной к Вашей цели, в зависимости от того, насколько сложный Ваша установка).

Если Вы используете startx/xinit, просто добавьте программу к ~/.xinitrc, фон:

/path/to/program &

Иначе найдите свои настройки запуска в Вашей настольной среде и добавьте программу там, так, чтобы она запустилась вскоре после этого.

Так как теперь ясно, что Вы выполняете GNOME 3, можно работать gnome-session-properties от Alt+F2, и добавляют программу к списку запуска там.

Поскольку для программы нужны полномочия суперпользователя функционировать, Вам нужен некоторый способ поднять, не будучи предложенным пароль. Чтобы сделать это, не блокируясь при подсказке, можно сделать пользователя способным выполнить его с NOPASSWD в /etc/sudoers. Отредактируйте файл с sudo visudo, и добавьте следующую строку внизу, отредактированный как соответствующую:

youruser ALL=NOPASSWD: /path/to/program

Можно затем выполнить использование программы sudo не будучи запрошенным пароль.

2
20.03.2017, 12:18
2 ответа

При определенных допущениях, что целевой пользователь может действительно получить доступ к файлу в его изначальном местоположении, может сработать следующий подход:

SRC='/path/to/existing/file'
DST='/path/to/new/file'

su target_user sh -c "ln -f '$SRC' '$DST'" && rm -f "$SRC"

Это "перемещает" файл в местоположение нового пользователя, но не изменяет права собственности или разрешения.

3
27.01.2020, 22:05

Вы можете SU любому пользователю, если вы знаете там пароль. (Для Sudo вы должны быть Sudoer, и знайте свой собственный пароль).

Итак, сделайте файлы для чтения и записи каталогов (для удаления) другими пользователями, добавляют файлы в общую группу или используют списки управления доступом (ACL) SetFacl (, что Разные способы установить разрешения на файл и т. Д. На GNU / Linux

SU Другого пользователя Затем сделайте движение.


Также посмотрите на ответ @roaima за то, как это сделать, не давая пищевой доступ к получению пользователя.

0
27.01.2020, 22:05

Теги

Похожие вопросы