
Gabriel Brooks
0
2293
709
Když jsme naposledy mluvili o zálohách WordPress, ukázal jsem vám, jak neuvěřitelně snadné bylo zálohovat celou databázi a soubory, i když SSH Jak zálohovat web pomocí příkazového řádku SSH Jak zálohovat web pomocí příkazového řádku SSH Zálohování vašich webových stránek nebo blogu být nákladný a namáhavý úkol, vyžadující řadu pluginů nebo další plány od vašeho poskytovatele hostingu - ale nemusí to tak být. Pokud máte SSH… s několika příkazy. Tentokrát ukážu, jak automatizovat tyto příkazy a každý týden vám poskytnu čerstvé zálohy celého vašeho webu s velmi malým úsilím. To také poslouží jako skvělý úvod do shellového skriptování a CRONu, pokud jste se jich nikdy předtím nedotkli - klíčem k učení takových obrovských témat je začít přímo tím, že je použijete pro něco užitečného pro vás.
Shrnutí: zálohujte vše
Pokryli jsme to naposledy, ale rychlé shrnutí dvou příkazů potřebných pro zálohování databáze a souborů, za předpokladu, že jste se již přihlásili a přesunuli se do adresáře webových stránek (přečtěte si první tutoriál, pokud tomu nerozumíte). Ujistěte se, že je provádíte v tomto pořadí, aby vaše záloha souboru obsahovala databázový soubor, který vydáte v prvním příkazu:
mysqldump - ad-drop-table -u uživatelské jméno -p databasename> databasebackup.sql tar -cf backupfile.tar .
Nahradit uživatelské jméno a jméno databáze položky s údaji o vaší databázi a uživatelském jménu.
První krok automatizace: Skriptování
Prozatím vytvoříme nový skript, který jednoduše spouští příkazy, které jste se naučili pro zálohování, s několika změnami, které zahrnují i heslo (protože to bude automatizované, nebude možné heslo zadávat pokaždé) ). Až skončíme, měli byste mít jen jeden příkaz ke spuštění, který provede dva příkazy!
Je to také o čase, kdy jste se naučili, jak upravovat textové soubory také pomocí příkazového řádku, protože se nemůžete vždy spolehnout na FTP a GUI. K tomu můžete použít jednoduchý textový editor s názvem vi.
Chcete-li spustit aplikaci a vytvořit první skript, zadejte:
vi mybackupscript.sh
Pokud soubor již neexistuje, bude vytvořen a zobrazí se vám spíše skličující obrazovka, jako je tato:
vi má dva režimy - režim úprav a příkazů. Chcete-li se dostat do režimu úprav, stiskněte tlačítko i. Poté můžete začít psát. Budete vědět, že to fungovalo, protože vlevo dole se změní na -INSERT-
Začněte zadáním následujícího:
#! / bin / sh mysqldump - ad-drop-table -uuživatelské jméno -strHeslo tablename > dbbackup.sql tar -cf backup.tar .
Všimněte si, že tentokrát zahrneme heslo do příkazu. Také si všimněte, že když použijeme přepínač -p ke specifikaci hesla, vložíme heslo hned za něj a mezi nimi není mezera. Pokud chcete, můžete místo toho napsat příkaz jako je tento, ale funkčně není žádný rozdíl:
#! / bin / sh mysqldump - ad-drop-table --user =uživatelské jméno --heslo =Heslo tablename > dbbackup.sql tar -cf backup.tar .
Teď to musíme uložit. Jedním stisknutím ESC se dostanete z režimu úprav do příkazového režimu textového editoru. Typ:
:napsat
a stiskněte klávesu enter
:přestat
a zadejte znovu.
Teď tedy zjistíte, že všem příkazům, které zadáte, musí předcházet dvojtečka. To je prozatím všechno s vi.
Zpět na příkazový řádek, pokračujte a vytvořte nový skript spustitelný zadáním následujícího:
chmod 744 mybackupscript.sh
A nakonec to vyzkoušejte pomocí:
./mybackupscript.sh
Je zřejmé, že v závislosti na velikosti vašeho webu a rychlosti vašeho serveru to může chvíli trvat. Na konci je seznam souborů a měli byste najít backup.tar. Na mém virtuálním soukromém serveru to trvalo asi 5 sekund, než vytvořil zálohu 100MB WordPress.
Druhý krok automatizace: CRON
CRON je plánovač úloh pro Linux. Nebudeme zde hlouběji pokrývat, ale dám vám, co potřebujete ke spuštění záložního skriptu každý týden. Pokryli jsme také, jak spouštět úlohy CRON z ovládacího panelu webové stránky založeného na GUI. Chcete-li přidat úkol do plánovače CRON, jednoduše do řádku přidejte řádek “crontab”. Upravte to zadáním:
crontab -e
Tím se v textovém editoru otevře soubor CRON, pravděpodobně znovu vi. Pokud jste ještě nic nepřidali, bude pravděpodobně také prázdné. Bez obav. Přidejte tyto řádky:
00 4 * * 0 /httpdocs/mybackupscript.sh
Formát, který následuje, je trochu obtížný, ale vypadá to takto:
minutová hodina den v měsíci měsíc v den v týdnu
A * ve vzoru tuto položku ignoruje. Ve výše uvedeném příkladu tedy spustíme záložní skript v 00 minutách 4 hodiny, každou 0 (neděli) v týdnu.
Zde je několik dalších příkladů, které vám pomohou porozumět:
01 * * * * echo "Tento příkaz se spouští každou minutu každou hodinu" 17 8 * * * echo "Tento příkaz se spouští denně v 8:17" 17 20 * * * echo "Tento příkaz se spouští denně v 8 : 17 hod. "00 4 * * 0 echo" Tento příkaz je spuštěn každou 4 neděli každou neděli "* 4 * * Ne. Echo" Tak je to "42 4 1 * * echo" Tento příkaz je spuštěn 4:42 každý první měsíc "01 * 19 07 * echo" Tento příkaz je spuštěn každou hodinu 19. července "
Jakmile to zadáte, uložte soubor stisknutím klávesy ESC, poté zadejte: write a poté: quit. Zkrácenou verzí tohoto je pouze napsat: wq, který zapíše soubor i skončí. Je to užitečné, ale pokud jste něco jako já, zapomenete tyto malé zkratky.
A je to! Nyní budete mít aktuální kopii své databáze a celého webu v kořenovém adresáři s názvem backup.tar (nebo cokoli, co jste se rozhodli pojmenovat). Možná se budete chtít dozvědět něco více skriptů, jak přidat datum na konec názvu souboru a vyhnout se přepsání stejného pokaždé, ale je na vás, abyste to objevili. Doufám, že uvidíte, jak mocný je příkazový řádek nyní!