Linux Bash script pro zálohu na FTP

BlueDuna

Re: Linux Bash script pro zálohu na FTP
« Odpověď #15 kdy: 10. 11. 2010, 17:33:56 »
tar -czf $ZAL $DIR


BlueDuna

Re: Linux Bash script pro zálohu na FTP
« Odpověď #16 kdy: 10. 11. 2010, 17:36:34 »
tar -czf $ZAL $DIR

ee, jen promenne jsou nelogicky pojmenovane. Script je dobre

Re: Linux Bash script pro zálohu na FTP
« Odpověď #17 kdy: 10. 11. 2010, 19:34:09 »
A vyskusal ste ten skript ci funguje? Som si 100% isty, ze fungovat nebude. Snaci sa pozriet do manualu lftp a zistite preco

fotka

  • ***
  • 216
    • Zobrazit profil
    • Linux forum
    • E-mail
Re: Linux Bash script pro zálohu na FTP
« Odpověď #18 kdy: 10. 11. 2010, 19:44:12 »
jj, to LFTP je tam komplikované, nevim proč to nefunguje..
Linux nováček - CeskeForum.com

Re: Linux Bash script pro zálohu na FTP
« Odpověď #19 kdy: 10. 11. 2010, 19:48:55 »
Pozrite si co robi parameter -d a co tam dosadzujete vy


zzxx

Re: Linux Bash script pro zálohu na FTP
« Odpověď #20 kdy: 10. 11. 2010, 20:53:39 »
Tady je jednoduchý skript pro archivaci TAR GZIP do adresáře a odeslání na FTP!
Gzipuje se rovnou do www složky. Má CentOS defaultně přepsání již existujícího souboru?

Kód: [Vybrat]
#!/bin/bash
NICK="nick"
PASS="pass"
DEST="ftp.server.com"

DIR="/home/user/public_html/backups.tgz"
ZAL="/home/backups"

tar -czf $DIR $ZAL

chmod 644 $DIR
lftp -d $DEST -u $NICK,$PASS -e "put $DIR; quit"

echo "ZALOHA DOKONCENA"
PS: člověk, který to psal má Debian..

A podle doporučení od DeadMaila tento skript nechám vykonat každou neděli v 5:00..

crontab -e
0 5 * * 6 /etc/backup/backup.sh

rozumies tomu aspon trochu? Na tvojom mieste si urobim vlastny primitivny skript bez premenych a podobnych veci ale hlavne nech tomu rozumiem. obycajne prikazy zretazene v jednom skripte. Ak nerozumies lftp pouzi ineho ftp klienta.
To echo by som vyhodil lebo ti je nanic, ked to bude spustat cron.
Po dalsie, ten skript nieje nijako osetreny. Dal by som aspon za prikaz tar a chmod  &&  aby sa nasledujuci prikaz vykonal iba vtedy ak ten predosly skoncil uspesne viac tu - http://www.root.cz/clanky/hratky-z-radky-navratove-hodnoty/

tar -czf $DIR $ZAL &&
chmod 644 $DIR &&
lftp -d $DEST -u $NICK,$PASS -e "put $DIR; quit"

chmod ti urobi len vtedy ak uspesne zbali adresar
lftp spusti len vtedy ak sa uspesne zmenia prava

to lftp by malo vyzerat asi takto

lftp  -u $NICK,$PASS  $DEST -e "put $DIR; quit"


TkTz

Re: Linux Bash script pro zálohu na FTP
« Odpověď #21 kdy: 10. 11. 2010, 22:00:06 »
a co takhle neco overeneho. Ja pouziva jiz asi 6 let na dvou serverech toto : http://freshmeat.net/projects/plbackitup/

Vyzkousej, neni v bashi nybrz v perlu ale myslim, ze tve pozadavky hrave splni ... ma hodne konfiguracnich direktivit . Ja jsem naprosto spokojen.

David Strejc

Re: Linux Bash script pro zálohu na FTP
« Odpověď #22 kdy: 11. 11. 2010, 08:44:12 »
Jak jste tu psali - pan Fotka chce jen - "DO IT 4 ME FREE - I am so layzyyyy"

Pro me toto neni na 10 minut ale cca na 3.5 protoze to delam dnes a denne, ale psat mu to fakt nechci - stejne jako pro me lidi nechteli psat nic a ja se pred sesti lety vztekal proc a proc a proc to delaj. Nic bych neumel a mozna by ze me byl kvalitni SALESMAN :o)))

Pokud chce pan Fotka delat webhosting, tak mu doporucuju Virtualmina. Tam se takovyma nesmyslama nemusi vubec zabyvat.

Ale umet v shellu ... bez toho bych si ani nezavazal botu. To fakt nejde chtit delat s UN*X like OS a mit tam pustene KDE nebo Gnome a modlit se, ze to prece naklikam.

Ja vim - trva to dlouho - boli to, breci se u toho, kladivem se rozbiji stroje, prichazi se o disky a tak dale, ale nakonec to nejak jde ne? ;o))

A pak se treba toto

tar czvf $DST_FILE $SRC && scp -i key_file $DST_FILE user@dsthost:$DST_FOLDER && rm $DST_FILE && echo "Backup maybe done ;o)" | mail -s "Backup report" admin@srchost

pise docela rychle ne? ;o)

Samozrejme, ze to nesplnuje pozadavek na FTP, ale FTP ... je rekl bych docela mrtve. Vseobecne. Uz to neni tak trendy jako pred dvaceti lety ;o)

Kit

Re: Linux Bash script pro zálohu na FTP
« Odpověď #23 kdy: 11. 11. 2010, 12:47:01 »
David Strejc: Místo scp jsem se pro tyto účely naučil používat skvělý rsync. Ale to by pan Fotka musel slevit ze svého zastaralého FTP.

Kód: [Vybrat]
rsync -ae ssh $SRC user@dsthost:$DST_FOLDER
Se zbytkem souhlasím, až na to rozbíjení stroje. Ten za to chudák nemůže.

David Strejc

Re: Linux Bash script pro zálohu na FTP
« Odpověď #24 kdy: 11. 11. 2010, 13:02:55 »
:o))))

rsync ... rdiff-backup ... bacula (moloch ;o)) - naprosto cokoli.

Stroj - ja mysilm, ze vobcas tam ten permonik proste je. Staci prijit druhy den a pak zmizne. Ale vobcas - nikdo mi nenakeca, ze tam neni. Treba "obcasne" core-dump ... netusim. Jasne ze je to v rukach. Ale na nekoho se to svest musi.

Bez uceni se s UN*X like delat fakt neda. Naklikat se to taky neda. Bud se da brecet, ze to nejde, nebo googlit, nebo se to naucit a googlit ;o)

lime

Re: Linux Bash script pro zálohu na FTP
« Odpověď #25 kdy: 11. 11. 2010, 16:31:34 »
este nacitat vstupne parametre z nejakeho conf file ;) a ides ;)

cat /etc/zaloha.conf

DST_FILE=/home/zaloha/zaloha.tar.gz
SRC= /home/zaloha/
DST_FOLDER=/home/zaloha/

#!/bin/bash

CFGFILE=/etc/zaloha.conf

if [ ! -f $CFGFILE ]; then
  echo "No CONFIG file $CFGFILE!"
  exit 1
fi

. $CFGFILE


.......

David Strejc

Re: Linux Bash script pro zálohu na FTP
« Odpověď #26 kdy: 11. 11. 2010, 18:31:59 »
Ted uz by to mohl poskladat i deda mraz ;o)))

Ted uz je to vic puzzle nez cokoli jineho.

Peace 4 All.

--
UNIX LIVE FREE OR DIE

fotka

  • ***
  • 216
    • Zobrazit profil
    • Linux forum
    • E-mail
Re: Linux Bash script pro zálohu na FTP
« Odpověď #27 kdy: 14. 11. 2010, 10:52:51 »
Děkuji,
je to takto správně tedy kompletně?
Mělo by to mít i tu fukci aby to jak na ftp, tak na lokálním adresáři nahradilo tens tarý archiv z minulého týdne..

Kód: [Vybrat]
#!/bin/bash

tar -czf $DIR $ZAL &&
chmod 644 $DIR &&
lftp -d $DEST -u $NICK,$PASS -e "put $DIR; quit"
[/quote]

crontab -e
0 5 * * 6 /etc/backup/backup.sh


Děkuji,
F.
Linux nováček - CeskeForum.com

cl1d3

Re: Linux Bash script pro zálohu na FTP
« Odpověď #28 kdy: 14. 11. 2010, 13:20:58 »
Děkuji,
je to takto správně tedy kompletně?
Mělo by to mít i tu fukci aby to jak na ftp, tak na lokálním adresáři nahradilo tens tarý archiv z minulého týdne..

Kód: [Vybrat]
#!/bin/bash

tar -czf $DIR $ZAL &&
chmod 644 $DIR &&
lftp -d $DEST -u $NICK,$PASS -e "put $DIR; quit"
[/quote]

crontab -e
0 5 * * 6 /etc/backup/backup.sh


Děkuji,
F.

Niesom si istý či by to skôr nemalo byť ...

...

tar -czf $ZAL $DIR &&
chmod 644 $ZAL &&
lftp -d $DEST -u $NICK,$PASS -e "put $ZAL; quit"

...

fotka

  • ***
  • 216
    • Zobrazit profil
    • Linux forum
    • E-mail
Re: Linux Bash script pro zálohu na FTP
« Odpověď #29 kdy: 20. 11. 2010, 03:01:26 »
Ahoj, to jsem zase já.

Vyzkoušel jsem tedy ten skript podle cl1d3
Citace
#!/bin/bash
tar -czf /home/user/public_html/domeny/domena/backups.tgz /home/backups &&
chmod 644 /home/user/public_html/domeny/domena/backups.tgz &&
lftp -d ftp.server.cz -u usernamekftpserveru,heslokftpserveru -e "put
/home/user/public_html/domeny/domena/backups.tgz; quit"
A spustil jsem to: sh b.sh:

a vyhodilo to postupně toto:
Citace
tar: Removing leading `/' from member names
tar: /home/backups/cpbackup/weekly/dirs/_var_lib_mysql_/mysql.sock: socket ignored

Potom se mi to podařilo přerušit takže nevím zbytek. Chci se Vás ale zeptat jestli nevadí to lomítko a jak udělat aby se zabalil i ten mysql.sock? To je myslim nějaká potvora..

A ještě.. protože se to spouští pod rootem ten skript tak to vytvoří ten archiv s právy root a skupinou root do adresáře jiného uživatele. Takový soubor pak nejde stánout přes prohlížeč. Jak donutím ten TAR aby nastavil automaticky správná práva pro ten soubor? Jde to aniž bych dal do skriptu chown user:user backups.tgz ?

díky, F.
« Poslední změna: 20. 11. 2010, 03:26:55 od fotka »
Linux nováček - CeskeForum.com