SW pro zalohovani na disk
Jan Kasprzak
kas na fi.muni.cz
Pondělí Leden 17 23:59:02 CET 2005
Ing. Pavel PaJaSoft Janoušek wrote:
: Pokud budu synchronizovat do on-line compresses loop zařízení (i
: toto údajně lze, nepoužil jsem) tak je to řešitelné. Když ne, potřebuji
: pouze soubor tak velký jako partition, kterou hodlám odzálohovat, pak jej
: mohu zabalit dle potřeby (pravda, rozbalovat pouze nějaké soubory bude
: trošku problém - on-line zřejmě nad Bzip2 nepůjde přimountit) a těchto
: zabalených snapshotů mohu mít libovolný počet, pravda, nejsem schopen
: vytvořit inkrementální zálohu (ta se však s kompletní možností rekonstruovat
: systém zřejmě stejně neslučuje).
Jo, presne tak. Nemoznost vytvorit inkrementalni zalohu je problem.
Nechapu ale proc by inkrementalni zalohy mely byt nejak neslucitelne
s kompletni moznosti rekonstruovat system zamenou disku.
:
: > Neposkytuje to zalohu starsich verzi. Plytva to kapacitou disku.
: > cp -lR a rsync je fakt asi lepsi.
:
: Obávám se, že dostat do jednoho jednoduchého systému verzování verzí
: (resp. inkrementální zálohování), nejlépe kompletní snapshot systému (včetně
: boot loaderu - změnu/y poznám jak?), neplýtvat kapacitou (=> žádné
: redundantní informace) disků a nemít prostor pro "rozbalenou" zálohu je
: systém, který nelze dostat ani jednoduše vytvořit.
:-) Zkuste si precist manual k cp (prepinac -l a -R) a rsync
a jeho vztah ke zmenenym souborum.
:
: cp -lR a rsync - obádám se, že nesplňuje 50% požadavků (boot, plýtvání
: místem, verzování) a navíc nemá přidanou hodnotu oproti kopii via RAID.
: Nicméně Vaše finální řešení by mne taky zajímalo.
Vsechny tyto tri pozadavky to moje schema splnuje. Pokud nechapete,
tak zhruba takto (pisu z hlavy - nezkousel jsem - jen aby byl videt princip):
CHECK=c # nebo prazdny, pokud nechci kontrolovat i obsah souboru, ale jen mtime
set -e
mount /dev/backup_part /backup
NOW=`date +%s` # Kterou zalohu vytvarime ted
if [ "$PLNA_ZALOHA" != "Y" ]
then
# Promazeme stare symlinky
find /backup -mindepth 1 -maxdepth 1 -type l -print0 | xargs -0 rm -f
LAST=`ls /backup | tail -1` # posledni vytvorena zaloha
cp -lR /backup/$LAST /backup/$NOW # hardlinky stare zalohy
fi
rsync -aHSx$CHECK --exclude-from /etc/backup.exclude / /backup/$NOW
( cd /backup && find $NOW -mindepth 1 -maxdepth 1 -exec ln -s {} . \; )
grub <<EOF
root (hd1,0) # co odpovida /dev/backup_part
setup (hd1) # co odpovida disku na kterem je backup
EOF
# Tady jeste pripadne promazani hodne starych zaloh
umount /backup
Mam to i bootovatelne, i nekolik poslednich zaloh, i verzovani. Je na tom
neco nejasneho?
-Y.
--
| Jan "Yenya" Kasprzak <kas at {fi.muni.cz - work | yenya.net - private}> |
| GPG: ID 1024/D3498839 Fingerprint 0D99A7FB206605D7 8B35FCDE05B18A5E |
| http://www.fi.muni.cz/~kas/ Czech Linux Homepage: http://www.linux.cz/ |
> Whatever the Java applications and desktop dances may lead to, Unix will <
> still be pushing the packets around for a quite a while. --Rob Pike <
Další informace o konferenci Linux