Címlapos írásnak terveztem, de úgy éreztem oda kevés lenne, no meg a fejlesztője magára is hagyta, így nem merném bátran ajánlani komolyabb backup célokra a megatools-t, otthonra játszadozni viszont továbbra is jó alternatíva lehet.
Szerintem bemutatni nem nagyon kell a megát, Kim Dotcom újabb próbálkozása a Megaupload után, a szolgáltatás népszerűsége pedig egyre csak ível felfelé. Ingyenesen 50GB cloud tárhely jár mindenkinek, aki regisztrál, de ez még csak a kezdet, mert folyamatosan érkeznek az új funkciók és lehetőségek. Példának okáért már létezik mobil és böngészőbe épülő alkalmazás/kiegészítő is, de van már Windows-os szinkronizáló kliens is.
Amiről itt szó lesz az egy nagyon okos kis programcsomag, ami a mega API-ját használva képessé teszi kedvenc Linux disztribünket arra, hogy az ingyenes 50GB-os mega tárhelyet használhassuk háttértárként vagy éppen backup megoldásként. Én az utóbbi célra használom, azaz ide (is) mentek minden fontos adatot megadott időközönként a Debian szerveremről.
Mi is kell ehhez?
- Maga a megatools vagy forrásból egyénileg fordítva, vagy előre fordított binárisok formájában, melyek itt érhetők el:
megatools-1.9.91-ubuntu-i386.tar.gz (663 kB)
megatools-1.9.91-fedora-i386.tar.gz (667 kB)
megatools-1.9.91-ubuntu-amd64.tar.gz (663 kB)
megatools-1.9.91-suse-i586.tar.gz (677 kB)
megatools-1.9.91-debian-wheezy-i386.tar.gz (675 kB)
megatools-1.9.91-fedora-x86_64.tar.gz (662 kB)
megatools-1.9.91-debian-wheezy-amd64.tar.gz (669 kB)
megatools-1.9.91.tar.gz (440 kB)
megatools-1.9.91-suse-x86_64.tar.gz (674 kB)
megatools-1.9.91-arch-x86_64.tar.gz (675 kB)
És van egy Windows-os verzió is, de ezzel személy szerint nincs tapasztalatom:
megatools-1.9.91-win32.zip (4221 kB)
A source pedig itt érhető el: [link]
A fenti előrefordított binárisokat csak ki kell tömöríteni a megfelelő helyre és ha minden igaz már működik is, de nekem ezzel nem volt szerencsém Debian Wheezy alatt, ezért nekiestem egyénileg lefordítani a megatools-t (a szokásos configure, make, make install), de előtte azért érdemes ezeket a csomagokat telepíteni:
glib-networking gobject-introspection curl libcurl4-gnutls-dev
Nekem még kellett mellé egy "ca-certificates" csomag is és utána egy "update-ca-certificates" parancs. Ha a configure nem fut le, akkor még valószínűleg hiányzik valami, ez verziónként és kiadásonként változhat, de a hibaüzenetek általában beszédesek.
Ha van már mega fiókod akkor a telepítés után létre kell hozni egy .megarc nevű fájlt a felhasználói accountunk alá, ami tartalmazza a bejelentkezéshez szükséges e-mail címed és jelszavad. Ha root vagy akkor /root/.megarc
A tartalma ez legyen.
[Login]
Username = mega_email@cimed.com
Password = megajelszo
Ha nincs még mega fiókod, akkor a "megareg" parancs használható fiók létrehozására.
Ha létrehoztad a .megarc-t akkor lehet tesztelni, hogy működik-e a kapcsolat, jöhet a "megals", ami listázza a mega fiókodban található fájlokat.
A kiadható parancsok és rövid magyarázatuk:
megareg: Mega felhasználói fiók létrehozására szolgál
megals: Listázza a mega tárhelyeden található fájlokat és mappákat
megadf: Kiírja a szabad tárhelyed (megadf --mb)
megadl: Letölti az exportált fájlt vagy mappát (pl: megadl 'https://mega.co.nz/#!7YVWhCzZ!bauBlAkKKvv8hIm-8-qFmGOYS289ToQWN7rGFPzXB_w')
megadf: Felcsatolja a mega tárhelyet meghajtóként
$ mkdir -p mount
$ megafs mount
$ ls mount
Contacts Inbox Root Trash
megamkdir: Új mappa létrehozása
megamv: Fájlok mozgatása vagy átnevezése
megaput: Fájlok feltöltése a megára
megasync: Teljes könyvtárak le/feltöltése a megára
Példa a feltöltésre: megasync --local MyBackups --remote /Root/Backups
Példa a letöltésre: megasync --local MyBackups --remote /Root/Backups --download
Sajnos ez nem tud incremental backupot, de azért lehet kicsit ügyeskedni, van is erre egy script, ami összeveti a helyi fájlokat a már feltöltött fájlokkal és ha változás van, akkor azt végrehajtja, tehát ha törölsz egy fájlt a szerverről, akkor a script törli azt a megáról is, így nem marad tele szeméttel és szükségtelen fájlokkal a backup tárhelyed.
A script:
#!/bin/sh
MEGASYNC='/usr/local/bin/megasync'
MEGARM='/usr/local/bin/megarm'
LOCALDIR="/usr/local/data/backups"
REMOTEDIR="/Root/backups"
SEDLOCALDIR="\/usr\/local\/data\/backups"
SEDREMOTEDIR="\/Root\/backups"
BACKUP_TIME=`date +%c`
LOG="/root/mega.log"
hostname=`hostname`
#Obtain the files that not exists in the local server
DELETE=`$MEGASYNC --dryrun --reload --download --local $LOCALDIR --remote $REMOTEDIR | sed 's/F '$SEDLOCALDIR'/'$SEDREMOTEDIR'/g'`
# And remove it
for i in $DELETE; do
$MEGARM $i
done
# Run the synchronization to Mega
SYNC=`$MEGASYNC --no-progress --local $LOCALDIR --remote $REMOTEDIR`
echo "[$BACKUP_TIME][$(hostname)] synchronization to mega done!!" > $LOG
echo "Files removed $DELETE" >> $LOG
echo "Files synchronized" >> $LOG
Mint említettem sajnos a fejlesztője magára hagyta a projektet, így nem biztos, hogy sokáig életképes marad ez a megoldás (főleg ha változik a mega API-ja), de azért egész korrekt opció addig, amíg még használható. Nekem ez a másodlagos backup megoldásom, erre a célra pedig tökéletesen meg is felel.