Digital Note

Grab a coffe, take a seat, maybe listen to some music and relax by reading our digital daily diary. We want to share our minds and know how with you and the whole world!

Blog phones

Auto Power On & Auto Shutdown Linux

Fungsi auto power on dan auto shutdown sangatlah penting, yaitu untuk meng’istirahatkan’ server pada malam hari. Lewat postingan ini saya share cara2 membuat agar server bisa auto up / auto power on sesuai dengan waktu yang kita inginkan.

Auto Power On :

Untuk membuat auto power on, maka pastikan dulu power management pada BIOS sudah tersetting ke S3(STR), bukan ke S1(POS), karena S1 tidak mendukung system standby dan hibernate. Kemudian install paket pm-utils linux.

# apt-get install pm-utils

Cek status wakealarm

# cat /proc/driver/rtc
rtc_time      : 13:52:59
rtc_date      : 2010-05-25
alrm_time     : 13:57:57
alrm_date     : ****-**-**
alarm_IRQ     : no
alrm_pending  : no
24hr          : yes
periodic_IRQ  : no
update_IRQ    : no
HPET_emulated : yes
DST_enable    : no
periodic_freq : 1024
batt_status   : okay

tanda ****_**_** menunjukkan alarm belum di setting

Disable HWclock updates :

# nano /etc/init/hwclock-save.conf
# hwclock-save - save system clock to hardware clock
#
# This task saves the time from the system clock back to the hardware
# clock on shutdown.
description "save system clock to hardware clock"
start on runlevel [06]
task
script
    . /etc/default/rcS
    [ "$UTC" = "yes" ] && tz="--utc" || tz="--localtime"
    [ "$BADYEAR" = "yes" ] && badyear="--badyear"
#    exec hwclock --rtc=/dev/rtc0 --systohc $tz --noadjfile $badyear
end script

beri tanda # seperti tampilan diatas. kemudian save dan exit editor

Reset wakealarm

# echo 0 > /sys/class/rtc/rtc0/wakealarm

Menentukan jadwal auto up :

Ini bagian terpenting!! ok kita anggap jam diatas 13:57:57 kita bulatkan menjadi 14:00:00 , jika kita menginginkan server agar auto up pada jam 7 pagi keesokan harinya, maka hitung2annya (7+24) – 14 = 17 jam. Dari sini kita tentukan jadwal auto up adalah 17 jam dari jam sekarang (14:00). Tetapi ada satu lagi penambahan waktu berdasarkan GMT, yaitu klo kita berada di time zone +7 GMT maka dari 17 jam harus ditambahkan 7 jam lagi sehingga menjadi 24 jam

# echo `date '+%s' -d '+ 24 hours 0 minutes'` > /sys/class/rtc/rtc0/wakealarm

Cek lagi status wakealarm :

# cat /proc/driver/rtc
rtc_time       : 14:01:28
rtc_date       : 2010-05-25
alrm_time      : 07:01:25
alrm_date      : 2010-05-26
alarm_IRQ      : yes
alrm_pending   : no
24hr           : yes
periodic_IRQ   : no
update_IRQ     : no
HPET_emulated  : yes
DST_enable     : no
periodic_freq  : 1024
batt_status    : okay

Status wake alarm sudah terjadwal pada jam 7 pagi keesokan harinya. Nah bagaimana jika ingin agar bisa auto up setiap hari? Solusinya adalah membuat schedule cron job untuk 2 perintah diatas.

Misalkan kita buat schedule setiap jam 8 pagi di cron job

# crontab -e

Misalkan kita buat schedule setiap jam 8 pagi di cron jobtambahkan parameter berikut :

0 8 * * * echo 0 > /sys/class/rtc/rtc0/wakealarm #reset dulu wakealarm
1 8 * * * echo `date '+%s' -d '+ 30 hours 0 minutes'` > /sys/class/rtc/rtc0/wakealarm #set wakealarm

save and exit editor

catatan : untuk setting wakealarm harus diawali dengan reset wakealarm

Auto Shutdown :

Yang dimaksud auto shudown/ auto off disini adalah membuat server dalam keadaan hibernate atau standby, tidak dalam keadaan yang benar2 shutdown/ halt. Karena apabila power dalam keadaan benar2 off, maka fungsi wakealarm tidak akan bekerja.

Perintah untuk Standby :

# pm-suspend

Perintah untuk Hibernate :

# pm-hibernate

Misal membuat jadwal untuk auto off setiap jam 17:00

# crontab -e

tambahkan parameter :

0 17 * * * pm-hibernate #hibernate everyday

Selesai sampai disini , semoga bermanfaat !!!!

Trackback from your site.

Leave a comment