Cara auto sinkronisasi antar komputer di jaringan pada Ubuntu Server


Masih membahas tentang live sinkronisasi meneruskan tulisan sebelumnya. Ceritanya saya penasaran dengan fitur Google drive, Dropbox dan lain sebagainya karena bisa memiliki fitur auto sinkronisasi ketika ada perubahan file dari sumber dan langsung dapat melakukan perubahan di server backup yang berbeda mesin. Oh iya di bawah ini adalah tutorial yang digunakan untuk auto sinkronisasi di lokal sistem:

Tutorial live sync di Ubuntu server

Sedangkan di tutorial ini saya akan menuliskan tentang cara auto sinkronisasi antar komputer menggunakan layanan SSH via jaringan.  Secure? Tentu saja karena komunikasinya menggunakan protocol enkripsi milik layanan SSH. Tertarik? Langsung saja bisa anda baca di bawah ini.

Misalnya saya akan melakukan live sinkronisasi folder belajar-python dari server sumber beralamat 192.168.0.249 ke Server tujuan yang beralamat di 192.168.0.254 sebagai backup. Berikut ilustrasi topologinya:


Untuk menjalankan auto sinkronisasi antar server Ubuntu tersebut ada beberapa syarat yang harus dipenuhi, yaitu:


1. Server tujuan harus memiliki layanan SSH server yang aktif.
2. Memiliki user system di dalam kedua server dengan nama user yang sama.
3. User dapat digunakan untuk masuk ke server tujuan melalui SSH.

Untuk memastikan layanan SSH server sudah terinstall, maka anda bisa menjalankan perintah:

 sudo dpkg -l |grep openssh-server

di server tujuan backup, dalam kasus ini saya menjalankan perintah di atas di server 192.168.0.254, jika sudah terinstall akan tertampil hasil seperti berikut:


tanda ii di samping kiri artinya layanan openssh-server telah terinstall di server tujuan. Untuk melihat apakah layanan ssh server aktif atau tidak, saya menjalankan perintah di bawah:

 sudo nmap localhost

di server tujuan, apabila layanan SSH server aktif maka di server tersebut akan terbuka port 22 seperti yang terlihat di bawah:


jika hasilnya seperti gambar di atas, itu tandanya server tujuan sudah aktif layanan SSH servernya. 

Langkah berikutnya adalah mengkonfigurasi server tujuan agar user yang digunakan untuk sinkronisasi tidak memerlukan otentikasi setiap kali sinkronisasi dilakukan. Untuk melakukan itu anda bisa mengikuti tutorial berikut:

Remote login SSH tanpa password di Ubuntu Server

setelah itu, untuk mengaktifkan live sinkronisasi saya tinggal menjalankan perintah berikut di server asal:

 lsyncd -rsyncssh /home/himawan/belajar-python/ 192.168.0.254 /home/himawan/belajar-juga/

dari perintah di atas, berarti saya membuat sinkronisasi dari server asal pada folder /home/himawan/belajar-python/ ke folder /home/himawan/belajar-juga/ pada server 192.168.0.254.

untuk melihat apakah sinkronisasi sudah benar-benar aktif atau belum, saya menjalankan perintah:

 ps aux |grep lsyncd

jika tertampil mirip seperti berikut:


maka live sinkronisasi antar komputer berhasil dijalankan. Sehingga perubahan apapun pada folder sumber, juga akan segera diimplementasikan ke server tujuan.

Lalu bagaimana jika auto sinkronisasi ini tidak hilang ketika server sumber terjadi restart? Silakan buka file /etc/rc/local dengan perintah di bawah:

 sudo vim /etc/rc.local

kemudian tambahkan konfigurasi berikut ini:

 /usr/bin/lsyncd -rsyncssh /home/himawan/belajar-python/ 192.168.0.254 /home/himawan/belajar-juga/ 

sebelum exit 0, simpan, maka ketika server sumber restart perintah auto sinkronisasi tersebut akan dijalankan secara otomatis. Mudah bukan, selamat mencoba ya, silakan share jika artikel ini membantu.

Comments