08.08.2019 19:21, Eugene Berdnikov пишет: > Часто бывает нужно в скрипте какие-то действия выполнять под обычным > пользователем, а какие-то под рутом, причём всё это, что важно, чередуется. > Если же права один раз сбросить, вернуть их обратно уже крайне сложно.
Нужно запустить программу с максимальными правами, а потом можно точечно сбрасывать права до требуемых в конкретном месте. В shell-сценариях можно использовать runuser(1) или ту же sudo(1). С другой стороны можно все действия делать под суперпользователем, но потом отменять такие побочные эффекты. Скажем, с файлами можно делать chown(2) и chmod(2).