<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Freedom Interface &#187; backup</title>
	<atom:link href="http://www.freedominterface.org/category/backup/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.freedominterface.org</link>
	<description>Pensamentos livres</description>
	<lastBuildDate>Thu, 27 Oct 2011 11:04:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>LVM2 Snapshot</title>
		<link>http://www.freedominterface.org/2010/07/06/lvm2-snapshot/</link>
		<comments>http://www.freedominterface.org/2010/07/06/lvm2-snapshot/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 17:36:39 +0000</pubDate>
		<dc:creator>Eduardo Ramos</dc:creator>
				<category><![CDATA[backup]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[utilidades]]></category>
		<category><![CDATA[virtualização]]></category>
		<category><![CDATA[curiosidade]]></category>

		<guid isPermaLink="false">http://www.freedominterface.org/?p=197</guid>
		<description><![CDATA[Nessas ultimas semanas andei procurando por uma solução eficiente para backups de discos, se possível, usando imagens. Eis que conheço o recurso de snapshot do LVM2. Ele é bastante fácil de usar, mas, é lógico, você precisa de uma partição no seu disco do tipo LVM, tipo 8e. Tendo isto em mãos, basta criar um [...]]]></description>
			<content:encoded><![CDATA[<p>Nessas ultimas semanas andei procurando por uma solução eficiente para backups de discos, se possível, usando imagens. Eis que conheço o recurso de snapshot do LVM2. Ele é bastante fácil de usar, mas, é lógico, você precisa de uma partição no seu disco do tipo LVM, tipo 8e.</p>
<p>Tendo isto em mãos, basta criar um grupo de volumes lógicos do tamanho desejado na nova partição LVM. Isso pode ser feito com o seguinte comando:</p>
<pre class="brush: bash; title: ; notranslate">vgcreate logical /dev/sdb1</pre>
<p>No meu caso, eu não especifiquei o tamanho máximo do grupo, portanto ele pega todo o espaço disponível em sdb1. A grosso modo, o grupo de volumes lógicos está para um disco físico assim como os volumes lógicos estão para as partições. A diferença é que a virtualização do disco permite um ambiente mais flexível e simples.</p>
<p>Com o grupo pronto, basta adicionar os volumes. Meu disco tem 80GB, e para teste vou gerar um volume de 10GB chamado <strong>teste</strong> no grupo <strong>logical</strong>:</p>
<pre class="brush: bash; title: ; notranslate">lvcreate -L10G -n teste logical</pre>
<p>Pronto! Agora pode verificar que existe um dispositivo de bloco criado em /dev/logical/teste. Ele representa o volume lógico. Ele se comporta como um dispositivo de bloco comum, e portanto, pode ser tratado como um. Para conseguir usar, esse volume precisa ser formatado. Eu costumo usar o raiserfs, mas pode ser usado ext3, ext4, xfs&#8230;</p>
<pre class="brush: bash; title: ; notranslate">
mkreiserfs /dev/logical/teste
mount -t reiserfs /dev/logical/teste /mnt/tmp
</pre>
<p>O volume agora pode ser usado normalmente. É só acessar o ponto de montagem /mnt/tmp. Com o ambiente todo pronto, agora vamos ao que interessa, o snapshot. Assumindo que o volume está em plena produção, vamos simular uma situação de backup online, que é a aplicação mais óbvia que vejo neste recurso. Para melhor entendimento, vamos analisando os passos seguintes:</p>
<pre class="brush: bash; title: ; notranslate">lvcreate -L 500M -s -n backup /dev/logical/teste</pre>
<p>Isso fará com que seja criado um volume lógico de 500MB, de nome backup e tipo snapshot do volume já existente /dev/logical/teste. O tamanho do snapshot é claramente menor que o volume original, e isso não está errado. No momento em que o snaphot é criado, o sistema &#8216;congela&#8217; o volume original para que possamos trabalhar com ele sem que haja alterações, e o tamanho do snapshot representa o volume de alterações que ele permitirá que o sistema em produção faça nesse volume sem que seja prejudicado. A grosso modo, é como se fosse um buffer de alterações, que são armazenadas sem serem efetivadas no volume original. Para aqueles que conhecem o sistema de arquivamento e hotbackup de SGBDs, é a mesma coisa.</p>
<p>Muitos dão exemplos de backups usando snapshots montando o volume snapshot e copiando os arquivos com <strong>cp</strong>, compactando com <strong>tar</strong> e <strong>gz</strong>, mas eu normalmente crio uma imagem completa com o <strong>dd</strong>. De qualquer forma, apresentarei ambos abaixo:</p>
<h3>Tar e gz</h3>
<pre class="brush: plain; title: ; notranslate">
mount -t reiserfs /dev/logical/backup /mnt/tmp0
tar cf ~/backup.tar.gz /mnt/tmp0
</pre>
<h3>dd</h3>
<pre class="brush: plain; title: ; notranslate">
dd if=/dev/logical/backup of=~/backup.img
</pre>
<p>Depois do backup, basta remover o snapshot que as alterações serão aplicadas.</p>
<pre class="brush: bash; title: ; notranslate">lvremove -f /dev/logical/backup</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.freedominterface.org/2010/07/06/lvm2-snapshot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

