03/29/2024

Cum să utilizați rclone pentru a face backup pe Google Drive pe Linux

Încă nu există un client Linux oficial pentru Google Drive, dar puteți face copii de rezervă pe Google Drive folosind utilitarul rclone chiar din linia de comandă. Vă arătăm cum.

Unde este Google Drive pe Linux?

În ciuda faptului că a promis că suportul Linux „va veni în curând” în 2012, nu există nicio indicație că Google va produce vreodată un client Linux nativ pentru Google Drive. Există mai multe soluții neoficiale de la terți, cum ar fi Sincronizat, overGrive și ODrive, iar unele browsere de fișiere permit integrarea cu Google Drive, cum ar fi Fișiere în GNOME.

Aplicațiile de la terți sunt produse comerciale, care necesită fie o achiziție directă, fie un abonament. Funcționează bine, nu costă mult și, de fapt, overGrive are o versiune gratuită, oferind funcționalități limitate fără costuri.

Dar dacă doriți să creați și să rulați copii de rezervă din linia de comandă? Sau pentru a încorpora această funcționalitate în scripturi? Toate acestea sunt posibile datorită unei aplicații uimitoare numită rclone. De fapt, cu rclone poți faceți copii de rezervă, descărcați și sincronizați fișierele cu peste patruzeci de soluții cloud diferite. E ca și cum rsync pentru nori.

Instalarea rclone

rclone aproape sigur nu va fi instalat implicit pe computerul dvs. Linux. Din fericire, există un script de instalare care ar trebui să funcționeze pe toate distribuțiile. Procesul de instalare folosește răsuci. Pe computerele folosite pentru cercetarea acestui articol, Fedora 31 și Manjaro 18.1.0 aveau deja instalat curl, dar curl trebuia instalat pe Ubuntu 18.04 LTS.

Pe Ubuntu, rulați această comandă pentru a o instala:

sudo apt-get install curl

Odată ce curl a fost instalat, instalați rclone cu această comandă:

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

Când instalarea rclone s-a terminat, veți vedea un mesaj de succes.

Acesta a instalat programul rclone pe computerul dumneavoastră Linux. Următorul pas este să parcurgeți procesul de configurare și să vă autentificați rclone pentru a vă accesa Google Drive.

Crearea unei conexiuni la distanță rclone

Conexiunile la serviciile cloud de la distanță sunt numite „telecomenzi” în lumea rclone. Trebuie să creăm unul pentru Google Drive. Porniți procesul de configurare rclone cu această comandă:

rclone config

Există o mulțime de întrebări în procesul de configurare. Dar nu vă descurajați, multe dintre ele pot fi lăsate la valorile implicite și pur și simplu acceptate apăsând „Enter”.

  4 cele mai bune aplicații de podcast pentru Linux

rclone ne spune că nu există telecomenzi configurate. Apăsați „n” și apăsați „Enter” pentru a crea o nouă telecomandă. Vă va solicita un nume. Îi vom numi „google-drive”. Folosește orice nume îți place.

Un meniu lung vă permite să alegeți tipul de stocare la care creați o conexiune la distanță.

Derulați prin listă până când vedeți intrarea pentru Google Drive și notați numărul acesteia.

Putem vedea că în acest caz, este numărul 13. Introduceți acesta ca tip de stocare și apăsați „Enter”.

Vi se solicită un ID de client al aplicației Google. Apăsați „Enter” pentru a accepta valoarea implicită.

Apoi vi se solicită să introduceți un secret pentru clientul aplicației Google.

Din nou, doar apăsați „Enter”. Vi se cere să furnizați domeniul de aplicare pe care îl va avea rclone atunci când funcționează pe Google Drive. Apăsați „1” și apoi apăsați „Enter”.

Pentru „ID-ul folderului rădăcină”, doar apăsați „Enter”.

La solicitarea „Acreditări contului de serviciu”, apăsați „Enter”.

La promptul „Editați configurația avansată”, apăsați doar pe „Enter”. În meniul „Utilizați configurarea automată”, apăsați pe „y”, apoi apăsați pe „Enter”.

The

Acest lucru face ca rclone să comunice cu Google Drive și să lanseze browserul pentru a vă permite să acordați permisiunea ca rclone să interacționeze cu Google Drive.

În fereastra browserului, faceți clic pe contul Google pe care doriți să îl utilizați.

Faceți clic pe butonul „Permite” pentru a permite rclone să aibă acces la Google Drive.

Când autentificarea s-a finalizat, veți vedea un „Succes!” mesaj în fereastra browserului. Puteți închide browserul și puteți reveni la fereastra terminalului.

La promptul „Configurați acest lucru ca unitate de echipă”, tastați „n” și apoi apăsați „Enter”.

Rclonul

În meniul „Yes, Edit, Delete” tastați „y” și apoi apăsați „Enter”.

Rclonul

În meniul final, tastați „q” și apăsați „Enter”.

Scriptul de backup rclone

Aplicația rclone este foarte bogată în funcții. E grozav, dar înseamnă sunt o multime de optiuni. Comanda pe care o vom analiza mai jos copiază fișierele de pe computerul local pe Google Drive. Aceasta este o copie unidirecțională către cloud; nu este o sincronizare bidirecțională între Google Drive și computerul local, deși rclone poate face asta. Folosim aceasta ca formă de bază de backup off-site.

  Cum se instalează teme și pictograme personalizate în Linux

Tastați (sau copiați și inserați) acest lucru într-un editor de text și salvați-l pe computer. Noi l-am numit gbk.sh. Îi poți numi așa cum are sens pentru tine.

#!/bin/bash

/usr/bin/rclone copy --update --verbose --transfers 30 --checkers 8 --contimeout 60s --timeout 300s --retries 3 --low-level-retries 10 --stats 1s "/home/dave/Documents" "google-drive:LinuxDocs"

Iată ce înseamnă parametrii:

copiere: copiați fișierele de pe computerul local în stocarea la distanță, sărind peste fișierele care sunt deja prezente pe stocarea la distanță.
–update: Omite orice fișiere care se află pe stocarea la distanță care au o oră modificată mai nouă decât fișierul de pe computerul local.
–verbose: oferă informații despre fiecare fișier care este transferat.
– transferuri 30: Aceasta setează numărul de fișiere de copiat în paralel.
–dame 8: Câte „dame” să ruleze în paralel. Checkers monitorizează transferurile care sunt în curs.,
–contimeout 60s: expirarea conexiunii. Setează ora la care rclone va încerca să realizeze o conexiune la stocarea de la distanță.
–timeout 300s: Dacă un transfer devine inactiv pentru această perioadă de timp, este considerat întrerupt și este deconectat.
–recercări 3: Dacă există atât de multe erori, întreaga acțiune de copiere va fi repornită.
–low-level-retry 10: O reîncercare de nivel scăzut încearcă să repete o operație eșuată, cum ar fi o singură solicitare HTTP. Această valoare stabilește limita pentru numărul de reîncercări.
–stats 1s: rclone poate oferi statistici despre fișierele transferate. Aceasta setează frecvența de actualizare a statisticilor la o secundă.
„/home/dave/Documents”: directorul local pe care îl vom copia în stocarea de la distanță.
„google-drive:LinuxDocs”: directorul de destinație din stocarea la distanță. Rețineți utilizarea „google-drive”, care este numele pe care l-am dat acestei conexiuni la distanță în timpul secvenței de configurare rclone. Rețineți, de asemenea, două puncte „:” care sunt folosite ca separator între numele de stocare la distanță și numele directorului. Subdirectoarele sunt separate prin obișnuita bară oblică „/”. Dacă directorul de destinație nu există, acesta va fi creat.

Unele dintre aceste valori sunt valorile implicite, dar le-am inclus aici pentru a le putea discuta. În acest fel, dacă trebuie să modificați o valoare, știți ce parametru să ajustați.

  Cum să utilizați Keybase pentru a cripta fișierele pe Linux

Faceți scriptul executabil cu această comandă:

chmod +x gbk.sh

Rularea scriptului de backup

Scriptul nostru de backup va copia folderul Documente în Google Drive. În folderul Documente, avem o colecție de partituri.

Putem lansa scriptul de backup cu această comandă:

./gbk.sh

Am solicitat actualizări de statistici la fiecare secundă (–stats 1s) și am cerut, de asemenea, rezultate detaliate (–verbose). Atunci nu va fi o surpriză că obținem o mulțime de rezultate pe ecran. De obicei, este o opțiune bună să activați o ieșire verbosă pentru o nouă funcționalitate, astfel încât să puteți identifica problemele. Puteți reduce cantitatea de ieșire odată ce sunteți fericit că lucrurile funcționează fără probleme.

Primim un rezumat final care ne spune că 60 de fișiere au fost transferate fără erori. Transferul a durat aproximativ 24 de secunde.

Să verificăm pe Google Drive și să vedem ce s-a întâmplat în stocarea noastră în cloud.

A fost creat un director „LinuxDocs”, așa că pare promițător. Dacă facem dublu clic pe el pentru a arunca o privire în interior, putem vedea că toate fișierele au fost transferate pe Google Drive.

Fișiere în

Folosind rclone pentru a vizualiza fișiere pe Google Drive

Putem folosi rclone pentru a arunca o privire în folderul de pe Google Drive, chiar din fereastra terminalului:

rclone ls google-drive:/LinuxDocs

Varful icebergului

Este grozav că putem efectua acest tip de copiere direct din linia de comandă. Putem încorpora utilizarea stocării noastre în cloud în scripturi și am putea programa execuția scripturilor de rezervă folosind cron.

rclone are o bogăție absolută de comenzi, ești încurajat să o faci consultați documentația lor și site-ul excelent. Abia am zgâriat suprafața aici, iar un pic de citit și de jucat cu rclone va plăti efortul de multe ori.

Strict vorbind, aceasta nu este o copie de rezervă adevărată. Este o copie în afara site-ului, de la distanță a fișierelor și datelor dvs., ceea ce este cu siguranță un lucru bun, dar este doar o copie a fișierelor. Nu oferă versiunea sau alte caracteristici pe care le-ar oferi adevăratele soluții de rezervă.

Deci, utilizați rclone împreună cu alte tehnici de backup. Ca un alt nivel al unui regim de backup existent, rclone este o modalitate ușoară de a vă stoca datele într-o locație care este îndepărtată din punct de vedere geografic de acasă sau de la birou. Și asta trebuie să fie un lucru bun.