Unison - Linux için Üstün Bir Yerel/Uzak Dosya Senkronizasyon Aracı


Dosya Senkronizasyonu, belirli protokollere uygun olarak iki veya daha fazla konumdaki dosya ve verilerin yansıtılması işlemidir. Dosyalar ve Veriler, Bilgi Teknolojileri çağında en değerli şeylerdir. Dosya Senkronizasyonu sayesinde, herhangi bir felaket durumunda veya birçok lokasyonda çalışmamız gerektiğinde paha biçilmez verilerimizin bir veya daha fazla kopyasının her zaman kullanılabilir olmasını sağlıyoruz.

İyi bir Dosya Eşitleyicinin aşağıda listelenen özelliklere sahip olması gerekir:

  1. Bir güvenlik uygulaması olarak kriptografik senkronizasyon.
  2. İyi bir oran veri sıkıştırması.
  3. Veri çoğaltmasını kontrol etmek için mükemmel bir algoritma uygulaması.
  4. Dosya kaynağı değişikliğini takip edin.
  5. Zamanlanmış Senkronizasyon.

Böyle bir araç Unison'dur. Bu makalede "Unison"un özellikleri, işlevleri ve çok daha fazlasıyla birlikte ayrıntılı olarak tartışacağız.

Unison nedir?

Unison, bilgisayarlar veya depolama aygıtı gibi iki veya daha fazla konum arasında veri senkronizasyonunda yararlı olan, platformlar arası bir dosya senkronizasyon uygulamasıdır.

Unison'un Özellikleri

  1. Genel Kamu Lisansı (GPL) kapsamında yayınlandı
  2. Açık Kaynak ve Çapraz Platform Mevcuttur (Linux, Unix, BSD, Windows, Mac)
  3. Son değiştirilen konuma bakılmaksızın, dosyanın aynı sürümünü farklı makinelerde kullanılabilir hale getirin.
  4. Çapraz Platform Senkronizasyonu mümkündür, yani bir Windows makinesi bir *nix Sunucusu üzerinden senkronize edilebilir.
  5. Standart Protokol TCP/IP üzerinden iletişim kurun, yani Coğrafi Konum ne olursa olsun internet üzerinden herhangi iki makine arasında mümkündür.
  6. Akıllı Yönetim – Bir dosya her iki kaynakta da değiştirildiğinde çakışmayı gösterin ve bunu kullanıcıya gösterin.
  7. Güvenli SSH Bağlantısı – Şifreli bir veri aktarımı.
  8. rsync algoritması burada devreye alınır, yalnızca değiştirilen kısım aktarılır ve üzerine yazılır. Buradan. Uygulama ve Bakımda hızlıdır.
  9. Doğası gereği sağlam
  10. Objective Caml programlama dilinde yazılmıştır.
  11. Olgun ve Kararlı, aktif bir gelişim gerektirmez.
  12. Kullanıcı düzeyinde bir programdır, yani Uygulamanın süper kullanıcı ayrıcalığına ihtiyacı yoktur.
  13. Açık ve kesin özellikleriyle bilinir.

Linux'ta Unison Kurulumu

Mevcut kararlı sürüm (Unison-2.40.102) aşağıdaki bağlantıdan indirilebilir:

Unison 2.40.102'yi İndirin Kararlı

Alternatif olarak, aşağıda gösterildiği gibi apt veya yum komutunu kullanarak repoda mevcutsa “Unison” u da indirip yükleyebiliriz.

Debian/Ubuntu/Linux Mint'te

Ctr+Alt+T” tuşlarını kullanarak terminali açın ve terminalde aşağıdaki komutu çalıştırın.

sudo apt-get install unison
RHEL/CentOS/Fedora'da

Öncelikle EPEL deposunu etkinleştirin ve ardından aşağıdaki komutu kullanarak kurulumu yapın.

sudo yum install unison

NOT: Yukarıdaki komut Unison'u GUI olmadan kuracaktır. Unison'u GUI desteğiyle kurmanız gerekiyorsa, aşağıdaki komutu kullanarak 'unison-gtk' paketini yükleyin (Yalnızca Debian tabanlı dağıtımlar için geçerlidir).

apt-get install unison-gtk

Unison Nasıl Kullanılır?

Unison, bir dizin ağacındaki bir dizi dosyayı benzer yapıya sahip başka bir konuma (yerel ana bilgisayar veya uzak ana bilgisayar) senkronize etmek için kullanılır.

Yerel Dosya Senkronizasyonu

Masaüstünüzün altında5 dosya oluşturalım ve ardından bunu ana dizininizdeki "desk-back" adlı klasörle senkronize edelim.

cd Desktop/
touch 1.txt 2.txt 3.txt 4.txt 5.txt
ls

1.txt 2.txt 3.txt 4.txt 5.txt
mkdir /home/server/desk-back

Şimdi Masaüstü dosyalarınızı ana dizininizdeki "desk-back" altında senkronize etmek için "unison" komutunu çalıştırın.

unison /home/server/Desktop /home/server/desk-back/
Örnek Çıktı
Contacting server...
Looking for changes
Warning: No archive files were found for these roots, whose canonical names are:
/home/server/Desktop
/home/server/desk-back
This can happen either
because this is the first time you have synchronized these roots,
or because you have upgraded Unison to a new version with a different
archive format.
Update detection may take a while on this run if the replicas are
large.
Unison will assume that the 'last synchronized state' of both replicas
was completely empty. This means that any files that are different
will be reported as conflicts, and any files that exist only on one
replica will be judged as new and propagated to the other replica.
If the two replicas are identical, then no changes will be reported.If you see this message repeatedly, it may be because one of your machines
is getting its address from DHCP, which is causing its host name to change
between synchronizations. See the documentation for the UNISONLOCALHOSTNAME
environment variable for advice on how to correct this.
Donations to the Unison project are gratefully accepted:
http://www.cis.upenn.edu/~bcpierce/unison
Press return to continue.[]
...
...
Saving synchronizer state
Synchronization complete at 13:52:15 (5 items transferred, 0 skipped, 0 failed)

Şimdi senkronizasyon işlemi başarılıysa /home/server/desk-back konumunu kontrol edin.

cd /home/server/desk-back/
ls

1.txt 2.txt 3.txt 4.txt 5.txt

Uzaktan Dosya Senkronizasyonu

Uzaktan dosya senkronizasyonu için, hem yerel hem de uzak sunucuda aynı Unison sürümünün yüklü olması gerekir. Yerel unison'un başlatılıp uzak unison sunucusuna bağlanabildiğini doğrulamak için aşağıdaki komutu çalıştırın.

unison -testServer /home/ravisaive/Desktop/ ssh://172.16.25.125//home/ravisaive/Desktop/
Örnek Çıktı
Contacting server...
[email 's password: 
Connected [//tecmint//home/ravisaive/Desktop -> //tecmint//home/ravisaive/Desktop]

Yukarıdaki sonuçlar, uzak sunucunun başarılı bir şekilde bağlandığını gösterir, şimdi dosyaları aşağıdaki komutu kullanarak senkronize edin.

unison -batch /home/ravisaive/Desktop/ ssh://172.16.25.125//home/ravisaive/Desktop/

GUI Unison'ı yürütme

İlk adım, bir profilin adı ve neyi senkronize etmek istediğiniz, kaynak ve Hedef konumu vb. gibi temel bilgileri ayarlamanızı gerektiren profili ayarlamaktır.

Unison GUI'yi başlatmak için terminalde aşağıdaki komutu çalıştırın.

unison-gtk

Profil oluşturulup kaynak ve hedef girildikten sonra aşağıdaki pencereyle karşılaşıyoruz.

Tüm dosyaları seçip Tamam'ı tıklamanız yeterli. Dosyalar, son güncelleme zaman damgasına göre her iki yönden de senkronize edilmeye başlayacaktır.

Çözüm

Unison, GUI'de ve komut Satırı Yardımcı Programında mevcut olan, her iki yönde de (Çift Yönlü) özel senkronizasyona olanak tanıyan harika bir araçtır. Unison vaat ettiğini sağlıyor. Bu aracın kullanımı çok kolaydır ve ekstra çaba gerektirmez. Bir testçi olarak bu uygulamadan çok etkilendim. Gerektiğinde uygulanabilecek birçok özelliğe sahiptir. Daha fazla bilgi için tekdüze kılavuzu okuyun.

Ayrıca Okuyun:

  1. Dosyaların Rsync'i (Uzaktan Senkronizasyon)
  2. Rsnapshot (Rsync Tabanlı) Dosya Eşitleyici

Şimdilik bu kadar. Yakında yine ilginç bir yazıyla karşınızda olacağım. O zamana kadar bizi izlemeye devam edin ve Tecmint'e bağlı kalın. Değerli görüşlerinizi yorum bölümümüzde bize iletmeyi unutmayın.