Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Jak zrobić Auto BackUp serwera?


mateuszp120

Rekomendowane odpowiedzi

Opublikowano

Witam posiadam własnego ts i chciałem się zapytać jak zrobić automatyczny BackUp pliku : ts3server.sqlitedb.

 

Chciałbym aby zapisywało mi plik codziennie o 5 rano, a gdy będzie więcej niż kilka kopi to żeby nadpisywało, jak mogę to zrobić ? serwer na Linux'ie

bez reklam

Opublikowano

1) Utwórz plik .sh na własnym serwerze i wklej poniższą zawartość:

#!/bin/bash
HOST='ip'
USER='test'
PASS='hasloftp'
ZRODLOWYFOLDER='/home/'
DOCELOWYFOLDER='/1/'

lftp -f "
open $HOST
user $USER $PASS
lcd $ZRODLOWYFOLDER
mirror --reverse --delete --verbose  $ZRODLOWYFOLDER $DOCELOWYFOLDER
bye
"

Legenda:
HOST - wpisuje nazwę hosta dla konta
USER - wpisuje nazwę użytkownika ftp
PASS - wpisuje hasło dla konta w serwisie
ZRODLOWYFOLDER - nazwa folderu który chcemy wysłac na konto ftp
DOCELOWYFOLDER - nazwa folderu do którego bedą wysłane pliki

2) Nadaj uprawnienia dla wykonywania pliku ( chmod +x /sciezka/do/pliku.sh)
3) Dodaj skrypt jako zadanie cron ( crontab -e ) i określ godzinę wykonania pliku ( 0 1 * * * sh /sciezka/do/pliku.sh )

1385681103-U843596.jpg

 

Opublikowano

Hmm nie rozumiem tylko pkt.3 jak mam to zrobić ? i jak zrobić aby zapisywało o 24:00 ? 

Bo nie rozumiem tego punktu trochę

bez reklam

Opublikowano

Ok już zrozumiałem ten pkt, czyli żeby backup nastąpił o 24:00 muszę ustawić : 0 0 * * * sh /sciezka/do/pliku.sh  ?
Oraz  mam jeszcze pytanie dotyczące :

user $USER $PASS  czy mają zostać tutaj ze znaki $ ? czy ma to wyglądać tak :
user UŻYTKOWNIK HASŁO

 

oraz czy tutaj :

ZRODLOWYFOLDER='/home/'     ma zostać "ZRODLOWYFOLDER" ?

bez reklam

Opublikowano

Wszystko ustawiłem jak należy lecz nie kopiuje pliku ;/

Wyskakuje tylko takie coś : You have new mail in /var/mail/root

Oraz teraz wyskoczyło :

-bash: ./backup.sh: /bin/bash^M: bad interpreter: No such file or directory

 

Z czego sprawdzałem to nie mam nawet takiej lokalizacji w ftp

bez reklam

Opublikowano

Serwer ts3 stoi na VPS Linux i chciałem aby kopia tego pliku trafiała na mój komputer, czy tak działa skrypt, czy w inny sposób ?

bez reklam

Opublikowano

A może jakiś inny skrypt, który będzie zapisywać sam plik co 24h, w czym trzyma w sobie 5 ostatnich plików np:
 

ts3server.sqlitedb (27.04.2014)

ts3server.sqlitedb (28.04.2014)

ts3server.sqlitedb (29.04.2014)

ts3server.sqlitedb (30.04.2014)

ts3server.sqlitedb (31.04.2014)

 

I który będzie usuwać starsze i zamienia je na nowe ?  mam coś takiego :

#!/bin/bash
#Zmienne
ile=`ls -lt /data | wc -l`
ostatni=`ls -lt /data/ | tail -n 1 | awk '{ print $8 }'`
data=`date -R | awk -F" " '{print $2 $3 $4" "}'| cut -c1-9`
co="/root/serwer/ts3server.sqlitedb /root/serwer/backups"

logger OOOOOOOOOOOOOOOOOOOOOOOO
logger zaczynam wykonywac kopie

#Skrypt
if [ $ile = 6 ]
then
echo bede kasowac $ostatni
logger skasowalem $ostatni
rm -rf /root/serwer/backups/$ostatni
else
echo "nie masz jeszcze 5 kopii"
logger nie masz jeszcze 5 kopii
fi

mkdir /root/serwer/backups/$data
tar -zcf /tmp/kopia.tar.gz $co
mv /tmp/kopia.tar.gz /root/serwer/backups/$data/

#Koniec
logger zakonczylem prace programu
logger dostepne kopie po zakonczeniu pracy programu
logger `ls /root/serwer/backups`
logger OOOOOOOOOOOOOOOOOOOOOOOO

Lecz pojawia się błąd :

/bin/sh: root: command not found

Jak mogę to naprawić, oraz dobrze ustawić ?

bez reklam

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...