abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 02:55 | Nová verze

    Google Chrome 142 byl prohlášen za stabilní. Nejnovější stabilní verze 142.0.7444.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 20 bezpečnostních chyb. Za nejvážnější z nich bylo vyplaceno 50 000 dolarů. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    dnes 01:22 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 17:00 | Upozornění

    Národní identitní autorita, tedy NIA ID, MeG a eOP jsou nedostupné. Na nápravě se pracuje [𝕏].

    Ladislav Hagara | Komentářů: 4
    včera 16:44 | IT novinky

    Americký výrobce čipů Nvidia se stal první firmou na světě, jejíž tržní hodnota dosáhla pěti bilionů USD (104,5 bilionu Kč). Nvidia stojí v čele světového trhu s čipy pro umělou inteligenci (AI) a výrazně těží z prudkého růstu zájmu o tuto technologii. Nvidia již byla první firmou, která překonala hranici čtyř bilionů USD, a to letos v červenci.

    Ladislav Hagara | Komentářů: 4
    včera 14:11 | Komunita

    Po Canonicalu a SUSE oznámil také Red Hat, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    včera 13:55 | Nová verze

    TrueNAS (Wikipedie), tj. open source storage platforma postavená na Linuxu, byl vydán ve verzi 25.10 Goldeye. Přináší NVMe over Fabric (NVMe-oF) nebo OpenZFS 2.3.4.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | Nová verze

    Byla vydána OpenIndiana 2025.10. Unixový operační systém OpenIndiana (Wikipedie) vychází z OpenSolarisu (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Zajímavý článek

    České základní a střední školy čelí alarmujícímu stavu kybernetické bezpečnosti. Až 89 % identifikovaných zranitelností v IT infrastruktuře vzdělávacích institucí dosahuje kritické úrovně, což znamená, že útočníci mohou vzdáleně převzít kontrolu nad klíčovými systémy. Školy navíc často provozují zastaralé technologie, i roky nechávají zařízení bez potřebných aktualizací softwaru a používají k nim pouze výchozí, všeobecně známá

    … více »
    Ladislav Hagara | Komentářů: 10
    včera 05:11 | Komunita

    Během tradiční ceremonie k oslavě Dne vzniku samostatného československého státu (28. října) byl vyznamenán medailí Za zásluhy (o stát v oblasti hospodářské) vývojář 3D tiskáren Josef Průša. Letos byly uděleny pouze dvě medaile Za zásluhy o stát v oblasti hospodářské, druhou dostal informatik a manažer Ondřej Felix, který se zabývá digitalizací státní správy.

    🇹🇬 | Komentářů: 34
    včera 04:44 | Nová verze

    Tor Browser, tj. fork webového prohlížeče Mozilla Firefox s integrovaným klientem sítě Tor přednastavený tak, aby přes tuto síť bezpečně komunikoval, byl vydán ve verzi 15.0. Postaven je na Firefoxu ESR 140.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (36%)
     (48%)
     (20%)
     (19%)
     (23%)
     (17%)
     (21%)
     (17%)
     (17%)
    Celkem 282 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    29.4.2013 11:50 CandySan | skóre: 11 | blog: bonzacek
    Rozbalit Rozbalit vše Re: Linux KVM a zálohování virtuálních strojů s Windows
    Zdar,

    kdyz to mas v lvm, tak se ti muze hodit nasledujici zalohovaci script:
    #!/bin/bash
    
    # $0 {volume_group} {smazat_slozku_pripravy_zalohy}
    
    
    DESTINATION='/vmshadow'
    BACKUP_DIR="$DESTINATION/images"	# cilovy adresar zaloh
    VOLUME_GROUP=$1
    VG_PATH="/dev/"$VOLUME_GROUP
    CLEAR_BACKUP_DESTINATION=$2  		# 1 - smazat uloziste pred vytvorenim nove zalohy (default); 0 - nemazat a jen pripisovat
    LV_TMP_DEVICE='vmbackup'		# jmeno snapshotu
    LV_SNAPSHOT_SIZE='5G'			# velikosty snapshotu
    
    DUMP_DIR="$DESTINATION/domains"
    
    
    #
    # Zkontroluje zda logicky svazek smi byt zalohovan
    #
    # Vstupnim parametrem je nazev tesovaneho logickeho svazku
    #
    # Pokud ma byt vyrazen ze zalohovani, bude vracen kod 1
    #
    function skip_logical_volume {
    	PREFIX=${1:0:3}
    	if [ $PREFIX == "vm_" ]
    	then
    		return 0
    	else
    		echo "["`date`"] "" -- Ignoruji svazek $VOLUME_GROUP/$1 - nezacina prefixem \"vm_\" a tedy nesmi byt zalohovan"
    		return 1
    	fi
    }
    
    #
    # Prochazi logickymi svazky a zavola backup pokud neni svazku zakazan backup
    #
    function backup_logical_volumes {
    	for loc_lvolume in `ls $VG_PATH`; do
    		skip_logical_volume $loc_lvolume
    		if [ $? -eq 0 ]
    		then
    			# zaloha smi byt provedena
    			do_lvbackup $loc_lvolume
    		fi
    	done
    }
    
    #
    # Vytvori snapshot 
    #
    # Vstupnim parametrem je jmeno logickeho svazko jehoz snapshot se bude vytvaret
    #	
    function create_snapshot {
            loc_SUCCESS=''
    
            echo "["`date`"] ""lvcreate -L$LV_SNAPSHOT_SIZE -s -n $LV_TMP_DEVICE /dev/$VOLUME_GROUP/$1 2>&1'"
            for loc_LINE in "`lvcreate -L$LV_SNAPSHOT_SIZE -s -n $LV_TMP_DEVICE /dev/$VOLUME_GROUP/$1 2>&1`"; do
                    echo "["`date`"] ""$loc_LINE"
    
                    tmp_gline=`echo -n "$loc_LINE" | grep -E "created"`
                    if [ -n "$tmp_gline" ]
                    then
    
                            loc_SUCCESS='true'
                    fi
            done
    
            if [ -z "$loc_SUCCESS" ]
            then
                    echo "["`date`"] ""Error: nepodarilo se vytvorit snapshot $VOLUME_GROUP.$1! Koncim!"
                    exit 1
            fi
    
    }
    
    
    #
    # Odpoji SNAPSHOT_MOUNTPOINT a zrusi snapshot
    #
    function destroy_snapshot {
            loc_SUCCESS=''
    
            echo "["`date`"] Zaplneni snapshotu: "`lvs 2>&1 | grep $LV_TMP_DEVICE | awk '{print $6}'`'%'
    
            echo "["`date`"] ""lvremove -f /dev/$VOLUME_GROUP/$LV_TMP_DEVICE 2>&1"
            for loc_LINE in "`lvremove -f /dev/$VOLUME_GROUP/$LV_TMP_DEVICE 2>&1`"; do
                    echo "["`date`"] ""$loc_LINE"
    
                    tmp_gline=`echo -n "$loc_LINE" | grep -E "successfully removed"`
                    if [ -n "$tmp_gline" ]
                    then
    
                            loc_SUCCESS='true'
                    fi
            done
    
            if [ -z "$loc_SUCCESS" ]
            then
                    echo "["`date`"] "'Error: nepodarilo se odstranit snapshot!'
            fi
    }
    
    
    #
    # Vytvori dump logickeho svazku
    #
    function do_lvbackup {
    	echo -e "\n\n"
    	echo "["`date`"] ""Priprava zalohy svazku $VOLUME_GROUP/$1"
    
    	mkdir -p $BACKUP_DIR 2>&1
    
    	create_snapshot $1
    
    ##	echo "["`date`"] ""ionice -c 3 nice -n 19 dd if=$VG_PATH"/"$LV_TMP_DEVICE bs=100M 2>$BACKUP_DIR"/tmp_errout" | ionice -c 3 nice -n 19 gzip --fast -f -v -c >$BACKUP_DIR\"/\"$VOLUME_GROUP\".\"$1\".raw.gz\" 2>&1"
    ##	ionice -c 3 nice -n 19 dd if=$VG_PATH"/"$LV_TMP_DEVICE bs=100M 2>$BACKUP_DIR/tmp_errout | ionice -c 3 nice -n 19 gzip --fast -f -v -c >$BACKUP_DIR"/"$VOLUME_GROUP"."$1".raw.gz" 2>&1
    	echo "["`date`"] ""ionice -c 3 nice -n 19 dd if=$VG_PATH"/"$LV_TMP_DEVICE bs=100M 2>$BACKUP_DIR"/tmp_errout" | ionice -c 3 nice -n 19 gzip --fast -f -v -c >$BACKUP_DIR/$VOLUME_GROUP.$1.raw.gz 2>&1"
    	ionice -c 3 nice -n 19 dd if=$VG_PATH"/"$LV_TMP_DEVICE bs=100M 2>$BACKUP_DIR/tmp_errout | ionice -c 3 nice -n 19 gzip --fast -f -v -c >$BACKUP_DIR/$VOLUME_GROUP.$1.raw.gz 2>&1
    
    	cat $BACKUP_DIR"/tmp_errout"
    	rm $BACKUP_DIR"/tmp_errout"
    	loc_tmp_imgsize=`qemu-img info /dev/$VOLUME_GROUP/$1 | grep 'virtual size' | awk '{print $4}'`
    	loc_imgsize=${loc_tmp_imgsize:1}
    	loc_bckpsize=$(stat -c%s "$BACKUP_DIR/$VOLUME_GROUP.$1.raw.gz")"00"
    	
    	loc_cmpr=$(( $loc_bckpsize / $loc_imgsize ))
    	
    	echo "["`date`"] ""Velikost souboru po kompresi $loc_cmpr""%"
    
    	destroy_snapshot
    }
    
    #
    # Vytvori dump domeny (definice virtualni masiny)
    #
    function dump_domain {
            mkdir -p $DUMP_DIR 2>&1
            DOMAIN="$1"
            echo "["`date`"] Ukladam dump domeny $DOMAIN"
            virsh dumpxml "$DOMAIN" > "$DUMP_DIR/$DOMAIN.xml" 2>&1
    }
    
    function dump_all_domains {
    	i=0
    	for loc_domain in `virsh list --all | awk '{print $2}'`; do
            	if [ $i -ge 1 ]
    	        then
    	                dump_domain "$loc_domain"
    	        fi
    
    	        i=$((i+1))
    	done
    
    }
    
    
    #
    # Ukonci beh programu v pripade, ze probiha restaurovani diskoveho pole (aby nedoslo k pretizeni)
    #
    function exit_when_resync {
            tstresyncval=`grep resync /proc/mdstat`
            if [ -n "$tstresyncval" ]
            then
                    echo "["`date`"] Probiha restaurovani diskoveho pole!"
                    exit 1
            fi
    }
    
    
    
    ################---------------------------------####################
    
    if [ -z "$VOLUME_GROUP" ]
    then
    	echo "["`date`"] ""ERROR! Nebyla zadana skupina svazku! (VOLUME GROUP)"
    	exit 1
    fi
    
    exit_when_resync
    
    if [ "$CLEAR_BACKUP_DESTINATION" == "" ]
    then
    	# default hodnota je 1 (smazat)
    	CLEAR_BACKUP_DESTINATION=1
    fi
    
    if [ $CLEAR_BACKUP_DESTINATION -ne 0 ]
    then
    	# vycisteni slozky pro pripravu dat k zalohovani
    	echo "["`date`"] ""Mazu slozku pro pripravu zalohy"
    	echo "["`date`"] ""rm -rf $DESTINATION/*"
    	rm -rf $DESTINATION/* 2>&1
    fi
    
    echo "["`date`"] Backing up /etc"
    rsync -av /etc $DESTINATION 2>&1
    
    echo "["`date`"] Backing up /usr/local/bin"
    mkdir -p $DESTINATION/usr
    mkdir -p $DESTINATION/usr/local
    mkdir -p $DESTINATION/usr/local/bin
    rsync -av /usr/local/bin/* $DESTINATION/usr/local/bin 2>&1
    
    dump_all_domains
    
    backup_logical_volumes
    
    echo "["`date`"] ""Priprava zalohy dokoncena"
    
    musis mit nainstalovan i rsync. U me to slouzi k vytvoreni zalohy na lokalni disk, odkud si to jiny proces potom stahuje do zalohy a az tam nekde venku se provadi i rotace zaloh (pouzivam dirvish).

    Zavolas to takto: (mam to nazvane lvs_dump) lvs_dump {jmeno volume group} // takto se provede smazani tmp uloziste - pokud mas vic skupin, tak se to vola s parametrem 0 lvs_dump {jmeno prvni volume group} lvs_dump {jmeno volume group1} 0 lvs_dump {jmeno volume group2} 0 lvs_dump {jmeno volume group3} 0

    atd...

    Obcas se muze stat, ze shodis masinu zrovna kdyz mas vytvoreny snapshot a tak mam za to, ze je dobre behem bootovani kazdy snapshot zrusit (v te dobe je uz kazdy takovy zbytecny) a tak do /etc/rc.local (nebo jakkoliv po spusteni) jeste volam tento script:
    #!/bin/bash
    
    i=0
    for snapshot in `lvs 2>/dev/null | awk {'print $1'}`; do
    	if [ $i -gt 0 ]
    	then
    		tstsn=`lvs 2>/dev/null | grep "$snapshot" | awk {'print $5'}`
    		if [ -n "$tstsn" ] && [ "$snapshot" != "$tstsn" ]
    		then
    			vg=`lvs 2>/dev/null | grep "$snapshot" | awk {'print $2'}`
    			lvremove -f '/dev/'"$vg"'/'"$snapshot"
    		fi
    	fi
    
    	i=$((i+1))
    done
    

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.