۱۳۸۶/۰۹/۰۴

آموزش Crontab

linux

چگونه یک فایل Crontab بسازیم


سلام

Cron چیست؟


Cron ابزاری (سرویسی؟) است که دستورات shell را به صورت دوره ای، بر اساس زمانبندی داده شده اجرا می کند. Cron بوسیله crontab گردانیده می شود. Crontab فایل پیکربندی ای است که جزییات دستورات و جدول زمانبندی در آن نگهداری می شود.

ساختن یک فایل crontab


برای ایجاد یک فایل crontab دستور زیر را در terminal وارد کنید:
[bash]crontab -e[/bash]

با وارد کردن دستور بالا، ویرایشگر ترمینال (ویرایشگر پیش فرض در اوبونتو Nano است) به همراه یک بلوک جدید از فایل crontab (و یا crontab موجود، در صورتی که از قبل آن را داشته باشید) باز می شود.
در این مرحله شما باید قبل از بستن ویرایشگر، دستوراتی را که قصد اجرای آن ها را دارید، با توجه به syntax (دستور زبان؟ نحو؟) ای که در ادامه توضیح داده شده است وارد کنید.

بعد از بستن ویرایشگر، برای مشاهده تمام crontab های فعال، دستور زیر را در ترمینال وارد نمایید:
[bash]crontab -l[/bash]

دستور زبان Crontab
فایل crontab شش field (فیلد؟) معین به ترتیب دقیقه، ساعت، روز ماه (۱ تا ۳۱)، ماه، روز هفته (۰ تا ۶) و دستوری(دستوراتی) که باید اجرا شوند. در زیر فرم کلی این دستور را می بینید:
[bash]
* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
[/bash]

مثال های crontab


نوشتن فایل crontab ممکن است برای اولین بار کمی گیج کننده به نظر برسد. بنابراین در زیر تعدادی مثال به همرا توضیح ارائه شده است:
[bash]
* * * * * <command>
#هر دقیقه اجرا می شوند - Runs every minute

30 * * * * <command>
#هر ۳۰ دقیقه اجرا می شوند - Runs at 30 minutes past the hour

45 6 * * * <command>
#هر روز ساعت ۶:۴۵ صبح اجرا می شوند - Runs at 6:45 am every day

45 18 * * * <command>
#هر روز صبح ساعت ۶:۴۵ بعد از ظهر اجرا می شوند - Runs at 6:45 pm every day

00 1 * * 0 <command>
#هر یکشنبه یاعت ۱ صبح(بامداد؟) اجرا می شوند - Runs at 1:00 am every Sunday

00 1 * * 7 <command>
#هر یکشنبه ساعت ۱ بامداد اجرا می شوند - Runs at 1:00 am every Sunday

00 1 * * Sun <command>
#هر یکشنبه ساعت ۱ بامداد اجرا می شوند - Runs at 1:00 am every Sunday

30 8 1 * * <command>
#اولین روز هر ماه ساعت ۸:۳۰ - Runs at 8:30 am on the first day of every month

00 0-23/2 02 07 * <command>
#Runs every other hour on the 2nd of July
[/bash]

علاوه بر مثال های بالا String های خاصی را می توان به کار برد:
[bash]
@reboot <command> #هنگام بوت سیستم اجرا می شود - Runs at boot
@yearly <command> #هر سال اجرا می شود - Runs once a year [0 0 1 1 *]
@annually <command> #هر سال اجرا می شود - Runs once a year [0 0 1 1 *]
@monthly <command> #هر ماه اجرا می شود - Runs once a month [0 0 1 * *]
@weekly <command> #هر هفته اجرا می شود - Runs once a week [0 0 * * 0]
@daily <command> #هر روز اجرا می شود - Runs once a day [0 0 * * *]
@midnight <command> #هر روز اجرا می شود - Runs once a day [0 0 * * *]
@hourly <command> #هر ساعت اجرا می شود - Runs once an hour [0 * * * *]
[/bash]

اجرای چندین دستور


برای اجرای چندین دستور پی درپی، آنها را با استفاده از "&&" به صورت پی در پی بنویسید. مثال زیر ابتدا دستور command_01 و سپس دستور command_02 را در هر روز اجرا می کند:
[bash]
@daily <command_01> && <command_02>
[/bash]

غیر فعال کردن اطلاع رسانی از طریق پیام


به صورت پیش فرض برنامه cron در هنگام اجرا کردن cronjob، یک پیام به کاربر ارسال می کند. در صورتی که می خواهید این امکان را غیر فعال کنید، کافیست خط زیر را به آخر برنامه cron خود اضافه کنید:
[bash]
>/dev/null 2>&1
[/bash]

مشخص کردن بک فایل مخصوص crontab برای استفاده


همانطور که پیش تر در بالای همین مطلب ذکر شد، شما می توانید با دستور "crontab -e" یک فایل crontab بسازید. به هر حال ممکن است شما از قبل یک فایل crontab داشته باشید. برای مشخص کردن فایل خود، دستور زیر را وارد کنید:
[bash]
crontab -u username CRONTAB_FILE;
[/bash]

سپس دستور زیر را وارد کنید(به جای tux نام کاربری خود را بنویسید):
[bash]
crontab -u tux ~/crontab
[/bash]

فایل crontab کاربر tux با نام crontab در پوشه خانگی آن ذخیره شد.

حذف کردن فایل crontab


برای حذف فایل crontab، دستور زیر را در ترمینال وارد کنید:
[bash]
crontab -r
[/bash]

اطلاعات بیشتر
برای بدست آوردن اطلاعات بیشتر می توانید فایل manual مربوط به crontab را با استفاده از دستور زیر در ترمینال ببیند:
[bash]
man crontab
[/bash]

منابع


Howto Set-up a Crontab File
Cron article on Wikipedia
Ubuntu Documentation - CronHowto



موفق باشید

۱۳۸۶/۰۹/۰۳

Qps، ابزار پرس و جوی فرایند های در حال انجام X

linux

Qps Visual Process Manager


سلام
بسیار از کاربران لینوکس برای بررسی فرایند های در حال انجام در X از دستوراتی مانند ps, top, kill, و nice استفاده می کنند.

این دستورات روان و کاربردی هستند و در هر پخشی (distribution) از لینوکس یافت می شوند. به هرحال گاهی اوقات یک ابزار گرافیکی می تواند کاربردی تر باشد. بخصوص برای کاربرانی که تازه با لینوکس آشنا شده اند.

Qps Visual Process Manager


Qps یک رابط گرافیکی قوی برای مدیریت این فرایند ها می باشد. Qps امکانات بسیار مفیدی برای مدیریت فرایند های در حال اجرا به شما می دهد.
برای نصب (در اوبونتو) کافیست دستور زیر را در ترمینال اجرا کنید:

sudo aptitude install qps



همچنین Qps در بخش tray (همان جایی که ساعت نمایش داده می شود، معمولا بالا راست) نمودار فعالیت CPU را نمایش می دهد.

به نقل از Linux.com


When it comes to managing processes, many people use old reliable commands such as ps, top, kill, and nice. These commands are handy, useful, and found in every Linux distribution. However, sometimes a GUI process manager can be useful, especially when you're trying to teach new Linux system administrators who aren't used to shell interfaces. Qps Visual Process Manager is a GUI ps substitute that lets you sort, manipulate, and manage processes.



موفق باشید

۱۳۸۶/۰۹/۰۱

تغییر Media player (در گنوم)

gnome
سلام

منظور از Media player در اینجا، برنامه پخش موسیقی و فیلمی است که با استفاده از صفحه کلید (از طریق کلید های میانبر و یا Hotkeys های نوت بوک) اجرا می شود.
برای اینکار ابتدا کلید های Alt+F2 را بزنید و سپس عبارت gconf-editor را وارد کرده و بر روی Run کلیک کنید:

gconf-editor



سپس به شاخه زیر بروید:


/desktop/gnome/applications/media/



مقدار کلید exec را برابر نام برنامه مورد نظر قرار دهید:


gconf-editor-media-player-exec





* نام برنامه مورد استفاده من Exaile است.

موفق باشید