Rclone - विभिन्न क्लाउड स्टोरेज से सिंक फाइल्स को सिंक करें


Rclone गो भाषा में लिखा गया एक कमांड लाइन प्रोग्राम है, जिसका उपयोग विभिन्न क्लाउड स्टोरेज प्रदाताओं से फ़ाइलों और निर्देशिकाओं को सिंक करने के लिए किया जाता है, जैसे: Amazon Drive, Amazon S3, Backblaze B2, Box, Ceph, DigitalOcean Spaces, Dropbox, एफ़टीपी, गूगल क्लाउड स्टोरेज, गूगल ड्राइव आदि।

जैसा कि आप देख रहे हैं, यह कई प्लेटफार्मों का समर्थन करता है, जो सर्वर या निजी भंडारण के बीच आपके डेटा को सिंक करने के लिए एक उपयोगी उपकरण बनाता है।

Rclone निम्नलिखित विशेषताओं के साथ आता है

  • MD5/SHA1 hash checks at all times for ensuring file integrity integrity.
  • Timestamps are preserved on files.
  • Partial syncs supported on a whole file basis.
  • Copy mode for new or changed files.
  • One way sync to make a directory identical.
  • Check mode – hash equality check.
  • Can sync to and from network, eg two different cloud accounts.
  • (Encryption) backend.
  • (Cache) backend.
  • (Union) backend.
  • Optional FUSE mount (rclone mount).

लिनक्स सिस्टम में कैसे स्थापित करें

rclone की स्थापना दो अलग-अलग तरीकों से पूरी की जा सकती है। निम्नलिखित आदेश जारी करके आसान उनकी स्थापना स्क्रिप्ट का उपयोग कर रहा है।

# curl https://rclone.org/install.sh | sudo bash

यह स्क्रिप्ट जो करती है वह ओएस प्रकार की जांच करना है जिस पर इसे चलाया जाता है और उस ओएस से संबंधित संग्रह को डाउनलोड करना है। फिर यह संग्रह और प्रतियां rclone बाइनरी से /usr/bin/rclone निकालता है और फ़ाइल पर 755 अनुमतियाँ देता है।

अंत में, जब इंस्टॉलेशन पूरा हो जाए, तो आपको निम्नलिखित लाइन देखनी चाहिए:

Rclone v1.44 has successfully installed.
Now run “rclone config” for setup, Check https://rclone.org/docs/ for  more details.

rclone को स्थापित करने का दूसरा तरीका निम्नलिखित कमांड जारी करके है।

# curl -O https://downloads.rclone.org/rclone-current-linux-amd64.zip
# unzip rclone-current-linux-amd64.zip
# cd rclone-*-linux-amd64

अब बाइनरी फ़ाइल की प्रतिलिपि बनाएँ और इसे निष्पादन योग्य अनुमति दें।

# cp rclone /usr/bin/
# chown root:root /usr/bin/rclone
# chmod 755 /usr/bin/rclone

rclone मैनपेज स्थापित करें।

# mkdir -p /usr/local/share/man/man1
# cp rclone.1 /usr/local/share/man/man1/
# mandb 

लिनक्स सिस्टम में रक्लोन् को कैसे कॉन्फ़िगर करें

इसके बाद आपको जो करना होगा वह है rclone config को अपनी config फाइल बनाने के लिए चलाना। इसका उपयोग भविष्य के उपयोग के लिए प्रमाणीकरण rclone के लिए किया जाएगा। कॉन्फ़िगरेशन सेटअप को चलाने के लिए निम्न आदेश चलाएँ।

# rclone config

आप निम्नलिखित संकेत देखेंगे:

2018/11/13 11:39:58 NOTICE: Config file “/home/user/.config/rclone/rclone.conf” not found - using defaults
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q>

विकल्प इस प्रकार हैं:

  • n) – Create new remote connection
  • s) – set password protection for your configuration
  • q) – exit the config

इस ट्यूटोरियल के उद्देश्य के लिए n दबाएं और नया कनेक्शन बनाएं। आपको नए कनेक्शन को एक नाम देने के लिए कहा जाएगा। उसके बाद आपको कॉन्फ़िगर किए जाने वाले भंडारण के प्रकार का चयन करने के लिए प्रेरित किया जाएगा:

मैंने कनेक्शन "Google" और "Google ड्राइव" का नाम दिया है, जो 12 संख्या के अंतर्गत है। बाकी सवालों का जवाब आप बस डिफ़ॉल्ट उत्तर को छोड़ कर दे सकते हैं, जो एक खाली "" है।

जब आपसे पूछा जाता है, तो आप "ऑटोकॉन्फ़िग" का चयन कर सकते हैं, जो आपके Google ड्राइव से कनेक्ट करने के लिए सभी आवश्यक जानकारी उत्पन्न करेगा और rclone अनुमतियाँ देगा Google ड्राइव से डेटा का उपयोग करें।

प्रक्रिया कुछ इस तरह दिखती है:

Google Application Client Secret - leave blank normally.
client_secret>
Scope that rclone should use when requesting access from drive.
Choose a number from below, or type in your own value
 1 / Full access all files, excluding Application Data Folder.
   \ "drive"
 2 / Read-only access to file metadata and file contents.
   \ "drive.readonly"
   / Access to files created by rclone only.
 3 | These are visible in the drive website.
   | File authorization is revoked when the user deauthorizes the app.
   \ "drive.file"
   / Allows read and write access to the Application Data folder.
 4 | This is not visible in the drive website.
   \ "drive.appfolder"
   / Allows read-only access to file metadata but
 5 | does not allow any access to read or download file content.
   \ "drive.metadata.readonly"
scope> 1
ID of the root folder - leave blank normally.  Fill in to access "Computers" folders. (see docs).
root_folder_id> 
Service Account Credentials JSON file path - needed only if you want use SA instead of interactive login.
service_account_file>
Remote config
Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine or Y didn't work
y) Yes
n) No
y/n> y
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Log in and authorize rclone for access
Waiting for code...
Got code
Configure this as a team drive?
y) Yes
n) No
y/n> n
--------------------
[remote]
client_id = 
client_secret = 
scope = drive
root_folder_id = 
service_account_file =
token = {"access_token":"XXX","token_type":"Bearer","refresh_token":"XXX","expiry":"2018-11-13T11:57:58.955387075Z"}
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y

लिनक्स सिस्टम में rclone का उपयोग कैसे करें

Rclone के पास उपलब्ध विकल्पों और आदेशों की एक लंबी सूची है, जिनका उपयोग किया जाना है। हम कुछ और महत्वपूर्ण बातों को शामिल करने का प्रयास करेंगे:

# rclone lsd <remote-dir-name>:
# rclone copy source:sourcepath dest:destpath

ध्यान दें कि यदि rclone डुप्लिकेट पाता है, तो उन पर ध्यान नहीं दिया जाएगा:

यदि आप निर्देशिकाओं के बीच कुछ डेटा सिंक करना चाहते हैं, तो आपको सिंक कमांड के साथ rclone का उपयोग करना चाहिए।

कमांड को इस तरह दिखना चाहिए:

# rclone sync source:path dest:path [flags]

इस मामले में स्रोत गंतव्य के लिए सिंक किया जाता है, केवल गंतव्य बदल रहा है! यह विधि अपरिवर्तित फ़ाइलों को छोड़ देती है। चूंकि कमांड डेटा हानि का कारण बन सकता है, आप इसका उपयोग कर सकते हैं "- सूखी-रन" यह देखने के लिए कि वास्तव में क्या कॉपी और हटाया जाएगा।

डेटा को स्थानांतरित करने के लिए, आप चाल कमांड के साथ rclone का उपयोग कर सकते हैं। कमांड को इस तरह दिखना चाहिए:

# rclone move source:path dest:path [flags]

स्रोत से सामग्री, स्थानांतरित (हटा दी जाएगी) और चयनित गंतव्य पर रखी जाएगी।

गंतव्य पर निर्देशिका बनाने के लिए।

# rclone mkdir remote:path

एक निर्देशिका निकालने के लिए।

# rclone rmdir remote:path

स्रोत और गंतव्य मैच की फ़ाइलें देखें:

# rclone check source:path dest:path

फाइलों को नष्ट:

# rclone delete remote:path

प्रत्येक रेकॉन कमांड का उपयोग विभिन्न झंडों के साथ किया जा सकता है और इसमें स्वयं सहायता मेनू भी शामिल है। उदाहरण के लिए, आप डिलीट ऑप्शन का उपयोग कर सेलेक्टिव डिलीट कर सकते हैं। कहते हैं कि आप 100M से बड़ी फ़ाइलों को हटाना चाहते हैं, कमांड इस तरह दिखेगा।

# rclone --min-size 100M delete remote:path

यह मैनुअल की समीक्षा करने और प्रत्येक आदेश के लिए rclone प्राप्त करने में मदद करने के लिए अत्यधिक अनुशंसा करता है। Rclone का पूर्ण प्रलेखन यहां उपलब्ध है: https://rclone.org/

rclone विभिन्न क्लाउड स्टोरेज प्रदाताओं के बीच डेटा का प्रबंधन करने में आपकी मदद करने के लिए एक शक्तिशाली कमांड लाइन उपयोगिता है। जबकि इस लेख में हमने केवल rclone क्षमताओं की सतह को खरोंच किया है, विशेष रूप से क्रोन सेवा (उदाहरण के लिए) के साथ संयोजन में उपयोग किए जाने पर इसके साथ बहुत कुछ हासिल किया जाना है।