Кажется, я застрял между ограничением NFS и ограничением Cron.
Итак, у меня есть root cron (на RHEL5), выполняющий скрипт оболочки, который, помимо прочего, должен rsync для некоторых файлов при монтировании NFS. А файлы на монтировании NFS принадлежат пользователю apache с режимом 700, поэтому только пользователь apache может выполнить команду rsync - запуск от имени root приводит к ошибке разрешения (NFS, как представляется, редкий случай, когда пользователь root не всесильный?)
Когда я просто хочу запустить rsync вручную, я могу использовать "sudo -u apache rsync ..." Но sudo не работает в cron - он говорит: "sudo: извините, у вас должен быть tty для запуска sudo ».
Я не хочу запускать весь скрипт как apache (то есть из crontab apache), потому что другие части скрипта требуют root - это всего лишь одна команда, которая должна запускаться как apache. И я действительно предпочел бы не менять режим файлов, поскольку это повлечет за собой значительные изменения в других приложениях.
Должен быть способ выполнить "sudo -u apache" из cron ??
спасибо!
грабят