Uživatelské nástroje

Nástroje pro tento web


linux-hosts-backup

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revize Předchozí verze
Následující verze
Předchozí verze
linux-hosts-backup [2009/07/18 14:37]
petr
linux-hosts-backup [2013/08/06 21:41] (aktuální)
Řádek 1: Řádek 1:
 ====== Zálohování více hostů pomocí rsync ====== ====== Zálohování více hostů pomocí rsync ======
  
-Na zálohování více linux strojů jsem se rozhodnul, že bych mohl použít aplikace rsnyc. Uvidíme, jak se nám pro tuto věc bude hodit.+Na zálohování více linux strojů jsem se rozhodnul, že bych mohl použít aplikace rsnyc. Uvidíme, jak se nám pro tuto věc bude hodit. ​Naše požadavky jsou zálohovat více linux serverů pomocí ssh
  
 ===== Instalace rsync-e ===== ===== Instalace rsync-e =====
-Rsync určitě bude v každé distribuci linuxu. ​Kdyý ji ještě nemáme nainstalovanou,​ uděláme to. V Debianu : +Rsync určitě bude v každé distribuci linuxu. ​Když ji ještě nemáme nainstalovanou,​ uděláme to. V Debianu : 
 <​code>​ <​code>​
 apt-get install rsync apt-get install rsync
Řádek 10: Řádek 10:
 v Gentoo :  v Gentoo : 
 <​code>​ <​code>​
-emerge ​ rsync+emerge rsync
 </​code>​ </​code>​
  
-===== Nastavení Horde,​Horde-IMP ​===== +===== Přípravy před tvorbou skriptu ​===== 
-íslušných adresářích si okopírujeme soubory z distribuce do pracovních souborů:+Pro zálohování vytvoříme na zálohovacím serveru ssh klíče, abychom je mohli distribuovat na zálohované servery a zajistit tak vzdálené ​ihlašování pomocí klíčů, bez zadávání hesel. Pri generování ssh klíče zadáme heslo. Finta je v tom, že pomocí aplikace keychain jsme schopni uchovat po zadání hesla toto v paměti. Samozřejmě po restartu zálohovacího serveru už heslo není v paměti a **MUSÍ** se pro zálohování znovu zadat, jinak sckript čeká na heslo.
 <​code>​ <​code>​
-cd /var/www/localhost/htdocs/horde/config +ssh-keygen -t dsa 
-for f in *.dist ; do cp ${f} ${f/.dist} ; done +</code> 
-cd /var/www/localhost/htdocs/horde-imp/config +Přeneseme veřejný ssh klíč na vzdálený server a po přihlášené k serveru je přidáme do ssh klíčů, které bude akceptovat při vzdáleném připojení. Následně vyzkoušíme přihlášení. Vzdálený server bude vyžadovat pouze heslo k ssh klíči (Enter passphrase for key '/root/.ssh/id_dsa'​) 
-for f in *.dist ; do cp ${f} ${f/.dist} ; done+<​code>​ 
 +scp ~/.ssh/id_dsa.pub root@my-remote-server.com:​ 
 +ssh root@my-remote-server.cz 
 +cd .ssh 
 +touch authorized_keys2 
 +chmod 600 authorized_keys2 
 +cat ../id_dsa.pub >> authorized_keys2 
 +rm ../id_dsa.pub 
 +</code> 
 + 
 +V jiném terminálu ověříme : 
 +<​code>​ 
 +backup-server ~ # ssh root@my-remote-server.com 
 +Enter passphrase for key '/root/.ssh/id_dsa':​  
 +Last login: Sat Jul 18 15:14:10 2009 from lululala.domena.com 
 +remote-server1 ~ # 
 +</code> 
 +Takto přeneseme veřejný ssh klíč na všechny servery, ze kterých budeme pomocí rsync dělat zálohyCo s tím, když u každého serveru potřebujeme zálohovat / vynechat určité adresáře? K tomu využijeme u rsync aplikace vhodného přepínače --exclude-from.  
 + 
 + 
 +===== Keychain pro zadávání passphrase ===== 
 +Abychom mohli dát script ​do cron-u, musíme nějakým způsobem zajistit "​automatické"​ zadávání passphrase pro ssh klíč. Na to se nám bude hodit šikovná aplikace keychain. U uživatele root do .bash_profile přidáme následující :  
 +<​code>​ 
 +/​usr/​bin/​keychain ~/.ssh/​id_dsa 
 +# sourcing my hostname 
 +source ~/​.keychain/​$HOSTNAME-sh
 </​code>​ </​code>​
  
-V souboru horde-imp/​config/​servers.php nastavíme náš mailserver:+Následně se odhlásíme a přihlásímePři přihlášení se nás keychain zeptá na passphrase. Zadáme ji a máme ji v paměti. Tak a teď je ten okamžik, kdy už se můžeme s passphrase v paměti přihlásit ke vzdálenému serveru pomocí ssh a bez hesla dostaneme prompt :-) 
 <​code>​ <​code>​
-<?php +ssh root@my-remote-server.com
-$servers['​imap'​] = array( +
-    '​name'​ => 'IMAP Server',​ +
-    '​server'​ => '​localhost',​ +
-    '​hordeauth'​ => false, +
-    '​protocol'​ => '​imap/​ssl/​novalidate-cert',​ +
-    '​port'​ => 993, +
-    '​folders'​ => '​INBOX.',​ +
-    '​namespace'​ => '',​ +
-    '​maildomain'​ => '​mydomain.cz', +
-    '​smtphost'​ => '​localhost',​ +
-    '​smtpport'​ => 25, +
-    '​realm'​ => '',​ +
-    '​preferred'​ => '',​ +
-);+
 </​code>​ </​code>​
  
linux-hosts-backup.1247920650.txt.gz · Poslední úprava: 2013/08/06 21:39 (upraveno mimo DokuWiki)