Na WebInsider.pl korzystamy z motywu Extra od Elegant Themes. Zobacz dlaczego...

Dzisiejszy wpis będzie niejako kontynuacją poradnika który opublikowałem na początku roku, a dotyczył konfiguracji (i użytkowania) Copy w systemie Linux – a konkretnie w Raspberry Pi (Raspbian/Debian), z poziomu konsoli.

Dziś wykorzystamy pewne elementy które tam były opisane, dodamy kilka nowych i sprawdzimy jak można wykorzystać Copy do kopi zapasowej danych na serwerze (np. VPS).

Kopia zapasowa (np. plików serwera) na Copy

Dlaczego Copy? Bo na start macie 20 GB, a do tego możecie szybko powiększyć dostępną przestrzeń o kolejne 25 GB – co daje łącznie 45 GB, czyli raczej wystarczy miejsca na kilka kopii zapasowych na potrzeby serwera WWW.

Instalacja Copy w systemie Linux/Debian

Zaczynamy od pobrania pliku z plikami aplikacji Copy:

sudo wget --no-check-certificate https://copy.com/install/linux/Copy.tgz -O /usr/local/copy.tgz

Następnie musimy rozpakować pobrany plik:

cd /usr/local/
sudo tar -zxvf copy.tgz

Po tej operacji w katalogu „/usr/local/” powinien pojawić się katalog „copy”, w którym znajdziemy 3 katalogi:

  • armv6h – dla systemów zbudowanych na układach ARM v6, np. Raspberry Pi
  • x86 – dla systemów opartych o układy x86 (32 bit)
  • x86_64 – dla systemów opartych o układy x64 (64 bit)

Jest to relatywnie ważny moment – tu wybieracie odpowiednią platformę, a więc i ścieżkę dostępu do plików wykonywalnych.

Konfiguracja Copy i pierwsze uruchomienie

Pierwsze uruchomienie CopyConsole jest o tyle istotne, bo następuje tu autoryzacja maszyny – wymaga w późniejszych krokach:

sudo /usr/local/copy/x86_64/CopyConsole [email protected] -r=/backup/copy

Na podanym przykładzie wybrałem system x64, mój login w Copy to „[email protected]”, a „/backup/copy” to miejsce lokalizacji katalogu domowego Copy.

Po uruchomieniu wpisujemy hasło, po czym Copy zacznie synchronizować dane. Jeśli zamierzamy korzystać z CopyConsole – pozwalamy kontynuować, jeśli zamierzamy korzystać z CopyCmd – po autoryzacji przerywamy prace (ctr+z).

CopyConsole – pełna synchronizacja

Z Copy możemy korzystać w 2 trybach, pierwszy wywołujemy poleceniem:

sudo /usr/local/copy/x86_64/CopyConsole [email protected] -r=/backup/copy

Ew. z mniejszym priorytetem:

nice -n 10 sudo /usr/local/copy/x86_64/CopyConsole [email protected] -r=/backup/copy

Powoduje to automatyczną synchronizację katalogu „/backup/copy” z naszym kontem Copy – działa w 2 strony.

Jeśli chcemy synchronizować dodatkowe pliki czy katalogi – wystarczy skorzystać z linków symbolicznych:

sudo ln -s /jakiś/katalog/do/synchronizacji /backup/copy/jakiś-katalog

Automatyczne uruchamianie za pomocą skryptu

Warto zautomatyzować proces uruchamiania tego polecenia, co można osiągnąć np. za pomocą takiego skryptu:


#!/bin/sh
### BEGIN INIT INFO
# Provides: copyconsole
# Required-Start: $remote_fs $syslog $all
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Autostart CopyConsole (init.d script)
# Description: Autostart CopyConsole - CONFIG Copy first for linux_user_name!
### END INIT INFO

# Author: Rembiejewski.pl
# RAMdisk info URL: //webinsider.pl/copy-backup-serwer-vps

### START config here:

SYSTEM_USER="linux_user_name"
COPY_HOME_DIR="/backup/copy"
COPY_DIR="/usr/local/copy/x86_64/CopyConsole"

### END config here.

start() {
echo "CopyConsole start"
if [ -x $COPY_DIR ]; then
start-stop-daemon -b -o -N 10 -c $SYSTEM_USER -S -u $SYSTEM_USER -x $COPY_DIR -- -daemon
fi
}

stop() {
echo "CopyConsole stop"
if [ -x $COPY_DIR ]; then
start-stop-daemon -o -c $SYSTEM_USER -K -u $SYSTEM_USER -x $COPY_DIR
fi
}

case "$1" in

start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Usage: /etc/init.d/copyconsole {start|stop|restart}"
exit 1

esac

exit 0

Skrypt możecie pobrać za pomocą polecenia:

sudo wget //webinsider.pl/add/download/?link=copyconsole -O /etc/init.d/copyconsole

Następnie:

sudo nano /etc/init.d/copyconsole
sudo chmod +x /etc/init.d/copyconsole
sudo ln -s /etc/init.d/copyconsole /bin/copyconsole
update-rc.d copyconsole defaults
W Debian 8 Jessie zamiast powyższego polecenia można użyć:

sudo insserv nazwa_usługi

A czasem – przy niektórych zależnościach start/stop – jest to wręcz wymagane (a przynajmniej mocno zalecane).

 

Od tego momentu skrypt będzie startował automatycznie razem z systemem i uruchamiał CopyConsole zgodnie ze zdefiniowanymi parametrami.

Skryptem (i tym samym usługa CopyConsole) można też sterować ręcznie, za pomocą komend:

sudo service copyconsole start
sudo service copyconsole stop
sudo service copyconsole restart

CopyCmd – działania na żądanie

Można też zamiast synchronizacji wysyłać i pobierać dane z Copy, w tym celu korzystamy z poleceń:

sudo /usr/local/copy/x86_64/CopyCmd cloud put -r /jakiś/katalog/do/wysłania /katalog/docelowy/w/Copy

sudo /usr/local/copy/x86_64/CopyCmd cloud get -r /lokalizacja/lokalna/ /jakiś/katalog/do/pobrania/z/Copy

Można również dodać „nice -n 10” na początku by obniżyć priorytet procesu/operacji.

Podane polecenie można np. dodać do skryptu wykonującego kopię zapasową, czy inną operację – np. uruchamianą za pomocą CRONa…

Please increase the ulimit level

W trakcie pracy CopyConsole może pojawić się błąd/komunikat:

Please increase the ulimit level for open handles in order to detect file changes properly

By to skorygować edytujemy plik:

sudo nano /etc/sysctl.conf

I na samym końcu dodajemy:

# Copy.com
 fs.inotify.max_user_watches = 40000
 fs.file-max = 800000

Po zapisaniu zatwierdzamy zmiany:

sudo sysctl -p

Teraz powinno być już OK…

(!) Zgłoś błąd na stronie
Potrzebujesz profesjonalnej pomocy? Skontaktuj się z nami!
Spodobał Ci się artykuł? Zapisz się do naszego Newslettera - ZERO SPAMu, same konkrety, oraz dostęp do dodatkowych materiałów przeznaczonych dla subskrybentów!
Na podany adres e-mail otrzymasz od nas wiadomość e-mail, w której znajdziesz link do potwierdzenia subskrypcji naszego Newslettera. Dzięki temu mamy pewność, że nikt nie dodał Twojego adresu przez przypadek. Jeśli wiadomość nie przyjdzie w ciągu najbliższej godziny (zazwyczaj jest to maksymalnie kilka minut) sprawdź folder SPAM.
Roztańczona Karolina skorzystała z promocji dla czytelników WebInsider.pl i zapłaciła 80% mniej za księgowość internetową wFirma
WebInsider poleca księgowość wFirma
WebInsider korzysta z VPSa w HitMe.pl
WebInsider poleca VPSy DigitalOcean
WebInsider poleca serwis Vindicat
Napisz komentarz
wipl_napisz-komentarz_01Jeśli informacje zawarte na tej stronie okazały się pomocne, możesz nam podziękować zostawiając poniżej swój komentarz.

W tej formie możesz również zadać dodatkowe pytania dotyczące wpisu, na które – w miarę możliwości – spróbujemy Ci odpowiedzieć.
Linki partnerskie
Niektóre z linków na tej stronie to tzw. „linki partnerskie”, co oznacza, że jeśli klikniesz na link i dokonasz wymaganej akcji (np. zakup/rejestracja) możemy otrzymać za to prowizję. Pamiętaj, że polecamy tylko te produkty i usługi, z których sami korzystamy, i uważamy, że są tego na prawdę warte… :-)
Znaki towarowe i nazwy marek
W niektórych wpisach (oraz innych miejscach na stronie) mogą być przedstawione/użyte znaki towarowe i/lub nazwy marek, które stanowią własność intelektualną tych podmiotów, a zostały użyte wyłącznie w celach informacyjnych.
Młody Szymon pomógł tacie zapisać się do Newslettera WebInsider.pl i... teraz idzie popływać