انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: اجرا نشدن برنامه ها با cron (حل شد)  (دفعات بازدید: 2148 بار)

0 کاربر و 1 مهمان درحال مشاهده موضوع.

آفلاین iCEAGE

  • Sr. Member
  • *
  • ارسال: 399
  • جنسیت : پسر
  • Life is Free and Beautiful
    • وبلاگ شخصی من
اجرا نشدن برنامه ها با cron (حل شد)
« : 02 شهریور 1388، 09:25 ب‌ظ »
سلام به همه دوستان عزیز
چند وقتی است من مشکلات اساسی با cron دارم.
برنامه هایی که می خوام زمان بندی بشن رو داخل فایل crontab با دستور crontab -e قرار میدم ولی هیچ اتفاقی نمیفته. در ضمن برنامه ی cron هم تو لیست process ها وجود داره و اجرا است.
به عنوان مثال این خط رو به crontab اضافه میکنم:
50 20 * * * /usr/bin/opera >/dev/null 2>&1ولی هیچ اتفاقی در ساعت 20:50 نمیفته در ضمن log این برنامه در مسیر var/log/cron.log به صورت زیر است:
Aug 24 20:50:02 hamed-desktop /USR/SBIN/CRON[7960]: (hamed) CMD (/usr/bin/opera >/dev/null 2>&1)
تنها shutdown رو تونستم با دسترسی root  اجرا کنم. اول دستور زیر رو اجرا می کنم تا یک job برای root بسازم:
sudo crontab -eبعد از باز شدن nano خط زیر رو اضافه کردم:
00 07 * * * /sbin/shutdown -P nowبه این طریق shutdown در ساعت 7 صبح اتفاق می افتد. ولی هیچ دستور دیگری اجرا نمیشود. تمام خطوط زیر رو به crontab  اضافه کردم ولی هیچ اتفاقی نیافتاده:
00 03 * * * /usr/bin/nt00 03 * * * /usr/bin/gedit00 03 * * * /usr/bin/nautilus
چند روز است که کارم شده خوندن ویکی فارسی و انگلیسی همچنین man cron و man crontab
کسی تا حالا با این مشکل برخورد کرده؟
کسی نیست بگه مشکل از کجاست؟ واقعا کلافه شدم  ](*,) ](*,) :( :(
« آخرین ویرایش: 02 شهریور 1388، 11:30 ب‌ظ توسط iCEAGE »
People said I should accept the world. Bullshit! I don't accept the world. Richard Stallman
زندگی آزاد

آفلاین iCEAGE

  • Sr. Member
  • *
  • ارسال: 399
  • جنسیت : پسر
  • Life is Free and Beautiful
    • وبلاگ شخصی من
پاسخ به: اجرا نشدن برنامه ها با cron
« پاسخ #1 : 02 شهریور 1388، 11:28 ب‌ظ »
مشکل من حل شد البته با کمک Alinn
نقل و قولی از Alinn رو در زیر داریم:
نقل‌قول
یه فایل متنی باز کنین و اینارو توش بنویسین:
#!/bin/sh
export DISPLAY=:0
gwget
بعد اونو با پسوند sh ذخیره کنین حالا یه جایی بذارش! فرض میکنیم به نام gwget توی /home ه. اینو برای اجرایی کردنش وارد می کنیم:
sudo chmod +x ~/gwgetحالا شما به crontab آدرس این فایلو بدین. مثلا برای همین مورد میشه:
20 03 * * * /home/alinn/gwgetحالا شما اگه می خوای نرم افزار دیگه ای اجرا بشه به جای gwget اونو بذار.

ولی یک سوال برای من پیش اومده که چرا cron  مستقیم فایل های اجرای رو اجرا نمیکنه؟؟؟
People said I should accept the world. Bullshit! I don't accept the world. Richard Stallman
زندگی آزاد