rsync

Dosyaları kopyalamak için rsync nasıl kullanılır

Dosyaları kopyalamak için rsync nasıl kullanılır
Rsync, dosyaları bir kaynak konumdan bir hedef konuma kopyalamak için kullanılan Linux'ta bir komut satırı aracıdır. Dosyaları, dizinleri ve tüm dosya sistemini kopyalayabilir ve dosyaları farklı dizinler arasında senkronize edebilirsiniz. Dosyaları kopyalamaktan fazlasını yapar. Yalnızca yeni veya güncellenmiş dosyaları göndererek ağ üzerinden gönderilen veri miktarını azaltır. Bu nedenle dosya kopyalama ve yedekleme için harika bir yardımcı program olarak kabul edilir. Rsync ayrıca dosyaların SSH üzerinden uzak bir sisteme kopyalanmasını da destekler.

Bu yazıda, bazı pratik örneklerle dosyaları kopyalamak için rsync'in nasıl kullanılacağını açıklayacağız. Tek bir dosyanın, birden çok dosyanın ve dizinin hem yerel hem de uzak sistemlere kopyalanmasında rsync kullanımını da açıklayacağız. Rsync'in aşağıdakiler için nasıl kullanılacağını ele alacağız:

Bu makalede bahsedilen komutları ve prosedürü Ubuntu 20'de açıkladık.04 LTS. Dosyaları rsync kullanarak kopyalamak için komut satırı Terminaline ihtiyacınız olacak. Komut satırı Terminal uygulamasını açmak için Ctrl+Alt+T klavye kısayolunu kullanın.

Rsync'i Yükleme

Rsync, Ubuntu 20'de önceden yüklenmiş olarak gelir.04 LTS. Ancak, yanlışlıkla sistemden kaldırılırsa, aşağıdaki gibi yükleyebilirsiniz:

$ sudo uygun kurulum rsync

rsync ile kullanılabilecek yaygın olarak kullanılan seçeneklerden bazıları şunlardır:

-a: arşiv modu
-v: kopyalama işleminin ayrıntılarını gösterir
-p: ilerleme çubuğunu gösterir
-r: verileri yinelemeli olarak kopyalar
-z: verileri sıkıştırır
-q: çıktıyı bastır

Dosyaları ve dizinleri yerel olarak kopyalayın

rsync'in genel sözdizimi şöyledir:

$ rsync [seçenek] [kaynak] [hedef]

Tek bir dosyayı yerel olarak kopyalayın

Sisteminizde bir yerden başka bir yere dosya kopyalamak istiyorsanız, bunu yazarak yapabilirsiniz rsync ardından kaynak dosya adı ve hedef dizin gelir.

Örneğin, tek bir dosyayı kopyalamak için “file1.txt” dosyasını Giriş dizini olan mevcut konumdan ~/Documents dizinine gönderirseniz, komut şöyle olacaktır:

$ rsync /home/tin/file1.txt /home/tin/Belgeler

Not: “/home/tin/file1” yerine.robots.txt”, şu anda ana dizinde çalıştığımız için “file1” de yazabiliriz. Ayrıca, tam yolu “/home/tin/Documents” olarak belirtmek yerine ~/Documents kullanabiliriz.

Birden çok dosyayı yerel olarak kopyalayın

Sisteminizde aynı anda birden fazla dosyayı bir konumdan diğerine kopyalamak istiyorsanız, bunu yazarak yapabilirsiniz rsync ardından kaynak dosya adı ve hedef dizin gelir.

Örneğin, “file2” dosyalarını kopyalamak için.robots.txt” ve “dosya3.txt” dosyasını Giriş dizininden ~/Documents dizinine aktardığınızda, komut şöyle olacaktır:

$ rsync /home/tin/file2.txt /home/tin/file3.txt /home/tin/Belgeler

Aynı uzantıya sahip tüm dosyaları kopyalamak için dosya adlarını tek tek belirtmek yerine yıldız (*) sembolünü kullanabilirsiniz. Örneğin, “ ile biten Home dizinindeki tüm dosyaları kopyalamak için.Zip” uzantısını ~/Documents dizinine eklersek şunları kullanacağız:

$ rsync /home/tin/*.zip ~/Belgeler

Dizinleri yerel olarak kopyalayın

Sisteminizde bir dizini alt dizini ve tüm içeriği ile bir yerden başka bir yere kopyalamak istiyorsanız, bunu yazarak yapabilirsiniz rsync ardından kaynak ve hedef dizin.

Örneğin, “örnek” dizini Ana dizindeki “test/” dizinine kopyalamak için komut şöyle olacaktır:

$ rsync -av /home/tin/örnek /home/tin/test

Not: Kaynak dizinden sonra “/” belirtilmesi, yalnızca dizinin içeriğini kopyalar. Kaynak dizinden sonra “/” belirtmezsek, kaynak dizin de hedef dizine kopyalanacaktır.

Aşağıdaki çıktıda olduğu gibi, “sample” kaynak dizinimizin de hedef dizine kopyalandığını görebilirsiniz (kaynak dizin olarak “sample/” yerine “sample” kullandığımız için).

Rsync, yalnızca yeni veya güncellenmiş dosyaları aktardığını yukarıdaki çıktıda görebileceğiniz gibi artımlı aktarımı destekler.

Dosyaları maksimum boyuta göre kopyalayın

Kopyalama yaparken “-max-size” seçeneği ile kopyalanabilecek maksimum dosya boyutunu da belirtebiliriz. Örneğin, 2000k'den büyük olmayan dosyaları ~/Downloads dizininden ~/Documents dizinine kopyalamak için komut şöyle olacaktır:

$ rsync -a --max-size=2000k /home/tin/Downloads/* /home/tin/Documents

Bu komut, ~/Downloads dizininden ~/Documents dizinine 2000k'den büyük olanlar hariç tüm dosyaları kopyalayacaktır.

Dosyaları minimum boyuta göre kopyalayın

Benzer şekilde, kopyalanabilecek minimum dosya boyutunu da “-min-size” seçeneği ile belirtebiliriz. Örneğin, ~/Downloads dizininden ~/Documents dizinine 5M'den küçük olmayan dosyaları kopyalamak için komut şöyle olacaktır:

$ rsync -a --min-size=5M /home/tin/Downloads/ /home/tin/Documents

Bu komut, ~/Downloads dizinindeki tüm dosyaları ~/Documents dizinine 5M'den küçük olanlar hariç kopyalayacaktır.

Dosyaları hariç tut

Dosyaları bir dizinden diğerine kopyalarken, “-exclude” seçeneğini ve ardından dosya adını veya dosya türünün uzantısını kullanarak bazı dosyaları hariç tutabilirsiniz.

Örneğin, tüm öğeleri hariç tutmak için .zip dosyalarını ~/Downloads dizininden ~/Documents dizinine kopyalarken komut şöyle olacaktır:

$ rsync -a --exclude="*.zip" /home/tin/Downloads/ /home/tin/Belgeler

Dosyaları ve dizinleri uzaktan kopyalayın

Rsync ile tek bir dosyayı, birden çok dosyayı ve dizini uzak bir sisteme kopyalayabilirsiniz. Dosyaları ve dizinleri uzaktan kopyalamak için şunları yapmanız gerekir:

Dosyaları rsync kullanarak kopyalamadan önce, uzak sisteme SSH aracılığıyla erişebildiğinizden emin olun:

$ ssh remote_user@remote_ip


Dosyaları ve dizinleri rsync kullanarak uzak bir sisteme kopyalamak için genel sözdizimi:

$ rsync [seçenek] [kaynak] [remoteuser@remoteip:hedef]

Örneğin, tek bir dosyayı kopyalamak için “dosya.txt” dosyasını ~/Downloads'dan uzak sistem ~/Documents dizinine gönderirseniz komut şöyle olur:

$ rsync -v ~/İndirilenler/dosya1.txt [email protected]:~/Belgeler

Benzer şekilde yerel bir sistemdeki “~/Downloads/files” dizinini alt dizini ve tüm içeriği ile birlikte uzak sistemdeki “~/Downloads/samples” dizinine kopyalamak için:

$ rsync -rv ~/İndirilenler/dosyalar [email protected]:~/İndirilenler/örnekler

Dosyaları ve dizinleri uzak makineden yerel makinenize de kopyalayabilirsiniz. Örneğin, bir “dosya2”yi kopyalamak için.Uzak sistemden yerel sistem masaüstüne robots.txt:

$ rsync -v [email protected]:~/İndirilenler/dosya2.txt ~/Masaüstü/

Benzer şekilde, uzak sistemden yerel sisteme bir dizini kopyalamak için

$ rsync -rv [email protected]:~/İndirilenler/örnek ~/Masaüstü/test

Uzaktaki sisteme/sistemden dosya kopyalarken -max-size, -min-size, -exclude ve diğerleri gibi tüm seçenekleri de kullanabilirsiniz.

Rsync, dosyaları kaynaktan hedefe yerel olarak veya uzaktan kopyalamak için harika bir araçtır. Dosyaları uzaktaki sisteme/sistemden aktarırken size esneklik ve kontrol sağlayan çok sayıda seçenek içerir.

Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...
How to change Mouse pointer and cursor size, color & scheme on Windows 10
The mouse pointer and cursor in Windows 10 are very important aspects of the operating system. This can be said for other operating systems as well, s...