2013-03-17, 09:59 PM
من مدت کمی هست که به گنو/لینوکس مهاجرت کردم و یکی از کارهای همیشگیم هم دانلودهای شبانه(در ساعات رایگان) هستش! به این صورت که سیستم در ساعت مشخصی از حالت Sleep خارج بشه ، شروع به دانلود کنه و در ساعت خاصی هم دوباره به وضعیت Sleep برگرده. مشخصا" برای کار هم از crontab استفاده میکنم.
قبلا" همه مراحل بدون هیچ مشکلی پیش میرفت اما الان بعد از چند بار توزیع عوض کردن مرحله اول درست عمل نمیکنه یعنی خروجی دستور rtcwake که من ازش استفاده میکنم کامپیوتر رو برای wakeup تو ساعت اشتباهی زمانبندی می کنه. بعد از کمی مطالعه متوجه شدم که این مسئله از اشتباه بودن Hardware Clock ناشی شده به همین دلیل شروع به خوندن منوال دستورهای date , hwclock کردم و بالاخره سعی کردم با ست کردن ساعت سختافزاری به مقدار درست مسئله رو حل کنم(hwclock --set). اما مشکل اینجاست که با هر بار Sleep کردن یا ریستارت کردن سیستم دوباره مقدار اون اشتباه میشه. اگر ایدهای دارید که مشکل از کجاست ممنون میشم که باهام درمیون بزارید. :wink:
یه مقدار اطلاعات دیگه:
توزیع فعلی: Opensuse 12.2 kde x64
محتویات Crontab:
با توجه به اینکه تو بایوس ساعت رو به صورت UTC وارد کردم این خروجیها رو دارم:
و در نهایتم یه نمونه از خروجی rtcwake:
قبلا" همه مراحل بدون هیچ مشکلی پیش میرفت اما الان بعد از چند بار توزیع عوض کردن مرحله اول درست عمل نمیکنه یعنی خروجی دستور rtcwake که من ازش استفاده میکنم کامپیوتر رو برای wakeup تو ساعت اشتباهی زمانبندی می کنه. بعد از کمی مطالعه متوجه شدم که این مسئله از اشتباه بودن Hardware Clock ناشی شده به همین دلیل شروع به خوندن منوال دستورهای date , hwclock کردم و بالاخره سعی کردم با ست کردن ساعت سختافزاری به مقدار درست مسئله رو حل کنم(hwclock --set). اما مشکل اینجاست که با هر بار Sleep کردن یا ریستارت کردن سیستم دوباره مقدار اون اشتباه میشه. اگر ایدهای دارید که مشکل از کجاست ممنون میشم که باهام درمیون بزارید. :wink:
یه مقدار اطلاعات دیگه:
توزیع فعلی: Opensuse 12.2 kde x64
محتویات Crontab:
کد :
#Wake up the pc
00 * * * * root rtcwake -m no -u -t $(date +%s -d 'tomorrow 01:58')
#Start the Bittorrent client
00 2 * * * rotar /usr/bin/ktorrent &
#Sleep!
00 7 * * * root pm-suspend
کد :
$date
Sun Mar 17 21:43:02 IRST 2013
کد :
$date -u
Sun Mar 17 18:14:11 UTC 2013
کد :
#hwclock --show
Sun 17 Mar 2013 09:45:36 PM IRST -0.981589 seconds
کد :
# rtcwake -m no -u -t $(date +%s -d 'tomorrow 01:58')
rtcwake: wakeup using /dev/rtc0 at Sun Mar 17 22:28:00 2013