Форум сайта python.su
привет.
Написал простойую команду
test.py
# coding: utf-8 import ilnurgi.settings as settings import os import datetime from django.core.management.base import BaseCommand class Command(BaseCommand): def handle(self, *args, **options): time_backup = datetime.datetime.now().strftime('%d%m%Y') open(os.path.join(settings.ROOT_PATH, 'backups', 'parsing_log' + time_backup), 'w')
ilnurgi$crontab -e 46 12 * * * python /ilnurgi.ru/manage.py test
ilnurgi$ cron cron: can't open or create /var/run/crond.pid: Permission denied
Офлайн
ilnur
Вроде бы запущен?? Для начала вы не првильно проверяете работает ли крон. Надо так
ps aux | grep cron
import django.conf.settings
Офлайн
ps aux | grep cron
(ilnurgi)ilnurgi@ilnurgi-System-Product-Name:~/apps/ilnurgi-clone$ ps aux | grep cron root 1136 0.0 0.0 19112 1028 ? Ss 09:23 0:00 cron ilnurgi 14750 0.0 0.0 21020 984 pts/2 T 13:02 0:00 crontab -e ilnurgi 14751 0.0 0.0 4396 616 pts/2 T 13:02 0:00 /bin/sh -c /usr/bin/sensible-editor /tmp/crontab.AsXGLT/crontab ilnurgi 14752 0.0 0.0 4396 616 pts/2 T 13:02 0:00 /bin/sh /usr/bin/sensible-editor /tmp/crontab.AsXGLT/crontab ilnurgi 14760 0.0 0.0 19676 1844 pts/2 T 13:02 0:00 /bin/nano /tmp/crontab.AsXGLT/crontab ilnurgi 16177 0.0 0.0 14832 936 pts/2 S+ 13:25 0:00 grep --color=auto cron (ilnurgi)ilnurgi@ilnurgi-System-Product-Name:~/apps/ilnurgi-clone$
Офлайн
странно. Но работает только так
12 12 * * * cd /home/ilnurgi/ && sh cron.sh
python manage.py parsing_log
Офлайн
у меня в крон примерно следующее:
00,30 * * * * python /full/path/to/project/manage.py command
а не работает у вас почему? может прав на выполнение у manage.py нету?оч частая ситуаия
Офлайн
при добавлений команды через crontab -e, задачи выполняются от чего имени? от имени того кто добавил это задание? Или от рута?
Офлайн
ilnur
вам бы основы Линукса подучить, прежде чем такими делами заниматься. Конечно от имени того кто это задание добавил
Офлайн
основы то в процессе учу. Но не останавливаться на этой задачке.
Офлайн
1. во первых проверьте, что у вас находится в settings.ROOT_PATH
2. в скрипте везде используйте только абсолютные пути
3. выполните вручную команду python /ilnurgi.ru/manage.py test не из директории, где находится manage.py, а например, из домашней директории и посмотрите на результат.
Офлайн