Latest Posts

Pengunaan Mail & Sendmail Di Server Ubuntu/Debian

  



Melanjutkan pengunaan aplikasi email di server ubuntu/debian, kali ini yang saya bahas di artikel ini adalah pengunaan mail dan sendmail, sebenarnya kedua aplikasi inipun saling terkait satu dengan yang lainnya. Untuk membantu anda memahami artikel ini, maka ada baiknya anda membaca artikel sebelumnya yaitu Mengirimkan File Hasil Sinkronisasi [Rsync] Mengunakan Mpack Di Server Ubuntu/Debian, dan jika anda sudah melakukaan instalasi mpack seperti yang sudah saya jelaskan pada artikel tersebut maka langkah instalasi mail dan sendmail dibawah ini bisa dilewatkan saja.

Instalasi Mail & Sendmail.
root@proxy2:~# apt-get update
root@proxy2:~# apt-get install mailutils sendmail

Penerapan command mail di terminal.

Format 1.

  mail -s subjeck email


root@proxy2:~# mail -s Ujicoba wong.284@gmail.com
Cc:   #Enter saja kalau tidak ada Cc
Tulis isi email disini
# Kemudian tutup sekaligus langsung mengirimkannya ke email tujuan dengan menekan Ctrl+D
You have new mail in /var/mail/root

Hasilnya.
01

Format 2.

  mail -s subjeck email < lokasi/file


root@proxy2:~#  mail -s realname.cfg-proxy2 wong284@gmail.com < /var/www/lightsquid/realname.cfg

* Dengan command mail diatas maka isi konten dari file realname.cfg akan langsung di tampilkan pada isi pesan email.

Hasilnya.
mail 02
mail 03

Pengunaan mail di cronjob.
Disini saya mengunakan mail untuk mengirimkan hasil sinkronisasi [Rsync] file realname.cfg [Baca artikel sebelumnya].  
0 15 * * 1,2,3,4,5,6 /bin/bash /rsync-lightsquid/realname.sh > /dev/null 2>&1 | mail -s realname.cfg-proxy2 < /var/www/lightsquid/realname.cfg

Penerapan command sendmail di terminal.

Format.

  sendmail email < lokasi/file


root@proxy2:~# sendmail wong284@gmail.com < /var/www/lightsquid/realname.cfg

* Dengan command sendmail diatas maka isi konten dari file realname.cfg juga akan langsung di tampilkan pada isi pesan email.

Hasilnya.
sendmail

Pengunaan sendmail di cronjob.
Disini saya mengunakan mail untuk mengirimkan hasil sinkronisasi [Rsync] file realname.cfg [Baca artikel sebelumnya].  
0 15 * * 1,2,3,4,5,6 /bin/bash /rsync-lightsquid/realname.sh > /dev/null 2>&1 | sendmail wong.284@gmail.com < /var/www/lightsquid/realname.cfg

Tips. Pilih aplikasi email yang paling simple menurut anda untuk diterapkan di cronjob.


Selamat Mencoba!.

Mengirimkan File Hasil Sinkronisasi [Rsync] Mengunakan Mpack Di Server Ubuntu/Debian

  



Artikel mengenai mpack ini masih berhubungan dengan artikel sebelumnya yaitu [Rsync] Sikronisasi Data Antara Dua [2] Komputer Server Ubuntu/Debian Mengunakan Bash Script Dan Cronjob.

Pembahasan mpack ini karena saya gunakan untuk mengirimkan file hasil sinkronisasi oleh Rsync setelah dijalankan via cronjob, jadi saya bisa melihat & menyimpan file hasil sikronisasi yang bisa saya jadwalkan via cronjob per hari/ per minggu, hitung-hitung sebagai backup juga jadinya, multifungsi. Oleh karena file tsb tersimpan di email agar terlihat lebih rapi maka tinggal buat label baru misalnya "Hasil-Rsync" dan terapkan fungsi filter emailnya.

Salah satu aplikasi email yang menurut saya simple dalam pengunaannya adalah mpack. Walaupun masih ada yang lainnya seperti mail, sendmail, mutt, ssmtp, postfix, telnet.

Tips. Apabila tidak mengunakan user root maka gunakan sudo untuk user sudoer.

Instalasi mpack.
apt-get update
apt-get install mpack
apt-get instal sendmail mailutils #Untuk mendukung agar pengiriman email bisa berfungsi dengan baik.

* Jika hanya instal mailutils tanpa sendmail maka pada ubuntu otomatis akan di instal pula postfix.

Command mpack di terminal.

Format.

 mpack -s "subjek" lokasi/file emailku@domain.web.id


Penerapan.
root@proxy2:~# mpack -s "realname.cfg" /var/www/lightsquid/realname.cfg wong.284@gmail.com
Atau kirimkan ke beberapa email sekaligus.
root@proxy2:~# mpack -s "realname.cfg" /var/www/lightsquid/realname.cfg wong.284@gmail.com wong_284@yahoo.co.id wong284@hotmail.com
Keterangan :
mpack : Pengiriman email mengunakan mpack.
-s : Subjek email "Judul".
Lokasi File : Direktori tempat file berada, file yang nanti akan dikirimkan.
Email tujuan : emailku@domain.web.id.

Hasil pengiriman.

Cek di folder Inbox atau di Spam.


Hasil pengunaan mpack

Mengirimkan ke beberapa email sekaligus.


Pengunaan mpack di cronjob.
Disini saya mengunakan mpack untuk mengirimkan hasil sinkronisasi [Rsync] file realname.cfg [Baca artikel sebelumnya].  
0 15 * * 1,2,3,4,5,6 /bin/bash /rsync-lightsquid/realname.sh > /dev/null 2>&1 | mpack -s "File hasil rsync realname.cfg di proxy2" /var/www/lightsquid/realname.cfg wong.284@gmail.com
Keterangan :
Setiap hari senin s/d sabtu cronjob menjalankan bash script realname.sh setiap pukul 15.00 wib kemudian file hasilnya oleh mpack dikirimkan ke email saya.


N.B. Periksa folder spam di email anda apabila hasil pengiriman tidak ditemui di folder inbox, sebaiknya terapkan fitur filter email agar file tidak di tandai sebagai spam oleh sistem email. 


Selamat Mencoba!.

[Rsync] Sikronisasi Data Antara Dua [2] Komputer Server Ubuntu/Debian Mengunakan Bash Script Dan Cronjob

  



[ Updated, 29 Juni 2015 ]

Di post ini saya akan menjelaskan cara mengunakan Rsync untuk mensinkronisasi 2 buah file di antara 2 server ubuntu, cara ini juga bisa diterapkan antara debian dengan debian atau antara ubuntu dengan debian. Rsync dengan bantuan rsa key, kenapa ? agar setelahnya proses rsync akan bisa berjalan dengan baik tanpa masalah dan aman.

Di sini saya mengunakan 2 komputer server ubuntu, proxy1 dan proxy2, dengan sistem operasi versi 14.04 32-bit. Kedua server ini masing-masing memiliki ip address yang berbeda segmen, proxy1 192.168.20.1 dan proxy2 192.168.80.1.

N.B. Apabila tidak mengunakan user root maka gunakan sudo untuk user sudoer.

Langkah-langkah rsync antara 2 server ubuntu adalah sebagai berikut :

1. Memeriksa konfigurasi sshd_config di masing server ubuntu, proxy1 dan proxy2.

Proxy1
root@proxy1: cat /etc/ssh/sshd_config |egrep "RSA|Pubkey|Authorized" |grep -v "#"
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys

Jika tidak sama seperti hasil diatas maka di konfigurasi dahulu.
root@proxy1: nano /etc/ssh/sshd_config
Cari baris syntax diatas  lalu di uncomment, simpan dan restart ssh.
root@proxy1: service ssh restart
Kemudian ulangi command diatas,
root@proxy1: cat /etc/ssh/sshd_config |egrep "RSA|Pubkey|Authorized" |grep -v "#"
Seharusnya hasilnya sudah sama.

Proxy2
root@proxy2: cat /etc/ssh/sshd_config |egrep "RSA|Pubkey|Authorized" |grep -v "#"
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys


2. Membuat rsa key dengan ssh-keygen di proxy1 dan di proxy2.

Proxy1
root@proxy1:~# nano /etc/ssh/sshd_config
root@proxy1:~# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
51:68:ec:f4:9f:c3:af:01:1b:2b:98:d9:04:99:77:68 root@proxy1
The key's randomart image is:
+--[ RSA 2048]----+

|       . ..      |
|       o=o       |
|      ++E..      |
|       +.o.      |
|        S oo .   |
|       *   ==    |
|      + o o .o   |
|         .   ..  |
|            ..   |
+-----------------+



Memeriksa keberadaan file rsa yang sudah dibuat dengan ssh-keygen di proxy1.
root@proxy1:~# cd .ssh/
root@proxy1:~/.ssh# ls -lrt
total 8
-rw-r--r-- 1 root root  393 Jun 26 13:13 id_rsa.pub
-rw------- 1 root root 1675 Jun 26 13:13 id_rsa

Proxy2
root@proxy2:~# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
96:47:b5:05:ad:43:c1:21:71:b8:ea:95:ae:9b:1f:67 root@proxy2
The key's randomart image is:
+--[ RSA 2048]----+
|          o+*=.  |
|          .+oo.  |
|          .o..   |
|         o. o    |
|        S... .   |
|       ...o      |
|       . o. E    |
|        ...+     |
|        ++.      |
+-----------------+

Memeriksa keberadaan file rsa yang sudah dibuat dengan ssh-keygen di proxy2.
root@proxy2:~# cd .ssh/
root@proxy2:~/.ssh# ls -lrt
total 8
-rw-r--r-- 1 root root  393 Jun 26 13:16 id_rsa.pub
-rw------- 1 root root 1679 Jun 26 13:16 id_rsa


3. Upload/transfer file rsa key dari proxy1 ke proxy2.

Karena saya tidak mengunakan port default [berbeda], maka dengan command,
root@proxy1:~/.ssh# scp -P 213 -r id_rsa.pub 192.168.80.1:/root/.ssh/authorized_keys
The authenticity of host '[192.168.80.1]:213 ([192.168.80.1]:213)' can't be established.
ECDSA key fingerprint is 0a:9d:c8:ad:20:15:62:11:87:ad:b3:2a:95:e2:c8:60.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.80.1]:213' (ECDSA) to the list of known hosts.
root@192.168.80.1's password:
id_rsa.pub                                            100%  393     0.4KB/s   00:00


4. Upload/transfer file rsa key dari proxy2 ke proxy1.
root@proxy2:~/.ssh# scp -P 212 -r id_rsa.pub 192.168.20.1:/root/.ssh/authorized_keys
The authenticity of host '[192.168.20.1]:212 ([192.168.20.1]:212)' can't be established.
ECDSA key fingerprint is bc:8d:a3:0c:1a:a4:21:ca:39:24:f2:73:5a:1f:0b:5f.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[192.168.20.1]:212' (ECDSA) to the list of known hosts.
Password:
id_rsa.pub                                        100%  393     0.4KB/s   00:00


5. Tes koneksi ssh antar server ubuntu.

Proxy1

Karena mengunakan rsa key dan buka mengunakan port default [berbeda], dengan command,
root@proxy1: ssh 192.168.80.1 -p 213
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.13.0-53-generic i686)


 * Documentation:  https://help.ubuntu.com/


  System information as of Fri Jun 26 13:28:19 WIB 2015

  System load:  0.0                Processes:             136

  Usage of /:   1.7% of 450.52GB   Users logged in:       1

  Memory usage: 5%                 IP address for p130p1: 192.168.80.1

  Swap usage:   0%


  Graph this data and manage this system at:

    https://landscape.canonical.com/


Last login: Fri Jun 26 13:15:17 2015 from 10.7.70.82

root@proxy2:~#

Sukses!

Proxy2
root@proxy2: ssh 192.168.20.1 -p 212
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.8.0-29-generic i686)


 * Documentation:  https://help.ubuntu.com/
  System information as of Fri Jun 26 13:29:21 WIB 2015

  System load:  0.02                Processes:           134

  Usage of /:   24.0% of 224.94GB   Users logged in:     1

  Memory usage: 4%                  IP address for eth0: 192.168.20.1

  Swap usage:   0%


  Graph this data and manage this system at:

    https://landscape.canonical.com/


Last login: Fri Jun 26 13:09:27 2015 from 10.7.70.82

root@proxy1:~#

Sukses Juga!


6. Ujicoba sikronisasi antar server, proxy 1 dan proxy2.

Di sini saya akan mengunakan Rsync untuk mensinkronisasi 2 file yaitu file realname.cfg dari direktori lightsquid antara 2 server ubuntu, proxy1 dan proxy2. Bisa juga mensinkronisasi dua folder.

Dan file realname.cfg lightsquid di Proxy1 sebagai sumber [source], sedangkan file realname.cfg di Proxy2 sebagai destination [tujuan].

root@proxy2: rsync -av -e "ssh -p 223" 192.168.20.1:/var/www/lightsquid/realname.cfg /var/www/lightsquid/realname.cfg
receiving incremental file list
realname.cfg


sent 223 bytes  received 12,048 bytes  24,542.00 bytes/sec
total size is 19,548  speedup is 1.59

Untuk memeriksa hasil sinkronisasinya, lihat perubahan tanggal dan waktu pada file tujuan yaitu realname.cfg, dengan,
root@proxy2: ls -lah /var/www/lightsquid

7. Membuat Bash Script.

Dari command Rsync diatas, maka untuk mempermudahnya dibuatkan saja bash script yang akan dijalankan secara otomatis melalui cronjob.

Buat file bash script.
Misalnya dibuat bash script rsync di proxy2.
root@proxy2: mkdir /rsync-lightsquid
root@proxy2: nano /rsync-lightsquid/realname.sh
Isinya,
#!/bin/bash

dest=/var/www/lightsquid/`date +%A` # direktori tujuan

rsync -av -e "ssh -p 212" 192.168.20.1:/var/www/lightsquid/realname.cfg /var/www/lightsquid/realname.cfg

Beri hak akses,
root@proxy2: chmod 700 /rsync-lightsquid/realname.sh

Trial bash script realname.sh.
root@proxy2: cd /rsync-lightsquid
root@proxy2: ./realname.sh
receiving incremental file list
realname.cfg


sent 217 bytes  received 228 bytes  296.67 bytes/sec
total size is 20,036  speedup is 45.02

Ok. Sukses.

8. Menjalankan bash script realname.sh via cronjob.
root@proxy2:crontab -e
# m h  dom mon dow   command
0 11 * * * /var/www/lightsquid/lightparser.pl today
30 12 * * 1,2,3,4,5,6 /bin/bash /rsync-lightsquid/realname.sh > /dev/null 2>&1

Tips. Bisa ditambahkan fitur pengiriman email pada cronjob agar ada laporan langsung via email, untuk lebih jelasnya silahkan baca artikel selnjutnya yaitu Mengirimkan File Hasil Sinkronisasi [Rsync] Mengunakan Mpack Di Server Ubuntu/Debian.


Selesai. Selamat Mencoba!.

Instalasi Zabbix Agent 2.4.2 Di Windows 10

  



Kebetulan sekali ada salah satu komputer [untuk keperluan khusus] di ruang server yang di install ulang mengunakan windows 10 32-bit, kemudian saya instalkan kembali zabbix agennya agar bisa di pantau [monitoring] melalui Zabbix server, sekalian mencoba apakah zabbix agen 2.4.2 ini kompatibel dengan windows 10.

Print screen instalasimya sebagai berikut :

GUI Windows 10

01

02

03

04

05

06

Dari proses instalasi zabbix agen versi 2.4.2 diatas, tidak ditemui adanya masalah, semua berjalan sempurna, untuk memastikannya akan di periksa melalui zabbiz server.

Monitoing > Overview

Configuration Host

Monitoring > Maps > IT Network



Oke, semuanya bisa terlihat window 10 tsb bisa dipantau dengan baik oleh zabbix server. Selesai.


Selamat Mencoba!.

Membuat Member Card Menjadi Vertikal [ Portrait ] & Memodifikasi Tampilannya | SLiMS 7 [ Cendana ]

  



[ Latest update, 10 June 2015 ]

Ada permintaan dari seseorang ( klien ) yang ingin sekali membuat Kartu Anggota [Member Card] Perpustakaannya dapat di cetak seperti model vertikal [Portrait] ID Card karyawan, memang idenya adalah menjadikan kartu anggota perpustakaan tsb juga sebagai kartu identitas karyawan, memang lebih efisien dan menjadi multifungsi. Perpustakaannya sudah memakai library system management memakai open source software yang berbasis web yaitu SLiMS.

Saya mendalami dahulu pengetahuan tentang modifikasi Member Card SLiMS terutama versi 7 Cendana, setelah googling dapatlah beberapa referensi sebagai berikut :

Kustomisasi Kartu Anggota SLiMS 5
Kostumisasi Member Card Versi Tegak (seri ke-3) - SLiMS 5 Meranti
Modifikasi Kartu Anggota SLIMS (Senayan versi 3.14)

Dari referensi diatas saya mendapatkan petunjuknya, jadi untuk dapat melakukan modifikasi member card ini ada 2 buah file yang harus saya oprek kodenya yaitu :
  1. member_card_generator.php, yang berada di direktori admin/modules/membership
  2. printed_settings.inc.php, yang berada di direktori admin/admin_template
Set ulang juga konfigurasi membercard di Menu Keanggotaan > Kartu Anggota > Setting [ Icon Kunci Pas ] di sebelah kanan atas.

Dan juga mempersiapkan beberapa file pendukung seperti : background membercard vertikal blue-bg.jpg, header sebagai penganti logo header_40x200.png, 1 foto karyawan staff_1.jpg.

N.B.
--  Modifikasi kode dari kedua file php diatas dilakukan secara manual, lumayan rumit dan perlu ketelitian.
-- File lain seperti membercard_background_default.jpg, signature.png, stamp.png tidak saya gunakan.

Singkat cerita dibawah ini link download 2 file yang sudah saya modifikasi ulang, silahkan di download :

1. member_card_generator.php. [ Download ]
2. printed_settings.inc.php. [ Download ]

Berikut langkah-langkah penerapannya sebagai berikut :


  1. Backup kedua file diatas, lebih mudah kalau pakai slims yang portable atau slims yang di instal mengunakan xamp server atau wamp server di windows, tinggal copy paste lalu di rename misalnya menjadi member_card_generator.php.default dan printed_settings.inc.php.default.
  2. namun kalau slims sudah di hosting di webserver, dalam kasus saya webserver Debian 7 [Wheezy], di direktori /var/www/e-library maka gunakan command ini,
    root@webserver: cp /var/www/e-library/admin/modules/membership/member_card_generator.php /var/www/e-library/admin/modules/membership/member_card_generator.php.default
    dan
    root@webserver:cp /var/www/e-library/admin/admin_template/printed_settings.inc.php /var/www/e-library/admin/admin_template/printed_settings.inc.php.default

  3. Replace kedua file tersebut dengan kedua file yang saya berikan diatas, di download dahulu kemudian tinggal copy paste timpa file yang lama.

  4. Kalau pada hosting, webserver Debian tinggal di replace mengunakan WinSCP atau FileZilla dsb, kalau pakai editor nano dsb akan sulit karena kodenya panjang. Copy paste juga file background membercard yang model vertikal blue-bg.jpg, dalam kasus saya bersama header_40x200.png transparan (mengantikan file logo).

  5. Atur ulang di bagian Keanggotaan > Kartu Anggota > Setting. Seperti Box width : 5.4, box height : 8.6 beserta pengaturan lainnya yang diperlukan, disesuaikan saja, lalu simpan.

  6. Setting ID Card

    Setting 01

    Setting 02

    Setting 03
    Pada kolom Peraturan copy dan paste kode berikut, kemudian sesuaikan saja,

    <center>N.B. Please return this card to us if you found it.</center>


    Pada kolom Alamat copy dan paste kode berikut, kemudian disesuaikan juga,

    <div style="background-color: white; box-shadow: 6px 6px 3px #888888; font-family: courier;"> <br /> <center><b>SMAN Sumatera Selatan</b><br />Jl.Pangeran Ratu RT.11 RW.08<br /> Kel.08 Ulu Kec.Seberang Ulu I<br />Palembang 30252<br />Telp.(0711)7539549<br /><br />Website: http://smansumsel.sch.id<br />e-Mail : info@smansumsel.sch.id</center> <br /> <br /></div>


  7. Jika telah selesai, di coba Print [ akan ada Print Preview ], jika belum berhasilnya ulangi langkah nomor 3 diatas di kustomisasi lagi hingga hasilnya menjadi seperti gambar dibawah ini.

Print Preview Membercard SLiMS

ID Card Karyawan + Membercard Perpustakaan
Contoh Background Membercard
Contoh header penganti logo


[ Update 10 Juli 2015 ]
ID Card Staf + Member Card Library
ID Card Staf + Member Card Library



Tugas berhasil dan klien pun senang :)

Tips. Kedua file hasil modifikasi saya diatas bisa dipelajari secara mandiri dengan cara membandingkannya dengan file yang asli (sebelumnya), edit saja kode-kodenya bila perlu beri tanda comment [ /* & */ ] pada suatu baris kode lalu simpan & reload Print Preview Membercard-nya. Hasil akhir tampilan Membercard bisa anda desain sendiri sesuai selera, apalagi ditambah dengan keahlian photoshop/ coreldraw yang baik.

Selamat Mencoba!

[ Solved ] Memperbaiki Reply Comment Yang Error | Blogger

  



Ketemu sama masalah baru lagi di web ini, ketahuannya saat saya ingin membalas komentar pembaca, seperti yang kita ketahui pada bagian komentar blogspot tepat di bawah komentar pembaca kan ada 2 fitur Reply dan Delete. Seperti biasanya saat kita klik pada Reply seharusnya langsung tampil kotak reply comment, nah dalam kasusku malahan tidak tampil sama sekali, blank saja, screen shoot dari masalah saya adalah seperti dibawah ini.



Solusi.

Setelah menelusuri maka diketahui letak permasalahannya ternyata ada di bagian modifikasi Comment Message yaitu pada bagian,
if (replybox && (commentId !== replyParent)) {
document.getElementById(domId).insertBefore(document.getElementById('threaded-comment-form'), null);
replybox.src = replyUrlParts[0]
+ (commentId ? '&parentID=' + commentId : '')
+ '#' + replyUrlParts[1];
replyParent = commentId;
}
};



Diperbaiki dengan mengembalikan ke kode awalnya (default) yaitu,
if (replybox && (commentId !== replyParent)) {
document.getElementById(domId).insertBefore(replybox, null);
replybox.src = replyUrlParts[0]
+ (commentId ? '&parentID=' + commentId : '')
+ '#' + replyUrlParts[1];
replyParent = commentId;
}
};

Jadi yang menjadi masalah ada pada bagian kode ini,
document.getElementById(domId).insertBefore(document.getElementById('threaded-comment-form'), null);

Nah, berikut dibawah ini screenshoot fitur reply comment yang benar.



Untuk sementara ini modifikasi Comment Message saya hilangkan dahulu sambil mencari cara agar nanti tidak menyebabkan error pada fitur reply comment blogger.


Problem Solved!.

Cara Backup Direktori Website Beserta Database Dengan Bash Script, Webserver | Debian

  



Bagi seorang system administrator webserver atau mungkin bisa juga disebut juga web admin atau webmaster? hmmm...terserahlah, yang pasti pusingnya ya sama seperti yang saya rasakan, hehe. Sudah pasti mengetahui bahwa fungsi backup sangatlah penting, terutama bila webserver sudah mempunyai berbagai macam sistem yang tampilan antarmukanya ( GUI ) sudah berbasis web dan sudah pasti juga melayani banyak user ( multi account ) dengan ldap lagi single-sign-on pula, nah database adalah salah satu bagian terpenting yang harus selalu di backup, coba bayangkan saja tiba-tiba ada kasus user secara tidak sengaja menghapus data penting pada salah satu sistem lalu meminta bantuan restore database sebelum hal itu terjadi, waduh. Tapi tenang saja, tidak akan terdengar kata waduh lagi dari mulut sistem admin kan sudah di backup secara berkala.

Contoh kasus saya.
  1. Ingin backup direktori seluruh web sistem zabbix [ zabbix.mycompany.co.id ]
  2. Sekalian backup database-nya.
  3. Backup-nya ingin dijalankan terjadwal & berkala.
  4. Ingin juga file backup yang sudah [x] hari di remove secara otomatis agar tidak memenuhi HDD.
  5. Backup-nya pakai bash script & di jalankan terjadwal berkala dengan crontab.
Solusinya sebagai berikut :

Tips.
- Jika tidak mengunakan user root maka gunakan sudo untuk user sudoers.
- Bash script dibawah ini bisa kreasikan untuk melakukan multi backup atau juga backup semua direktori under /var/www/.

1. Membuat direktori tempat menyimpan backup.
root@webserver: mkdir /backup-allweb
#atau
root@webserver: mkdir /tmp/backup-allweb
#atau
root@webserver: mkdir /home/bangandi/backup-allweb

2. Membuat file bash script.
root@webserver: mkdir /backup-script
#atau
root@webserver: mkdir /tmp/backup-script
#atau
root@webserver: mkdir /home/bangandi/backup-script.

Kemudian, buat file bash script-nya dengan format " nama-bashscript.sh ", dibawah ini saya membuat bash script backup-zabbix.sh.
root@webserver: nano /backup-script/backup-zabbix.sh
#atau
root@webserver: mkdir /tmp/backup-script/backup-zabbix.sh
#atau
root@webserver: mkdir /home/bangandi/backup-script/backup-zabbix.sh

3. Copy bash script dibawah ini ke dalam file bash scriptnya, dan sesuaikan dahulu konfigurasinya seperti filename, srcdir1, srcdir2, desdir.
#!/bin/bash
# Bang Andi
# www.bangandi.web.id
# Backup dir website beserta database

TIME=`date +%b-%d-%y`
FILENAME=backup-zabbix-dan-DB-$TIME.tar.gz # Nama file backup.
SRCDIR1=/var/www/zabbix # Direktori website yang ingin di backup.
SRCDIR2=/var/lib/mysql/zabbix # Database yang ingin di backup terkait zabbix.
DESDIR=/backup-allweb # Direktori sebagai tempat hasil backup.
tar -cpzf $DESDIR/$FILENAME $SRCDIR1 $SRCDIR2

#END

4. Chmod file bash script.
root@webserver : chmod +x /backup-script/backup-zabbix.sh


5. Tes bash script yang sudah dibuat dengan,
root@webserver: cd /backup-script/backup-zabbix.sh
root@webserver:/backup-script# ./backup-zabbix.sh
tar: Removing leading `/' from member names

6. Periksa hasil backup.
root@webserver:/# cd backup-allweb
root@webserver:/backup-allweb# ls
backup-zabbix-dan-DB-Jun-10-15.tar.gz
backup-zabbix-dan-DB-Jun-11-15.tar.gz
backup-zabbix-dan-DB-Jun-12-15.tar.gz

7. Script untuk menghapus [ Remove ] file backup yang lama.
/bin/find /backup-allweb/ -type f -mtime +15 -exec rm -rf {} \;

*Jika ingin 7 hari ganti +15 dengan +7.

8. Jalankan dengan Crontab. Selesai.
0 18 * * 1,2,3,4,5,6 /bin/find /backup-allweb/ -type f -mtime +15 -exec rm -rf {} \;

N.B. Jika menemui kendala, proses backup tidak berjalan atau hasil backup tidak seperti yang diharapkan maka coba periksa kembali bash script & crontab-nya, terkadang kita kurang teliti.

Semoga Membantu!.

Membuat Sistem Backup Dokumen Terjadwal Ke Data-Center Via FTP | Cobian Backup


  



Backup dokumen penting ke server data-center, memakai software tambahan yang digunakan untuk user dengan komputer yang berbasis sistem windows yaitu dengan bantuan Cobian Backup 11 Gravity, ini adalah versi yang terakhir saat artikel ini dibuat, dulu pernah memakai To Do Backup & FBackup namun karena memakai yang versi Free banyak fitur-fitur seperti fitur email notification sudah di komersialkan dan sudah tidak bisa digunakan lagi, sebenarnya di Open Media Vault ( OMV ) ada fitur rsync.

Tahapan setting Cobian Backup Gravity 11 sebagai berikut :

Setting 1.

Dalam kasus saya ada beberapa Task per hari, memang sengaja di setting per hari kerja dengan setting berbeda-beda, sebenarnya cukup satu Task jika setting nya sama saja dan di set daily backup.

Cobian 1

Setting 2.

Di Task name, isi nama tugas backup-nya. Use Volume Shadow Copy harus dicentang agar cobian bisa tetap melakukan proses backup walaupun dokumen sedang dipakai/ dibuka. Kemudian tinggal pilih tipe backup yang di inginkan.

Cobian 2



Setting 3.

Source [ klik add ], plilh file/ folder yang ingin di backup, bisa dari local drive atau network drive. Destination [ klik add ], pilih FTP sebagai tempat untuk menyimpan hasil cobian backup, karena dalam kasus saya, proses backup dilakukan via ftp agar lebih cepat & efesien, sebelumnya telah dibuat folder khusus berupa sharing folder [ zb-username ] di Data-Center [ Open Media Vault ] per user lalu dipilih.  

Cobian 3
Karena memakai fitur FTP maka ada setting tambahan seperti : ip address Host, port FTP, username & password FTP, alamat Direktori absolute path. Kemudian lakukan Test, jika sukses FTP setting sudah benar 
Cobian 3-1. Klik untuk memperbesar ganbar.



Setting 4.

Dalam kasus saya, setting yang dipilih weekly karena saya ingin backup per hari dengan setting yang berbeda-beda, serta tentukan waktu backup akan dijalankan, sebaiknya pada waktu tepat.

Cobian 4

Setting 5.

Set saja Normal priority [ Default ].

Cobian 5

Setting 6.

Set saja No compression [ Default ]. Namun, bila ingin dikompres untuk menghemat kuota Data-Center bisa juga, plus bisa ditambahkan juga enkripsi terutama untuk user tertentu seperti staf IT, staf keuangan dsb.

Cobian 6

Setting 7.

Nah, ini bagian terpenting juga, karena dalam kasus saya hanya ingin mem-backup file dokumen tertentu seperti Ms Office [ .doc|docx, .xls|xlsx, .ppt|pptx dsb ], PDF [ .pdf ]. Maka untuk file lainnya saya buatkan dahulu nama ekstensinya di notepad lalu saya tambahkan [ add ] di bagian Exclude these files. Sebab, jika ada file gambar > 2 MB dan file video > 2 MB atau ada file .ISO! maka proses backup akan memakan waktu yang lama/ gagal, dan akan cepat memenuhi kuota user, apalagi jika user sudah di set kuotanya 5 GB saja.

Dengan Fitur Exclude these files, maka cobian backup secara otomatis melakukan proses filter secara otomatis, dihitung kembali jumlah file yang akan di backup lalu ditampilakn di UI cobian, Hebat bukan, jadi kita mengetahui seberapa besar total file yang akan di backup.  

Cobian 7

Setting 8.

Dalam kasus saya belum diperlukan jadi tidak digunakan.

Cobian 8

Setting 9.

Dalam kasus saya dibiarkan saja, default. Sebenarnya fitur Impersonation bisa digunakan untuk bisa membantu proses backup berjalan dengan sukses.

Cobian 9

Setting 10.

Pada Options > Log. File log yang lebih dari 30 hari saya Delete, sesuaikan saja. Mail log files harus dicentang bila ingin mengunakan fitur e-mail notification. Waktu pengiriman email saya set 09:37 Wib, Harian ( Daily ).

Cobian 10
Pada opsi MailSSL, karena saya mengunakan GMail maka di setting seperti dibawah ini, untuk email lainnya di sesuaikan saja.

Cobian 10-1. Klik untuk memperbesar ganbar.


Setting 11.

Test Mail Setting untuk e-mail notification, jika setting benar maka hasilnya akan seperti dibawah ini.

Cobian 11. Klik untuk memperbesar gambar.



Selamat Mencoba!.