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

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

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


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

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

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

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
درود

من هربار سعی کردم با استفاده از cron کارها رو زمان بندی کنم نتونستم.
جستجو کردم ولی آموزش کاملی درباره کار با cron توی انجمن نبود. ویکی اوبونتو هم که انگار کلا رو هواست و مطالبش به جای اینکه کاملتر بشن دارن کمتر میشن!!! مثلا یه آموزش لاتک و یه راهنما برای cron با توجه به لینک های توی همین انجمن انگار قبلا توی ویکی بوده که الان نیستن.

من توی زربری پای (آخرین نسخه رزبین بر مبنای جسی) وقتی مثلا میزنم

# 01 12 * * * shutdown -h now
سیستم خاموش نمیشه (با کاربری ریشه وارد میکنم)
و همین طور دستورات شروع دانلود که در اینجا اومده : http://forum.ubuntu.ir/index.php/topic,40582.0.html
-----------------------
در صورتیکه همون دستور خاموش شدن به صورت معمولی کار میکنه. خیلی توی انجمن گشتم. لطفا هرکی میدونه راهنمایی کنه.
« آخرین ویرایش: 11 دی 1394، 10:07 ب‌ظ توسط shirfarhad »

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #1 : 11 دی 1394، 05:40 ب‌ظ »
سلام. اون #‌ هم توی کرونت وجود داره؟ # به معنی کامنته. اگه توی فایل باشه، اون خط نادیده گرفته میشه.
اینم آموزش کرون توی ویکی اوبونتوی خودمون
http://web.archive.org/web/20140320122606/http://wiki.ubuntu.ir/CronHowto
 ;)
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #2 : 11 دی 1394، 05:44 ب‌ظ »
نه اون خط رو خودم اینجا کامنت کردم.
ممنون از لطفت میرم بخونمش. شما دستورات رو توی توزیعتون با همین نحو مینویسید و اجرا میشن؟

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #3 : 11 دی 1394، 05:46 ب‌ظ »
آره منم توی توزیعم همین جوری مینویسم. منتها برای shutdown توی کرون ریشه، بازم باید sudo بذاری. دلیلش رو خودمم هنوز نمی دونم. چون عجیبه. یکی دو دستور هستن که توی کرون ریشه هم باز باید sudo‌ پشتشون باشه. اگه مشکلت فقط با همین دستور شات داونه، پس دلیلش اینه. ولی اگه هرچیز دیگه ای هم که میذاری مشکل داره، پس یه جای کار میلنگه.
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #4 : 11 دی 1394، 05:53 ب‌ظ »
تنها این نیست کلا هیچ دستوری رو اجرا نمیکنه. چه خاموش کردن و چه اجرا آریا۲ .

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #5 : 11 دی 1394، 05:55 ب‌ظ »
یه دستور بذار که هر دقیقه اجرا کنه. مثلا ls بگیره از هوم و ... بعد از ذخیره کردنش اینو بزن:
tail -f /var/log/syslogو صبر کن ببین سر هر دقیقه، کرون چه کاری انجام میده. تا بتونی مشکل رو پیدا کنی.
احتمال هم داره که کلا سرویسش اجرا نمیشه یا نشده. تا حالا رزبری نداشتم تا چک کنم. ولی روی گوشیم که کرون دارم، خودش اجرا میشه خود به خود. (معماری آرم + اوبونتو. نباید فرقی با رزبری که آرمه + دبیانه داشته باشه)
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #6 : 11 دی 1394، 06:51 ب‌ظ »
توی دبیان هم امتحان کردم و دستور اجرا نشد.

grep CRON /var/log/syslogخروجی به اینصورت بود :
Jan  1 18:41:01 GNU CRON[3635]: (roozbeh) CMD (/usr/bin/aria2c -v)
---------
این بار مسیر ندادم و باز هم :
grep CRON /var/log/syslogJan  1 18:40:01 GNU CRON[3572]: (roozbeh) CMD (aria2c -v)

---------

توی رزبری هم به اینصورت بود :
Jan  1 17:51:01 roozbeh CRON[2901]: (root) MAIL (mailed 1091 bytes of output but got status 0x004b from MTA#012)
« آخرین ویرایش: 11 دی 1394، 06:53 ب‌ظ توسط shirfarhad »

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #7 : 11 دی 1394، 06:57 ب‌ظ »
خروجی که بدون مشکله.
حواسم نبود اینو بگم. اینکه زدی aria2c -v، تهش هم ریداریکت کن به یه فایل تکست تا ببینی عمل میکنه یا نه.
مثلا
* * * * * aria2c -v > /home/roozbeh/logبعد ببین بعد از یک دقیقه، فایل رو میسازه توی هوم و خروجی رو داخلش مینویسه یا نه.
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #8 : 11 دی 1394، 07:10 ب‌ظ »
توی هر دو (رزبری و دبیان) اطلاعات توی فایل لاگ ذخیره میشن. ولی همین ها نمایش داده نمیشن چرا؟یعنی چرا اجرا نمیشن که ببینمشون؟ یا فرمان خاموش شدن اجرا نمیشه یا مثلا فلان برنامه اجرا نمیشه با کرون.
کرون هم درحال اجراست.
« آخرین ویرایش: 11 دی 1394، 07:12 ب‌ظ توسط shirfarhad »

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #9 : 11 دی 1394، 07:52 ب‌ظ »
دستوری رو که توی کرون میذاری، نشونت نمیده. مگه اینکه خروجی به محیط X بدی (با export DISPLAY=:0 مثلا) یا همین ریدایرکت کردن.
الان یعنی توی هوم یه فایل log ساخت و خروجی ورژن آریا رو توش نوشته بود؟ اگه آره پس کرون سالمه و مشکلی نداره. باید ببینی دستوراتی که میدی باید با چه روشی نوشته بشن توی کرون.
دستوری مثل آریا رو اگه هم اجرا کنه، شما نمی بینیش. مگه اینکه اول ببینی ترمینالت pts چنده. با این دستور
ttyو بعد از گرفتن آدرس، اونو بذاری جلوی دستور تا دستور رو توی ترمینالت ببینی بعد از اینکه آریا۲ اجرا شد. مثلا
00 20 * * * aria2c -v > /dev/pts/1اگه ترمینال اصلیت pts1 باشه، خروجی ورژن آریا۲ رو توی ترمینالت نشون میده. در غیر اینصورت هیچ جا نشون نمیده تا اینکه خودت مشخص کنی کجا نشون بده.
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #10 : 11 دی 1394، 08:18 ب‌ظ »
خدا خیرت بده. چیزای جدیدی یاد گرفتم :) من منتظر بودم بعد از اجرای فرمان اون رو توی ترمینال ببینم! نمیدونستم توی پس زمینه اجرا میشه. حالا باید ببینم چرا خاموش شدن با کرون کار نمیکنه. این قسمت که شما راهنمایی کردی مهم ترینش بود.
توی کرون تب اگه بزنم # 01 12 * * * /sbin/shutdown -h now
اونوقت سیستم خاموش میشه ولی اگه sbin/ رو نزنم کار نمیکنه. با اینکه sbin/ رو به مسیرهام اضافه کرده ام.
-----------
راستی این مورد پیدا کردن شماره tty رو از کجا فهمیدین؟ توی راهنمای کرون نبود.

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #11 : 11 دی 1394، 08:49 ب‌ظ »
اون بالا دقت نکردی چی گفتم؟ نوشتم که shutdown‌ رو باید با sudo بدی
01 12 * * * sudo shutdown -h nowو گفتم که واسه خودمم عجیبه که چرا باید sudo بهش داد.  ???

اون tty هم یه مبحث جداس کلا و کاری به کرون نداره  ;)
tty محیط کامندلاین بدون X (محیط گرافیکی) هست. یعنی وقتی کلا هیچ محیط گرافیکی نداری، توی tty‌ بتونی کارات رو انجام بدی. و اون محیط ترمینالت هم جزئی از tty محسوب میشه و هر ترمینالی که باز کنی، بهش یه pts تعلق می‌گیره. بنابراین، همین جور که میشه مثلا خروجی یه دستور رو فرستاد توی یه فایل، میشه همون خروجی رو فرستاد روی یه دیوایس. که در اینجا میشه ترمینال tty. مثلا میشه خروجی یه دستور رو نوشت روی هارد (که خیلی خطرناکه)  ;D چون هاردت به فنا میره بعدش خخخ.
در هر صورت یه دستور رو که توی بش اجرا میکنی، یه سری خروجی میده که یه سریش استانداردن یه سریش اررورن و ... و میشه به جای اینکه خروجی رو توی ترمینال دید، اونو فرستاد یه جای دیگه. مثلا تو ناکجاآباد (null). به این صورت
sudo apt-get update > /dev/nullاین یعنی سیستمت آپدیت میشه ولی خروجی رو دیگه نمی بینی. میره توی ناکجاآباد  ;D
همین قضیه کلا یه مبحث کامل هست توی LPIC. ندیدی کلیپای جادی رو؟
http://forum.ubuntu.ir/index.php/topic,114612.0/topicseen.html
 ;)
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین shirfarhad

  • Jr. Member
  • *
  • ارسال: 53
  • جنسیت : پسر
پاسخ : مشکل در اجرای دستورات توسط cron
« پاسخ #12 : 11 دی 1394، 10:05 ب‌ظ »
توضیحاتتون بسیار خوب بود. شما درست میگید سری ویدئوهایی جادی رو دیدم. ولی این مورد pts برام تازگی داشت. باز هم متشکرم از جواب کامل و به موقعتون .  =D>

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3504
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : مشکل در اجرای دستورات توسط cron - (حل شد)
« پاسخ #13 : 11 دی 1394، 10:12 ب‌ظ »
حالا خودمم دقیق خبر ندارم توی کلیپای جادی راجع به tty‌ حرف زد یا نه. ولی کلیت حرفم رو توی کلیپای جادی می‌شد پیدا کرد. همین قضیه‌ی خروجی استاندارد و اررور و ریدایرکت و ...  ;)
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین meysam1717

  • Jr. Member
  • *
  • ارسال: 27
پاسخ : مشکل در اجرای دستورات توسط cron - (حل شد)
« پاسخ #14 : 12 دی 1394، 12:53 ب‌ظ »
سلام
بنده هم با کرون تب به مشکل خوردم و دستوراتم اجرا نمیشن توزیع فدورا ۲۳ دارم (نیاز دارم با این توزیع کار کنم).
قبلا تو ابونتو اجرا میشد ولی الان داخل فدورا اجرا نمیشن
محتویات فایل /etc/crontab
SHELL=/bin/bash
PATH=$PATH
MAILTO=root

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,$
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
* * * * * ls /home >> /home/walker/log.txt