Назад | Перейти на главную страницу

Запустите задание cron от имени пользователя tomcat

Я хочу иметь возможность запускать задание cron как пользователь tomcat6. Я пытался su tomcat6 но я не знаю пароль по умолчанию для этого пользователя. Должен ли я запускать их как tomcat6 (если я могу узнать пароль - это в Ubunbu 9.04) или запускать их как другой пользователь, но предоставить пользователю tomcat6 доступ к необходимым файлам? Если я выберу второй вариант, должен ли я создать группу и добавить в нее tomcat6, а также любых других пользователей, которым может потребоваться запустить сценарий, запускаемый заданием cron?

Я не уверен, есть ли у вас root на этом сервере, не могли бы вы уточнить? Может показаться, что вы этого не делаете, поскольку вас просили ввести пароль, но, с другой стороны, вы упоминаете о создании группы, что в принципе вы могли бы сделать только с каким-либо корневым доступом.

Если у тебя есть sudo доступ, как ожидалось в Ubuntu, вы можете легко стать tomcat6 следующим образом:

sudo su - tomcat6

Или отредактируйте crontab tomcat6 напрямую:

sudo crontab -u tomcat6

Конечно, вы также можете добавить задание непосредственно в системный crontab, не забывая использовать tomcat6 в шестом столбце:

sudo vim /etc/crontab

В остальном, если это задание cron должно записывать файлы, принадлежащие разным пользователям, я, вероятно, использовал бы выделенную группу (скажем, tomcat6 - проверьте, есть ли она у вас уже). Затем для каждого файла в этом наборе:

sudo chgrp tomcat6 file
chmod g+rw file