توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : کمک برای تنظیم cron
amolhost
October 8th, 2010, 12:09
سلام دوستان
سرور من مصرف رمش خیلی بالاست دستور زیر رو که میزنم
ps -aux
و پروسه ها رو که نگاه میکنم آپاچی و غیره هستن ولی درصد ها رو که نگاه میکنم خیلی ها روی 0 درصد هستن بعضی ها هم روی 0.1 هستن فقط رم کش میشه یک گیگ رم تقریبا 850 تاش کش میشه هروقت کش رو خالی میکنم رم فری میره روی دوروبر 800 تا
خلاصه
می خواهم تنظیم کنم هر 20 دقیقه دستور خالی کردن کش رو که به صورت زیر است اجرا بشه
echo 3 > /proc/sys/vm/drop_caches
یک کد نمونه هم میگم که توی cron میشه گزاشت برای اجرای دستور تعمیر کردن دیتابیس رشب انجام میده این کد رو من فقط نمیتونم زمانشو تایین کنم چطوری هر 20 دقیقه کش رو خالی کنه
یک نمونه برای تعمیر دیتابیس
0 0 * * * /usr/bin/mysqlcheck -Aor
ممنون میشم کمک کنن دوستان
---------- Post added at 12:09 PM ---------- Previous post was at 10:39 AM ----------
کسی بلد نیست؟
Online24
October 8th, 2010, 13:50
این قاعده رو به خاطر بسپارید :
* * * * * Command to be executed
- - - - -
| | | | |
| | | | +----- Day of week (0-7)
| | | +------- Month (1 - 12)
| | +--------- Day of month (1 - 31)
| +----------- Hour (0 - 23)
+------------- Min (0 - 59)
دستور crontab -e رو وارد کنید .
* با ویرایشگر پیش فرض سیستم ، فایل crontab رو نمایش میدهد .
حالا با قاعده ای که خدمتتون گفته شد ، دستورات cron رو وارد کنید .
برای نیاز شما دستور به این صورت باید وارد شود :
*/20 * * * * echo 3 > /proc/sys/vm/drop_caches
پ.ن : فقط مثالی از اجرای عمل منظم توسط cron هست !
راه حل مناسب و توصیه شده ای برای خالی کردن cache به این روش نیست .
در ضمن تنظیمات cron به آسانی بوسیله انواع کنترل پنل ها انجام میشود .
info_dlsong
October 8th, 2010, 15:34
این قاعده رو به خاطر بسپارید :
* * * * * Command to be executed
- - - - -
| | | | |
| | | | +----- Day of week (0-7)
| | | +------- Month (1 - 12)
| | +--------- Day of month (1 - 31)
| +----------- Hour (0 - 23)
+------------- Min (0 - 59)
دستور crontab -e رو وارد کنید .
* با ویرایشگر پیش فرض سیستم ، فایل crontab رو نمایش میدهد .
حالا با قاعده ای که خدمتتون گفته شد ، دستورات cron رو وارد کنید .
برای نیاز شما دستور به این صورت باید وارد شود :
20 * * * * echo 3 > /proc/sys/vm/drop_caches
پ.ن : فقط مثالی از اجرای عمل منظم توسط cron هست !
راه حل مناسب و توصیه شده ای برای خالی کردن cache به این روش نیست .
در ضمن تنظیمات cron به آسانی بوسیله انواع کنترل پنل ها انجام میشود .
سلام
علی جان الان من اگه این رو بزنم این دستور هر چند وقت یکبار اجرا میشه؟
اون 20 اولی رو درست حسابی متوجه نشدم
20 * * * * echo 3 > /proc/sys/vm/drop_caches
Online24
October 8th, 2010, 15:47
سلام
علی جان الان من اگه این رو بزنم این دستور هر چند وقت یکبار اجرا میشه؟
اون 20 اولی رو درست حسابی متوجه نشدم
20 * * * * echo 3 > /proc/sys/vm/drop_caches
با توجه به قائده ای که گفتم :
* * * * * Command to be executed
- - - - -
| | | | |
| | | | +----- Day of week (0-7)
| | | +------- Month (1 - 12)
| | +--------- Day of month (1 - 31)
| +----------- Hour (0 - 23)
+------------- Min (0 - 59)
هر 20 دقیقه ...
البته این دستور " echo 3 > /proc/sys/vm/drop_caches " ارزش قرار دادن در cron رو نداره ! یک بار اجرا کافیست اجرا بشه تا drop cache رو انجام بده . ( این تنظیم تا زمانی که سیستم ریبوت نشه باقی میمونه )
فقط به عنوان یک مثال و با توجه به نیاز صاحب تاپیک استفاده کردیم .
info_dlsong
October 8th, 2010, 15:59
با توجه به قائده ای که گفتم :
* * * * * Command to be executed
- - - - -
| | | | |
| | | | +----- Day of week (0-7)
| | | +------- Month (1 - 12)
| | +--------- Day of month (1 - 31)
| +----------- Hour (0 - 23)
+------------- Min (0 - 59)
هر 20 دقیقه ...
البته این دستور " echo 3 > /proc/sys/vm/drop_caches " ارزش قرار دادن در cron رو نداره ! یک بار اجرا کافیست اجرا بشه تا drop cache رو انجام بده . ( این تنظیم تا زمانی که سیستم ریبوت نشه باقی میمونه )
فقط به عنوان یک مثال و با توجه به نیاز صاحب تاپیک استفاده کردیم .
سلام
والا من گیج شدم
این قائده ای که گفتی میگه یک ستاره مال دقیقه هستش ولی 4 تا گذاشتی اگه بخوایم طبق قائده بگیم میشه هر 20 ماه :-؟؟
---------- Post added at 02:59 PM ---------- Previous post was at 02:54 PM ----------
آها متوجه شدم
Online24
October 8th, 2010, 16:02
ببینید ، هر 5 ستاره به تنهایی یک متغییر هستند !
ستاره اول = همیشه برای تنظیم دقیقه ،
ستاره دوم = برای تنظیم ساعت ،
ستاره سوم = در یکی از روزهای ماه ،
ستاره چهارم = در یکی از ماه های سال ،
ستاره پنجم = در یکی از روزهای هفته ،
وقتی من به این صورت دستور رو ایجاد کردم = * * * * 20 یعنی متغییر اول که مربوط به دقیقه هست رو روی 20 تنظیم کردم ، یعنی قصد دارم این دستور رو هر 20 دقیقه یکبار اجرا کنم .
فرمت کامل دستور هم همونطوری که گفته شد
* * * * * Command to be executed
هست .
مثال های بیشتر :
# 32 * * * * : will be run every hour on the 32nd minute.
# 12,42 * * * * : will be run twice an hour on the 12th and 42nd minutes.
# */15 */2 * * *: will be run at 0:00, 0:15, 0:30, 0:45, 2:00, 2:15, 2:30, ...
# 43 18 * * 7: will be run at 6:43pm every Sunday.
info_dlsong
October 8th, 2010, 16:09
یعنی علی جان اگه بخوام یک دستور هر یک ساعت اجرا شه اینجوری میشه؟
* 1 * * * XXXXXبعد برای اینکه از cron درش بیارم باید چیکار کنم
Online24
October 8th, 2010, 16:27
یعنی علی جان اگه بخوام یک دستور هر یک ساعت اجرا شه اینجوری میشه؟
نه ! با اون دستور هر روز ساعت 1:00 am اجرا میشه .
اگر میخواید هر ساعت اجرا کنید ، متغییر hour رو * قرار بدید .
یعنی به این صورت برای اجرا در هر 1 ساعت :
0 * * * * rm -rf /temp
بعد برای اینکه از cron درش بیارم باید چیکار کنم
میتونید با دستور crontab -e فایل crontab رو باز کنید و سطر مربوط به دستور خودتون رو حذف کنید .
و یا با دستور crontab -r کل فایل crontab رو پاک کنید ( تمامی cron ها از بین خواهند رفت )
---------- Post added at 03:27 PM ---------- Previous post was at 03:22 PM ----------
در ضمن یک اشتباهی صورت گرفت ، اجرای عملی در هر 20 دقیقه به این صورت دستور دهی میشود :
*/20 * * * * Command
دستور * * * * 20 در هر ساعت و در دقیقه 20 ام آن عمل را انجام میدهد .
پ.ن : با تشکر از Hugeserver عزیز جهت تذکر این مورد .
mikili
January 26th, 2011, 19:33
هیچ جوری نمیشه رو ثانیه تنظیم شه ؟
میخوام هر 3 ثانیه یه فایل پرل باز شه( البته با یوزر روت )
Rezash
January 26th, 2011, 20:17
با cron فكر نكنم زير دقيقه بشه درست كرد
يك شل اسكريپت بنويسيد و با اون هر چند ثانيه كه خواستيد run كنيد.
يا در يك فايل perl يك حلقه بي نهايت بذاريد ، بعد به مدت 3 ثانيه در هر گردش sleep بديد و فايل رو لود كنيد.