FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail

Elimdeki mikro veri dosyalarını taşınabilir disklerde tutmanın etkin olmadığını düşündüğüm için hepsini bilgisayarımda tutuyorum. Tabii bilgisayarın başına bir iş gelmesi ihtimaline karşı da iki farklı buluta senkronize ediyorum. Bu yöntemin sorunlu tarafı, her ne kadar bulut depolama hizmetlerini kullansamda, ilgili klasörleri "senkronize" ettiğim için, sıklıkla kullanmadığım verilerin de bir kopyası sürekli bilgisayarımda bulunuyor. Bu da 256GB SSD diskimin hızla dolması anlamına geliyor.

Bana şöyle bir çözüm gerekiyor. İstediğim klasörleri/dosyaları buluta yedekleyeyim ve bilgisayarımdaki kopyalarını sileyim. İhtiyacım olduğunda ise hızlıca bu verileri bilgisayarıma indirebileyim. Tabii bu işi sadece manuel değil, kodlayarak otomatikleştirme şansım da olsun istiyorum. Burada rclone imdada yetişiyor. Github deposuna buradan ulaşabileceğiniz, açık kaynak kodlu bu küçük yazılım tam da istediğim özelliklere sahip. Burada benzer bir şeye ihtiyacı olanlar için kısaca nasıl kurulacağını ve kullanımını anlatmaya çalışacağım.

Rclone komut satırından kullanılan bir yazılım. Bu nedenle Terminal kullanmaya alışık olmayanlar için zor olabilir. Fakat illa da grafik arayüzü isteyenler RcloneBrowser isimli yazılımı kullanabilirler. Bu yazılım ile bütün işlemler uygun seçeneklere tıklayarak gerçekleştirilebiliyor. Burada RcloneBrowser yazılımının kullanımına girmeyeceğim. Çünkü kullanmadım 🙂

Kurulum

Kurulum iki aşamadan oluşuyor. Yazılımın bilgisayara kurulması ve ayarların yapılması. Öncelikle buradan işletim sisteminize uygun zip dosyasını indirerek uygun bir klasöre açmanız yeterli. Yazılımı kullanmak için terminal (Windows kullananlar için "komut satırı işlemcisi") ile rclone klasörüne gitmeniz gerekiyor.

Kullanım

Rclone, One Drive, Dropbox ve Google Drive gibi birçok bulut hizmeti ile birlikte çalışıyor. Hatta bir bulut hizmeti bile gerekmiyor. Örneğin FTP sunucusu çalışan internete bağlı bir bilgisayarınız varsa, onunla bile kullanabilirsiniz. Ben Google Drive kullandığım için burada sadece Google Drive ile kullanımını anlatacağım.

Öncelikle gerekli ayarların yapılması gerekiyor. Bunun için aşağıdaki komut ile ayarlama moduna giriyoruz:

rclone config

Bu komutla birlikte yazılım size kullanacağınız bulut hizmetine ilişkin bilgileri istiyor. Sadece yönergeleri takip etmeniz yeterli. Bir noktada yazılım bir web tarayıcı açarak kullacağınız bulut hizmetine (burada Google Drive) giriş yapmanızı ve rclone için gerekli izni vermenizi istiyor. Bu işlem bittiğinde yazılım kullanıma hazır hale geliyor. Ayarlar rclone.conf isimli bir dosyaya yazılıyor. Bu dosyanın nerede olduğunu öğrenmek için ise

rclone config file

yazmanız yeterli. İsterseniz ayarları rclone.conf dosyasından kendiniz değiştirebilirsiniz, fakat bunu tavsiye etmem. Bunun yerine rclone config komutunu çalıştırmanız ve (e) seçeneği ile mevcut sürücüde değişiklik yapmanız daha sağlıklı olacaktır. Birden fazla uzak sürücü (bulut hizmeti) kullanmanız mümkün. Örneğin hem Dropbox hem Google Drive için ayarlama yapabilirsiniz. Hangi uzak sürücüler için kurulum yapıldığını görmek için ise

rclone remotes list

komutunu girmeniz yeterli olacak.

Şimdi yazılımı nasıl kullanacağımıza gelelim. Kurduğumuz uzak sürücünün adı (bu isim ayarlar yapılırken name> sorusuna verdiğiniz yanıttır) mydrive olsun. C:DATA\pisa klasörünün altında yer alan veri dosyalarını Google Drive'daki DATA klasörünün içerisine kaydetmek istiyoruz. Fakat bu klasörün bilgisayarınız ile senkronize edilmiyor olması gerekir. Aksi halde yapacağımız işlemin bir anlamı olmayacak, dosyalar bilgisayarımızda yer işgal etmeye devam edecektir. Bu şu anlama geliyor, ya bilgisayarınızda senkronizasyon yazılımı kullanmıyorsunuz veya sadece belirli klasörler senkronize ediliyor demektir. Ben Google Yedekleme ve Senkronizasyon yazılımı ile bilgisayarımdaki Google Drive klasörümü senkronize ettiğim için, bu yazılımın seçeneklerinden Google Drive üzerindeki DATA klasörünün senkronize edilemesini durdurdum. Dolayısıyla buradaki dosyalar sadece Google Drive üzerinde kalıyor ve otomatik olarak bilgisayarıma indirilmiyor.

Öncelikle uzak sürücüde (Google Drive) DATA klasörünün altında pisa isimli bir klasör oluşturacağız:

rclone mkdir mydrive:DATA/pisa

Google Drive üzerinde DATA klasörünün altında pisa isimli klasörüm hazır. Şimdi bilgisayarımdaki verileri buraya yedeklemenin zamanı geldi:

rclone copy C:DATA/pisa mydrive:DATA/pisa

Rclone C:DATA\pisa klasöründeki bütün dosyaları Google Drive üzerindeki DATA/pisa klasörünün altına kopyalayacaktır. Burada iki noktaya dikkat edin. Öncelikle kopyalanacak dosyalar hangi klasörde ise o klasörün yolunu yazıyorum. Sonra uzak sürücünün ismini (mydrive) yazıyorum, : ayıracının ardından uzak sürücüdeki klasörün yolunu yazıyorum. Diğer önemli bir nokta ise Windows kullanıcılarını ilgilendiriyor. Yolları yazarken Windows'daki gibi C:DATA\pisa şeklinde değil, Unix tabanlı sistemlerdeki gibi / ayırıcısı kullanarak C:DATA/pisa şeklinde yazmalısınız. Bu nedenle yolu kopyalayıp yapıştırdıktan sonra \ karakterlerini / ile değiştirmeyi unutmayın.

Büyük dosyaları kopyalarken işlemin ilerlemesini görmek isteyebilirsiniz. Bunun için -P veya --progress seçeneğini kullanabilirsiniz:

rclone copy C:DATA/pisa mydrive:DATA/pisa -P

Bu komut kopyalama işlemine ilikin gerçek zamanlı bilgileri gösterir. Bu şekilde o anda hangi dosyanın kopyalandığı, ne kadar süre kaldığı veya kaç dosya kaldığı gibi bilgileri görebilirsiniz. Herhangi bir nedenle işlemi sonlandırdığınızda (örneğin ctrl+c ile), kopyalama işlemine yeniden başlayabilirsiniz. Aynı komutu tekrar verdiğinizde kopyalanmış olan dosyalar tekrar sıraya alınmayacak, sadece henüz kopyalanmamış olanlar kopyalanacaktır.

Diyelim ki yanlış birşeyler yapmaktan korkuyoruz. O zaman rclone'dan işlemi yapmadan hangi dosyaları kopyalayacağını göstermesini isteyebiliriz. Bunun için -n veya --dry-run seçeneklerini kullanmamız gerekir:

rclone copy -n C:DATA/pisa mydrive:DATA/pisa

Sadece tek bir dosyayı kopyalamak istersek ne olacak? Bu durumda doğrudan hangi dosyayı kopyalayacağımızı ve kopyalanacak uzak sürücü klasörünü yazmamız yeterli:

rclone copy C:DATA/pisa/pisa2006.dta mydrive:DATA/pisa

Kopyalamadan sonra bilgisayarımdaki C:DATA\pisa klasörünü ve içindeki bütün dosyaları silerek diğer dosyalar için yeni boş alan oluşturabilirim. Yedeklediğim dosyalara ihtiyacım olduğunda ise

rclone copy mydrive:DATA/pisa/pisa2006.dta C:DATA/pisa_analiz

komutu ile pisa2006.dta dosyasını pisa_analiz klasörüme indirebilirim. İşin güzel tarafı bu işlemleri R veya Python kodu ile otomatik hale getirebilirim. Rclone ile ilgili daha fazla merak ettikleriniz için yardım sayfalarını kullanmanızı tavsiye ederim.