Apa itu Unison??
Teknologi Unison yang dikembangkan oleh Benjamin C Pierce di bawah Lisensi GPL memungkinkan pengguna untuk menyinkronkan dua contoh file tunggal pada sistem yang sama tetapi disk yang berbeda atau dua sistem lainnya.
Serempak memungkinkan Anda untuk menyimpan versi terbaru dan identik dari file atau direktori yang sama. Ini dapat digunakan dalam berbagai konteks, seperti SSH, memungkinkan transfer data yang aman antar perangkat atau direktori.
Alat Unison adalah lintas platform, memungkinkan pengguna untuk menyinkronkan file dan direktori antara sistem yang menjalankan sistem operasi yang sama atau berbeda. Misalnya, Anda dapat menyinkronkan file dari sistem Linux ke sistem BSD. Karena fitur keamanannya, Unison menyinkronkan file dan direktori dan menerapkan hak kepemilikan dan izin pada kedua sistem.
Alat Unison dikembangkan dengan mempertimbangkan keamanan dan dapat bertahan dari kegagalan di mana gangguan terjadi di antara titik sinkronisasi. Jika Unison mendeteksi konflik file dan direktori, ini akan melaporkan konflik yang ada dan memungkinkan pengguna untuk memilih versi file mana yang harus diterapkan.
Serempak dapat bekerja dengan-atau mendukung-jaringan yang lambat, menjadikannya alat yang sangat efisien untuk penggunaan bandwidth. Itu hanya menyinkronkan bagian dan direktori yang telah berubah, sehingga mencegah beban berat dan memperbarui proses sinkronisasi dengan sangat mudah dan cepat.
Terlepas dari konteks penggunaan utamanya, Unison adalah alat yang ampuh yang dapat dimodifikasi untuk membuat berbagai kasus penggunaan.
Tutorial kali ini akan membahas cara install dan setup Unison File Synchronization System di Debian 10.
Cara Menginstal Unison di Debian 10
Serempak adalah alat yang populer; karena itu, ini tersedia di repositori resmi distribusi Linux utama.
Untuk menginstal versi baris perintah Unison di Debian, mulai perbarui sistem:
sudo apt-get update && sudo apt-get upgradeSelanjutnya, gunakan perintah apt to sederhana untuk menginstal alat.
sudo apt-get install serempak -yJika Anda memiliki lingkungan desktop yang terinstal di sistem Anda dan lebih memilih versi GUI dari alat ini, instal unison-gtk menggunakan perintah:
sudo apt-get install unison-gtkCATATAN: Pastikan Anda menginstal Unison di kedua versi sistem yang ingin Anda sinkronkan file di antara keduanya. Untuk kompatibilitas dan untuk meminimalkan kemungkinan kesalahan, lebih baik memiliki versi Unison yang sama di kedua sistem.
Cara Menyinkronkan File dengan Unison
Unison memberi kami cara untuk menyinkronkan file dan direktori antara mesin lokal dan mesin jarak jauh menggunakan koneksi soket langsung dan SSH. Karena kami menyinkronkan antara dua server Debian, kami akan melewatkan sinkronisasi mesin lokal.
Sinkronisasi Jarak Jauh dan Sinkronisasi Jarak Jauh melalui SSH
Untuk menyinkronkan file dan direktori antara mesin jarak jauh, Anda harus menginstal Unison di kedua sistem, memiliki akses SSH ke sistem dan alamat IP mereka.
Anda juga dapat menggunakan mesin lokal Anda sebagai satu server dan perangkat jarak jauh sebagai server lainnya.
- 192.168.0.200 - server1
- 192.168.0.201 - server2
Langkah pertama adalah membuat kunci pribadi dan publik di server jarak jauh1.
ssh-keygen -t rsaMembuat pasangan kunci rsa publik/swasta.
Masukkan file untuk menyimpan kunci (/home/csalem/.ssh/id_rsa):
Direktori yang dibuat '/home/csalem/.ssh'.
Masukkan frasa sandi (kosongkan tanpa frasa sandi):
Masukkan frasa sandi yang sama lagi:
Identifikasi Anda telah disimpan di /home/csalem/.ssh/id_rsa.
Kunci publik Anda telah disimpan di /home/csalem/.ssh/id_rsa.pub.
Sidik jari kuncinya adalah:
SHA256:4p5YuEBea5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem@Debian-PC
Gambar seni acak kuncinya adalah:
+---[RSA 2048]----+
|+/@=… |
|==O== |
|++OE . |
|+*o… |
|o+= . S |
|++. Hai . |
|oo…o |
|.Hai . = . |
|… o o |
+----[SHA256]-----+
Lewati proses pembuatan kunci dengan cepat dan simpan file. Harap jangan menambahkan frasa sandi karena dapat menghalangi sinkronisasi yang tidak terpantau antar server.
Selanjutnya, salin kunci dari server1 ke server2 menggunakan perintah:
ssh-copy-id 192.168.0.201Sekarang setelah Anda memiliki pengaturan SSH di kedua sistem, Anda dapat memulai Unison untuk menyinkronkan file dan direktori.
Mari kita uji penggunaan Unison di kedua server dengan membuat direktori yang akan kita sinkronkan di server1:
mkdir -p /dir1Di server2, buat direktori seperti di atas
mkdir -p /dir2Seperti yang disebutkan, Unison menghormati izin pengguna. Oleh karena itu, yang terbaik adalah mengubah izin dan kepemilikan di kedua direktori untuk memastikan kedua direktori memiliki hak baca dan tulis.
Selanjutnya, tambahkan semua data yang ingin Anda sinkronkan antara server di dir1. Misalnya, tambahkan beberapa file zip.
sudo mv ~/Documents.zip /dir1Memiliki file, kami ingin menyinkronkan di direktori yang benar, jalankan perintah serentak untuk menyinkronkan dari server satu sebagai:
serempak /dir1 ssh://192.168.0.201//dir2Pada peluncuran Unison pertama, Anda akan menerima peringatan bahwa proses sinkronisasi dapat memakan waktu cukup lama. Jika Anda memiliki file besar di direktori, ini bisa memakan waktu cukup lama, tetapi karena kami hanya menggunakannya untuk tujuan pengujian, itu harus relatif cepat.
Tekan Enter untuk memulai proses sinkronisasi. Setelah proses sinkronisasi selesai, buka server2, navigasikan ke dir2, dan daftarkan konten direktori sebagai:
cd /dir2 && ls -la-rw-r--r-- 1 root root 436 Jan 5 12:57 Documents.zip
Memodifikasi Konfigurasi Unison
Dalam kebanyakan kasus, kami tidak ingin menyinkronkan file secara interaktif antara server ini karena prosesnya berulang dan tidak efisien. Kami dapat mengedit file konfigurasi Unison untuk memungkinkan file sinkronisasi otomatis.
Gunakan perintah di bawah ini untuk mengedit file konfigurasi default:
sudo vi ~/.serempak/default.prfDalam file tersebut, tambahkan baris berikut:
otomatis = benarkumpulan = benar
Baris di atas menonaktifkan perintah saat menyinkronkan file, mengotomatiskan proses.
Menyiapkan Unison Cronjob
Satu hal yang pasti adalah bahwa programmer sangat tidak suka melakukan sesuatu secara manual, terutama jika memungkinkan untuk diotomatisasi, seperti yang terjadi di sini. Kami dapat mengatur cronjob agar Unison melakukan sinkronisasi secara otomatis.
Di server1, buat skrip bash sederhana untuk menjalankan perintah serempak sebagai:
sudo touch /usr/bin/unisoncron && sudo vi /usr/bin/unisoncronDalam file, mulailah dengan shebang dan tambahkan perintah sinkronisasi serempak:
#!/bin/bash/serempak /dir1 ssh://192.168.0.201//dir2
Seperti biasa, buat skrip mengeksekusi izin:
sudo chmod 755 /usr/bin/unisoncronSekarang edit file cronjob Anda dengan crontab:
sudo crontab -eJika ini adalah pertama kalinya Anda mengedit crontab-saya harap ini tidak memilih editor Anda dan masukkan baris berikut untuk menyinkronkan dengan Unison setiap 1 jam:
*/60 * * * * /usr/bin/unisoncron &> /dev/nullAnda juga dapat mengatur crontab untuk dijalankan pada waktu tertentu dalam sehari. Anda juga tidak perlu menggunakan skrip dan dapat menggunakan perintah mentah di crontab.
Kesimpulan
Tutorial ini menunjukkan kepada Anda cara menginstal dan mengatur Unison pada sistem Debian untuk sinkronisasi file dan direktori.
Meskipun panduan cepat ini dapat membantu Anda memulai, Anda dapat mempelajari lebih lanjut dengan menggunakan halaman manual Unison (halaman manual) atau dokumentasi resmi menggunakan sumber daya yang disediakan di bawah ini:
- https://www.cis.upenn.edu/~bcpierce/serempak/
- https://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html