Apa itu Unison?
Teknologi Unison yang dikembangkan oleh Benjamin C Pierce di bawah Lesen GPL membolehkan pengguna menyegerakkan dua contoh fail tunggal pada sistem yang sama tetapi cakera yang berbeza atau dua sistem lain.
Unison membolehkan anda menyimpan versi yang dikemas kini dan serupa dari fail atau direktori yang sama. Ini dapat digunakan dalam berbagai konteks, seperti SSH, yang memungkinkan pemindahan data antara peranti atau direktori dengan selamat.
Alat Unison adalah platform silang, yang membolehkan pengguna menyegerakkan fail dan direktori antara sistem yang menjalankan sistem operasi yang sama atau berbeza. Sebagai contoh, anda boleh menyegerakkan fail dari sistem Linux ke sistem BSD. Kerana ciri keselamatannya, Unison menyegerakkan fail dan direktori dan menerapkan hak pemilikan dan izin pada kedua sistem.
Alat Unison dikembangkan dengan mempertimbangkan keselamatan dan dapat bertahan dari kegagalan di mana gangguan berlaku antara titik penyegerakan. Sekiranya Unison mengesan konflik file dan direktori, ia akan melaporkan konflik yang ada dan memungkinkan pengguna memilih versi file yang harus digunakan.
Unison dapat bekerja dengan-atau menyokong-lambat rangkaian, menjadikannya alat yang sangat efisien untuk penggunaan lebar jalur. Ia hanya menyegerakkan bahagian dan direktori yang telah berubah, sehingga mengelakkan beban berat dan mengemas kini proses penyegerakan dengan sangat mudah dan cepat.
Walaupun konteks penggunaan utamanya, Unison adalah alat yang kuat yang dapat dimodifikasi untuk membuat berbagai macam kasus penggunaan.
Tutorial ini akan membincangkan cara memasang dan menyiapkan Sistem Penyegerakan Fail Unison pada Debian 10.
Cara Memasang Unison pada Debian 10
Unison adalah alat yang popular; kerana itu, ia boleh didapati di repositori rasmi distribusi Linux utama.
Untuk memasang versi baris perintah Unison di Debian, mulailah mengemas kini sistem:
sudo apt-get update && sudo apt-get upgradeSeterusnya, gunakan perintah apt mudah untuk memasang alat.
sudo apt-get install serentak -ySekiranya anda mempunyai persekitaran desktop yang terpasang di sistem anda dan lebih suka versi alat GUI, pasang unison-gtk menggunakan perintah:
sudo apt-get install unison-gtkNOTA: Pastikan anda memasang Unison pada kedua-dua versi sistem yang anda mahu segerakkan fail di antara keduanya. Untuk keserasian dan untuk meminimumkan kemungkinan kesalahan, lebih baik memiliki versi Unison yang sama di kedua sistem.
Cara Menyegerakkan Fail dengan Unison
Unison memberi kami cara untuk menyegerakkan fail dan direktori antara mesin tempatan dan mesin jauh menggunakan sambungan soket langsung dan SSH. Oleh kerana kami menyegerakkan antara dua pelayan Debian, kami akan melangkau penyegerakan mesin tempatan.
Unison Remote dan Remote Sync melalui SSH
Untuk menyegerakkan fail dan direktori antara mesin jarak jauh, anda perlu memasang Unison di kedua sistem, mempunyai akses SSH ke kedua-dua sistem dan alamat IP mereka.
Anda juga boleh menggunakan mesin tempatan anda sebagai satu pelayan dan peranti jauh seperti pelayan yang lain.
- 192.168.0.200 - pelayan1
- 192.168.0.201 - pelayan2
Langkah pertama adalah membuat kunci peribadi dan awam pada pelayan jauh1.
ssh-keygen -t rsaMenjana pasangan kunci rsa awam / swasta.
Masukkan fail untuk menyimpan kunci (/ home / csalem /.ssh / id_rsa):
Direktori yang dibuat '/ home / csalem /.ssh '.
Masukkan frasa laluan (kosong tanpa frasa laluan):
Masukkan frasa laluan yang sama sekali lagi:
Pengenalan anda telah disimpan di / home / csalem /.ssh / id_rsa.
Kunci awam anda telah disimpan di / home / csalem /.ssh / id_rsa.pub.
Cap jari utama adalah:
SHA256: 4p5YuEBEa5lrINzqPgwHRVhSS0TNlIIl70A0q2MFcS8 csalem @ Debian-PC
Imej seni rawak kuncinya adalah:
+---[RSA 2048]----+
| + / @ =… |
| = * O == |
| ++ OE . |
| + * o… |
| o + = . S |
|++. o . |
| oo… o |
|.o . = . |
|… O o |
+----[SHA256]-----+
Langkau proses penjanaan kunci dengan cepat dan simpan failnya. Jangan tambahkan frasa laluan kerana boleh menghalang penyegerakan yang tidak dipantau antara pelayan.
Seterusnya, salin kunci dari pelayan1 ke pelayan2 menggunakan arahan:
ssh-copy-id 192.168.0.201Setelah anda mempunyai persediaan SSH pada kedua sistem, anda boleh memulakan Unison untuk menyegerakkan fail dan direktori.
Mari kita uji penggunaan Unison pada kedua pelayan dengan membuat direktori yang akan kita selaraskan pada pelayan1:
mkdir -p / dir1Pada pelayan2, buat direktori seperti di atas
mkdir -p / dir2Seperti disebutkan, Unison menghormati izin pengguna. Oleh itu, adalah lebih baik untuk menukar kebenaran dan pemilikan di kedua-dua direktori untuk memastikan kedua-dua direktori mempunyai hak membaca dan menulis.
Seterusnya, tambahkan semua data yang ingin anda selaraskan antara pelayan di dir1. Sebagai contoh, tambahkan beberapa fail zip.
sudo mv ~ / Dokumen.zip / dir1Memiliki fail, kami ingin menyegerakkan di direktori yang betul, menjalankan perintah serentak untuk menyegerakkan dari pelayan satu sebagai:
serentak / dir1 ssh: // 192.168.0.201 // dir2Pada pelancaran Unison pertama, anda akan menerima amaran bahawa proses penyegerakan boleh memakan masa. Sekiranya anda mempunyai fail besar di direktori, ini boleh memakan masa beberapa lama, tetapi kerana kami hanya menggunakannya untuk tujuan pengujian, ia seharusnya agak cepat.
Tekan Enter untuk memulakan proses penyegerakan. Setelah proses penyegerakan selesai, pergi ke server2, arahkan ke dir2, dan senaraikan isi direktori sebagai:
cd / dir2 && ls -la-rw-r - r-- 1 root root 436 5 Jan 12:57 Dokumen.zip
Mengubah Konfigurasi Unison
Dalam kebanyakan kes, kami tidak mahu menyegerakkan fail secara interaktif antara pelayan ini kerana prosesnya berulang dan tidak cekap. Kita boleh mengedit fail konfigurasi Unison untuk membenarkan fail penyegerakan automatik.
Gunakan arahan di bawah untuk mengedit fail konfigurasi lalai:
sudo vi ~ /.serentak / lalai.prfDalam fail, tambahkan baris berikut:
automatik = benarkumpulan = benar
Garis di atas mematikan arahan ketika menyegerakkan fail, mengotomatisasi prosesnya.
Menubuhkan Unison Cronjob
Satu perkara yang pasti adalah bahawa pengaturcara sangat enggan melakukan sesuatu secara manual, terutamanya apabila dapat mengotomatisasi, seperti yang berlaku di sini. Kami boleh menyediakan cronjob agar Unison melakukan penyegerakan secara automatik.
Di server1, buat skrip bash sederhana untuk menjalankan perintah serentak seperti:
sudo touch / usr / bin / unisoncron && sudo vi / usr / bin / unisoncronDalam fail, mulakan dengan shebang dan tambahkan arahan penyegerakan unison:
#!/ tong / bash /serentak / dir1 ssh: // 192.168.0.201 // dir2
Seperti biasa, buat skrip melaksanakan kebenaran:
sudo chmod 755 / usr / bin / unisoncronSekarang edit fail cronjob anda dengan crontab:
sudo crontab -eSekiranya ini pertama kali anda mengedit crontab-saya harap tidak memilih editor anda dan masukkan baris berikut untuk disegerakkan dengan Unison setiap 1 jam:
* / 60 * * * * / usr / bin / unisoncron &> / dev / nullAnda juga boleh menyediakan crontab untuk berjalan pada waktu-waktu tertentu dalam sehari. Anda juga tidak perlu menggunakan skrip dan boleh menggunakan perintah mentah di crontab.
Kesimpulannya
Tutorial ini menunjukkan kepada anda cara memasang dan menyiapkan Unison pada sistem Debian untuk penyegerakan fail dan direktori.
Walaupun panduan ringkas ini dapat membantu anda memulakan, anda dapat mempelajari lebih lanjut dengan menggunakan halaman manual Unison (halaman manual) atau dokumentasi rasmi menggunakan sumber yang disediakan di bawah:
- https: // www.cis.upenn.edu / ~ bcpierce / serentak /
- https: // www.cis.upenn.edu / ~ bcpierce / unison / muat turun / pelepasan / stable / unison-manual.html