Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Sunshine 14 Února 2010, 21:05:13
-
Dobrý den,
už si s tim nejakou dobu lamu hlavu a porad se mi ten script ne a ne dat dohromady, nedej boze aby fungoval... :-\ Takze bych vas chtel porposit jestli by mi ho nekdo nevytvoril...
Potreboval bych script, ktery by mi v urcitou dobu (rekneme 0:00), kazdy den vydumpoval z MySQL databazi characters, realmd, mangos a ulozil ji do /mangos/backup ve tvaru napriklad pro DB characters - characters_rrrr_mm_dd.sql a pojmenovaval to podle toho dne ve kterym to vydumpoval.
Jak rikam docela se s tim peru a porad nemuzu prijit jak na to, tak kdyby tu byl nekdo tak hodnej a pomohl mi.
-
na vytvorenie zalohy by ti mohlo stacit toto (+ podla tvojho prostredia uprav niektore interne hodnoty v scriptoch):
#!/bin/bash
mysqldump -u MYSQL_UZIVATEL -pHESLO_TOHO_MYSQL_UZIVATELA characters > /mangos/backup/characters_`date +%Y_%m_%d`.sql
mysqldump -u MYSQL_UZIVATEL -pHESLO_TOHO_MYSQL_UZIVATELA realmd > /mangos/backup/realmd_`date +%Y_%m_%d`.sql
mysqldump -u MYSQL_UZIVATEL -pHESLO_TOHO_MYSQL_UZIVATELA mangos > /mangos/backup/mangos_`date +%Y_%m_%d`.sql
a do /etc/crontab pridaj nasledovny riadok pre spustenie toho scriptu:
00 0 * * * root /NEJAKY_ADRESAR/TVOJ_SCRIPT > /dev/null 2>&1
-
Dobra, jak tak koukam proc to delat slozite, kdyz to jde jednoduse :P Jinak takovy hloupy dotaz, je potreba restartovat deamona, kdyz jsem ten script dal do crontabu normalne upravou soboru?
-
Pres crontab -e ? Není potřeba jak crona restartovat, tak samozřejmě mysql server což by byl nesmysl.
-
No tak uz od vcerejska zkousim, a porad mi nejak nefunguje ten cron... :( Kdzy pustim manualne backup.sh, tak mi to predpisove vydumpuje 3DB, tak jak je napsany, ale jak k tomu dma cron, tak uz se mu nechce. Zkousel jsme i ruzne varianty prikazu do cornu a i ruzna mista, ale porad beznadejne... Samozrejme CHMOD ten bash script ma 775 a vse je delane na rootovi...
Zkousel jsme do crontab dat prikaz, ktery mi tu postoval = bezvysledku, zkousel jsem i jine prikazy taky bez vysledku... :(
00 0 * * * root /mangos/deposit.sh > /dev/null 2>&1
30 14 * * * root /mangos/deposit.sh
Pak jsme koukal a zkusim moznost to dat do /etc/cron.d, vytvoril jsme tam novy soubor deposit a dal mu CHMOD na 664, zresetoval jsem crond... Zkousel jsem oba prikazy co jsem postoval a taky bezvysledne. Uz si nevim rady co s tim, patlam se tu uz od vcerejska, vykzkousel tunu moznosti a porad nic...
-
30 14 * * * root /mangos/deposit.sh
todle je ptákovina.. co to znamená root? tím chcete říct cronu, aby to spustil jako root?
sudo crontab -e přidáte úlohu do cronu a bude se spouštět pod rootem ;)
-
Ako bolo vyssie spomenute to root je tam navyse(spust sudo crontab -e a bude to spustane pod rootom, ak budes editovat pod inym uzivatelom, bude pustane pod nim). Example napr na http://adminschoice.com/crontab-quick-reference (http://adminschoice.com/crontab-quick-reference). Overenie je mozne cez sudo crfontab -l. Nie je nutne nic restartovat.