Sabtu, 17 Oktober 2015

Tutorial Daemon

Apa itu Daemon?
Daemon adalah suatu proses yang berjalan sendiri tanpa perintah user. Daemon berjalan di komputer kita tanpa sepengetahuan kita. Daemon aktif pada waktu tertentu atau pada kondisi tertentu yang membuat daemon tersebut aktif.

Langkah-langkah membuat Daemon :
1) Buka terminal pada linux


2) Buat file daemon.c dengan command gedit daemon.c


Lalu akan muncul 


3) Masukkan kode
Berikut kode untuk membuat daemon dalam bahasa C :
#include <sys/types.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <errno.h>
#include <unistd.h>
#include <syslog.h>
#include <string.h>

int main(void) 
{             
        pid_t pid, sid;       
        /* melakukan forking */
        pid = fork();
        if (pid < 0) {
                exit(EXIT_FAILURE);
        }
        if (pid > 0) {
                exit(EXIT_SUCCESS);
        }
        umask(0);
              
        /* membuatkan Session ID baru untuk proses anak */
        sid = setsid();
        if (sid < 0) {
                /* Log the failure */
                exit(EXIT_FAILURE);
        }
        
        /* ubah direktorinya ke root*/
        if ((chdir("/")) < 0) {
                /* Log the failure */
                exit(EXIT_FAILURE);
        }
        
        /* menutup standard I/O deskriptor */
        close(STDIN_FILENO);
        close(STDOUT_FILENO);
        close(STDERR_FILENO);
     
        while (1) {
           /* masukkan kodingan program kalian di sini
              supaya dijalankan oleh proses Daemon  */
           
           sleep(30); 
           /* buat program kalian berhenti sejenak 
              sebelum melakukan looping selanjutnya */
        }
   exit(EXIT_SUCCESS);
}

Masukkan kode diatas ke dalam daemon.c


Ubah kode dalam 
" while (1) {
           /* masukkan kodingan program kalian di sini
              supaya dijalankan oleh proses Daemon  */
           
           sleep(30); 
           /* buat program kalian berhenti sejenak 
              sebelum melakukan looping selanjutnya */
        } "
sesuai keinginan anda misal saya ingin terminal menampilkan kata-kata setiap 15 detik maka kode diatas diubah menjadi :
" while (1) {
           printf("Tulisan ini muncul sendiri\n");
           sleep(30); 
        } "

Sehingga hasilnya seperti ini :


4) Jalankan daemon.c
Cara menjalankan file .c pada linux adalah dengan command gcc "namafile.c" -o "output"


Lalu run output tersebut dengan command ./"output"


5) Daemon telah berjalan


Kata-kata tersebut otomatis muncul setiap 15 detik



6) Mematikan Daemon
Daemon berjalan sendiri sehingga jika tidak segera dimatikan lama kelamaan akan mengganggu user (seperti virus). Untuk mematikan daemon pertama kita harus mengetahui Process idnya dengan command ps aux


Matikan daemon dengan command kill "process id"


----  SELAMAT MENCOBA  ----