Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: cron špatně zálohuje  (Přečteno 2585 krát)

campesino

  • Návštěvník
  • Příspěvků: 14
cron špatně zálohuje
« kdy: 04 Prosince 2010, 07:15:31 »
Dobrý den, pokoušel jsem se zavést automatické zálohy webu ze serveru Ubuntu 10.04 pomocí cron, který spouští skript. Pokud skript spustím ručně, jako root, záloha z adresáře /var/www se provede kompletně. Pokud stejný skript spustí cron, některé adresáře i soubory v záloze chybí.

crontab -e

Kód: [Vybrat]
# m h  dom mon dow   command
44 5 * * * /root/skripty/zaloha_www.sh

skript zaloha_www.sh:

Kód: [Vybrat]
#!/bin/sh
#databaze OK
mysqldump baroko -u baroko --password="xxxxxxxxxxxxxx" > /home/zaloha/zaloha_www/baroko.sql

#zkopirovani app baroko tako OK
cp -r /var/www/baroko /home/zaloha/zaloha_www

#pokud script provadi cron, jsou v archivu jen nektere
#adresare a soubory
tar -cvzf /home/zaloha/zaloha_www.tar.gz /home/zaloha/zaloha_www

chmod -R 666 /home/zaloha/zaloha_www


Děkuji za případné rady

petergula

  • Stálý člen
  • **
  • Příspěvků: 1016
Re: cron špatně zálohuje
« Odpověď #1 kdy: 04 Prosince 2010, 10:31:03 »
A ktore chybaju?
Kód: [Vybrat]
diff /var/www/baroko /home/zaloha/zaloha_www. Tie co chybaju maju nejake specialne prava/vlastnika? Skus si vystup cp presmerovat do suboru, ci tam nemas nejake chybove hlasky. Popr. skus cp s prepinacom -a. Nemas v zdroj. adresari aj sw/hw linky? ...
ntbk Dell 6420 (Amd Ati, Intel i7, 4GB RAM, 256GB SSD ...)
secondary/u svokrovcov:
Xubuntu (64bit) ntbk Asus A6Je (Ati X1450, Intel Core2Duo T5500, 2.5GB RAM ...)

jmp

  • Host
Re: cron špatně zálohuje
« Odpověď #2 kdy: 04 Prosince 2010, 12:07:55 »
mozna se mylim, ale mam dojem, ze v cronu nejsou definovane cesty (promenna PATH) - budto definujte cesty, nebo ve scriptu pouzivejte plne cesty k programum...

Tomáš Břinčil

  • Občanské sdružení Ubuntu ČR
  • Závislák
  • ***
  • Příspěvků: 1610
  • moje obrázky ↓
    • TomasBrincil.cz
Re: cron špatně zálohuje
« Odpověď #3 kdy: 04 Prosince 2010, 12:46:46 »
do crontabu přidáváš pod rootem?

petergula

  • Stálý člen
  • **
  • Příspěvků: 1016
Re: cron špatně zálohuje
« Odpověď #4 kdy: 04 Prosince 2010, 13:57:45 »
do crontabu přidáváš pod rootem?

To som chcel odhalit tym, ze co sa mu neskopiruje :)
Kód: [Vybrat]
crontab -e nastavuje crontab pre aktualneho uzivatela.
Kód: [Vybrat]
sudo crontab -e zasa pre roota
a pre system v /etc/crontab.

ntbk Dell 6420 (Amd Ati, Intel i7, 4GB RAM, 256GB SSD ...)
secondary/u svokrovcov:
Xubuntu (64bit) ntbk Asus A6Je (Ati X1450, Intel Core2Duo T5500, 2.5GB RAM ...)

Tomáš Břinčil

  • Občanské sdružení Ubuntu ČR
  • Závislák
  • ***
  • Příspěvků: 1610
  • moje obrázky ↓
    • TomasBrincil.cz
Re: cron špatně zálohuje
« Odpověď #5 kdy: 04 Prosince 2010, 14:43:55 »
sudo crontab -e

Kód: [Vybrat]
# m h  dom mon dow   command
* * * * * whoami >> /tmp/whoami.txt

pak mrkni co je v tom texťáku, bude tam user, pod kterým se to spustilo...

campesino

  • Návštěvník
  • Příspěvků: 14
Re: cron špatně zálohuje
« Odpověď #6 kdy: 04 Prosince 2010, 15:42:14 »
Děkuji všem za odpovědi, v adresáři /var/www/baroko je Joomla, v archivu chybí adresáře administrator, components a některé soubory, pokaždé je to ale trochu jinak - někdy chybí ještě další adresáře a soubory; řádky do crontab zadávám jako root (je to pronajatý virtuální server ubuntu 10.04, ale měli tam uživatele root, tak jsem to tak nechal (sudo nepoužívám); skript adresář /var/www/baroko nejprve zkopíruje do adresáře /home/zaloha/zaloha_www a ta kopie je vždy kompletní, ale selhává vytvoření archivu (zkoušel jsem i gzip -to dopadalo stejně).

Pokud ten zalohovaci skript spustím jako root přímo z konzole, tak je vše OK. Děkuji všem za typy.

campesino

  • Návštěvník
  • Příspěvků: 14
Re: cron špatně zálohuje
« Odpověď #7 kdy: 04 Prosince 2010, 15:52:22 »
Ještě jsem zapomněl: /tmp/whoami.txt : root

daysleeper

  • Stálý člen
  • **
  • Příspěvků: 1206
Re: cron špatně zálohuje
« Odpověď #8 kdy: 04 Prosince 2010, 17:57:53 »

Tomáš Břinčil

  • Občanské sdružení Ubuntu ČR
  • Závislák
  • ***
  • Příspěvků: 1610
  • moje obrázky ↓
    • TomasBrincil.cz
Re: cron špatně zálohuje
« Odpověď #9 kdy: 04 Prosince 2010, 18:44:25 »
heh ;D
k++;

Martin - ViPEr*CZ*

Re: cron špatně zálohuje
« Odpověď #10 kdy: 04 Prosince 2010, 20:18:42 »
Zajímavé... to je dobré vědět... já si dělal zálohovač v C++, tak tam jestli mám v parametr, tak to ani nepoznám... výstup si řídím sám v programu. Zajímavé čtení každopádně ;)
Open source is gold way... Mint 17.2, Debian 8.1 Jessie| Ubuntu Wiki (návody) | Google vyhledávač | Qt4 návody

daysleeper

  • Stálý člen
  • **
  • Příspěvků: 1206
Re: cron špatně zálohuje
« Odpověď #11 kdy: 04 Prosince 2010, 21:13:18 »
nejde prece o v parametr... jde o to, ze cron nezvlada urcitou delku vystupu z prikazu, cili je potreba ten vystup prip. nekam presmerovat... a taky v 10.10 uz by to melo byt opravene...

campesino

  • Návštěvník
  • Příspěvků: 14
Re: cron špatně zálohuje
« Odpověď #12 kdy: 04 Prosince 2010, 22:45:45 »
díky moc všem, bez parametru v to funguje OK

Martin - ViPEr*CZ*

Re: cron špatně zálohuje
« Odpověď #13 kdy: 05 Prosince 2010, 16:00:46 »
PS: jen se zeptám... s tím parametrem v... neházelo to náhodou chyby do syslogu? taktéž pokud funguje lokální doručování emailů nemá root nějaké emaily (čtou se příkazem mail)?
Open source is gold way... Mint 17.2, Debian 8.1 Jessie| Ubuntu Wiki (návody) | Google vyhledávač | Qt4 návody

hama4tux

  • Návštěvník
  • Příspěvků: 94
Re: cron špatně zálohuje
« Odpověď #14 kdy: 08 Prosince 2010, 10:52:50 »
Dobrý den, pokoušel jsem se zavést automatické zálohy webu ze serveru Ubuntu 10.04 pomocí cron, který spouští skript. Pokud skript spustím ručně, jako root, záloha z adresáře /var/www se provede kompletně. Pokud stejný skript spustí cron, některé adresáře i soubory v záloze chybí.

crontab -e

Kód: [Vybrat]
# m h  dom mon dow   command
44 5 * * * /root/skripty/zaloha_www.sh

skript zaloha_www.sh:

Kód: [Vybrat]
#!/bin/sh
#databaze OK
mysqldump baroko -u baroko --password="xxxxxxxxxxxxxx" > /home/zaloha/zaloha_www/baroko.sql

#zkopirovani app baroko tako OK
cp -r /var/www/baroko /home/zaloha/zaloha_www

#pokud script provadi cron, jsou v archivu jen nektere
#adresare a soubory
tar -cvzf /home/zaloha/zaloha_www.tar.gz /home/zaloha/zaloha_www

chmod -R 666 /home/zaloha/zaloha_www


Děkuji za případné rady

Ahoj co se toh cronu týče

Kód: [Vybrat]
44 5 * * * /root/skripty/zaloha_www.shtak zde máš chybku
Kód: [Vybrat]
44 5 * * * root /root/skripty/zaloha_www.shdále by neměl cron končit prázdným řádkem takže pro sichr
Kód: [Vybrat]
44 5 * * *  root /root/skripty/zaloha_www.sh
;

Ted spoustis script jako root a mel by ti skopirovat vse...

starenka

  • Stálý člen
  • **
  • Příspěvků: 1276
  • Karma: plynová [zapalovač] [hasičák]
    • /home/starenka
Re: cron špatně zálohuje
« Odpověď #15 kdy: 08 Prosince 2010, 20:48:48 »
ja bych ti jeste poradil, aby sis to root heslo dal nekam do promenny a souboru (samozrejme s prislusnejma pravama pro necteni mimo root napr.) a do tehle skriptu ho jen inkludnul (mimo jine docela prakticky, kdyz zmenis heslo - menis ho na jednom miste)

neco ala treba
Kód: [Vybrat]
kosmik2:~# cat /root/.scripts/add-user-db-mysql.sh
#!/usr/bin/env bash
#
# creates a mysql user w/ random pass &
# grants priviledges to new database w/ it's name
#
# @author starenka
# @since  04-01-2008
# @version 0.1
#

source /root/includes/mysql

if [ -z "$1" ]; then
    echo "O HAI! You haven't passed any argument user/db_name. Use the force, Luke!"
else
    echo 'generating pass....'
    UPASS=`python -c 'from random import choice;import string;print "".join([choice(string.letters+string.digits)
for i in range(20)])'`
    echo 'creating user and granting privileges....'
    echo "GRANT ALL ON $1.* to $1@localhost IDENTIFIED BY '$UPASS';" | mysql -uroot -p$ROOT_PASS                                                                
    echo 'creating db....'                                                                                                                                      
    echo "CREATE DATABASE $1 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci" | mysql -u$1 -p$UPASS                                                          
    echo                                                                                                                                                        
    echo "here's your cookie: mysql://$1:$UPASS@$1"
    echo
    echo "keep it safe, son!"
fi
mojenka | blozinek v2 | starej blozinek | krotim hady za penize | UJ! Kalužátor

Debian testing vrní v Thinkpadu X200/bedně/EEE 900a, MasoX Tiger v lampe

 

Provoz zaštiťuje spolek OpenAlt.