<?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>devzR &#187; Tutoriais</title>
	<atom:link href="http://devzr.gentoobr.org/category/tutoriais/feed/" rel="self" type="application/rss+xml" />
	<link>http://devzr.gentoobr.org</link>
	<description>Gentoosing</description>
	<lastBuildDate>Mon, 18 Jan 2010 11:14:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Mini-tutorial básico de Bash</title>
		<link>http://devzr.gentoobr.org/2009/09/15/mini-tutorial-basico-de-bash/</link>
		<comments>http://devzr.gentoobr.org/2009/09/15/mini-tutorial-basico-de-bash/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 14:39:56 +0000</pubDate>
		<dc:creator>devzr</dc:creator>
				<category><![CDATA[Tutoriais]]></category>

		<guid isPermaLink="false">http://devzr.gentoo-br.net/?p=139</guid>
		<description><![CDATA[Mini-tutorial de bash]]></description>
			<content:encoded><![CDATA[<p>Mini-tutorial de bash com algumas adições não relacionadas ao bash.</p>
<p>Veja ele neste <a href="http://docs.google.com/Doc?docid=0Ac-itERiO9RhZGRrcGZoamNfMjdkbjhxa2hncg&amp;hl=en">link</a>.</p>
<p>Aprenda comandos básicos de terminais em alguns minutos e no final do documento um pouco sobre instalação de programas pelo código fonte.</p>
]]></content:encoded>
			<wfw:commentRss>http://devzr.gentoobr.org/2009/09/15/mini-tutorial-basico-de-bash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gentoo/Funtoo + LVM2 + DM-Crypt</title>
		<link>http://devzr.gentoobr.org/2009/03/25/funtoo-lvm2-dm-crypt/</link>
		<comments>http://devzr.gentoobr.org/2009/03/25/funtoo-lvm2-dm-crypt/#comments</comments>
		<pubDate>Wed, 25 Mar 2009 18:52:18 +0000</pubDate>
		<dc:creator>devzr</dc:creator>
				<category><![CDATA[Gentoo/Funtoo]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[funtoo]]></category>
		<category><![CDATA[gentoo]]></category>
		<category><![CDATA[guia]]></category>

		<guid isPermaLink="false">http://devzr.gentoo-br.net/?p=25</guid>
		<description><![CDATA[Mini-guia para LVM2 + DM-Crypt no Gentoo/Funtoo]]></description>
			<content:encoded><![CDATA[<p>Para todos interessados em montar volume protegido (não vou citar os motivos o porque alguém iria querer &#8211; isso depende de quem quer fazer) vou escrever um pequeno guia que eu segui com informações sobre o que faz cada passo.</p>
<p>1. Particione seu disco de modo que sobre um grande bloco de de dados sem formatação, não se esqueça de deixar um pequeno espaço de fora para a partição do /boot que não pode ficar dentro do volume. (ou você pode colocar o /boot em um pendrive ou outro lugar de sua preferência)</p>
<p>Exemplo de layout de disco: /dev/sda &#8211; /dev/sda1 &#8211;&gt; /boot, /dev/sda2 &#8211;&gt; bloco não formatado (lvm)</p>
<p>2. Crie um &#8220;cofre&#8221; pra botar o seu volume, mas antes randomize os dados do seu disco (isso dificulta a descoberta dos seus dados dentro do volume)</p>
<blockquote><p>dd if=/dev/urandom of=/dev/sda2</p></blockquote>
<p>(fazer a randomização da partição é opcional &#8211; o comando acima usa o gerador pseudo-randômico usa /dev/urandom para gerar os dados para preencher o disco)</p>
<blockquote><p>cryptsetup -y &#8211;cipher aes-cbc-essiv:sha256 &#8211;key-size 256 luksFormat /dev/sda2</p></blockquote>
<p>(-y faz o programa cryptsetup pedir confirmação da senha, &#8211;cipher aes-cbc-essiv:sha256 expecifica o tipo de encriptação a ser usado, &#8211;key-size 256 especifica o tamanho da matriz usada para encriptação, luksFormat é o parametro para formatar a partição e /dev/sda2 é a partição)</p>
<blockquote><p>cryptsetup luksOpen /dev/sda2 cofre</p></blockquote>
<p>( luksOpen abre a partição para leitura e escrita, /dev/sda2 é a partição e cofre é o nome do dispositvo a ser gerado no /dev)</p>
<p>3. Crie o seu volume dentro dessa partição com encriptação:</p>
<blockquote><p>pvcreate /dev/mapper/cofre</p>
<p>vgcreate vol /dev/mapper/cofre</p></blockquote>
<p>(vol é o nome do volume a ser criado)</p>
<p>Agora crie suas partições dentro do volume que você geralmente usa:</p>
<blockquote><p>Exemplo: lvcreate -L TAMANHOG -n ROTULO vol</p>
<p>Veja as referências no final da página para mais informações.</p></blockquote>
<p>Depois de criado o seu layout das partições dentro do volume, formate como partições normais e faça a instalação normal do Gentoo/Funtoo.</p>
<blockquote><p>mkfs.tipo_fs /dev/mapper/vol-rotulo_da_particao</p></blockquote>
<p>4. Antes de acabar a instalação ainda restam algumas configurações:</p>
<p>Você vai precisar de sys-fs/lvm2 e sys-apps/busybox compilados com a useflag &#8220;static&#8221; para poder usa-los mais tarde no seu initramfs, entretanto você não deve usar o static como useflag global &#8211; isso poderia ter efeitos catastróficos &#8211; use o arquivo /etc/portage/package.use no lugar.</p>
<blockquote><p>package.use:<br />
sys-fs/lvm2 static<br />
sys-apps/busybox static</p></blockquote>
<p>Algumas configurações extras no kernel serâo necessárias também:</p>
<p>Device Drivers &#8211;&gt; Multiple device driver support (RAID and LVM) &#8211;&gt; Device Mapper Support</p>
<p>&#8211;&gt; Device Mapper Support &#8211;&gt; Crypt target support</p>
<p>5. Se o seu / (root) estiver dentro do volume você irá precisar de um initramfs &#8211; se você não estiver usando ele lá pule este passo, isto está fora do escopo deste guia. O initramfs é necessário para poder montar sua partição / (root) que está no seu volume, porém para fazer isso você precisa primeiro abrir o &#8220;cofre&#8221; e é exatamente isso que a initramfs vai fazer, abrir o cofre e montar suas partições de dentro do volume nos lugares certos.</p>
<blockquote><p>mkdir /tmp/initramfs<br />
cd /tmp/initramfs<br />
mkdir -p bin dev/mapper dev/vc etc newroot proc</p></blockquote>
<p>Depois de criado a estrutura do initramfs você ira preenche-la agora com os executáveis necessários para abrir o cofre, ativar os volumes e montá-los. (ATUALIZAÇÃO: aparentemente os novos pacotes do lvm2 estão provendo binário estático e shared ao mesmo tempo, então se usar a flag static você deve copiar o arquivo /sbin/lvm.static ao invés de/sbin/lvm, eu também notei que em algumas das versões novas o binário estático anda apresentando erros, se você tiver problemas tente versões mais antigas)</p>
<blockquote><p>cp /bin/busybox /sbin/cryptsetup /sbin/lvm bin<br />
(de acordo com slashbeast um colega de irc (veja o comentário abaixo), o passo de criar os links é desnecessário, vou manter este código por motivo de compatibilidade (busybox sabe gerar links automaticamente, mas nem sempre funciona como deveria))<br />
********<br />
ln -s busybox bin/cat<br />
ln -s busybox bin/loadkmap<br />
ln -s busybox bin/mount<br />
ln -s busybox bin/sh<br />
ln -s busybox bin/switch_root<br />
ln -s busybox bin/umount<br />
ln -s lvm bin/vgchange<br />
********</p></blockquote>
<p>E agora com toda a atenção você deve popular o seu diretório dev que devera conter os dispositivos (blocos de caractéres para acessar os discos) necessários para ativar o cofre.</p>
<blockquote><p>(Denovo, busybox já cuida disso, porém vou manter o código por motivos de compatibilidade)<br />
********<br />
cp -a /dev/console /dev/sda2 /dev/null dev<br />
********<br />
ln -s ../console dev/vc/0</p></blockquote>
<p>Este passo é opcional, porém recomendados, seguindo o próximo passo será possível carregar um mapa de teclado para facilitar a entrada da senha no boot que vem depois de o sistema estar pronto.</p>
<blockquote><p>mkdir /dev/vc<br />
ln -s ../console /dev/vc/0<br />
busybox dumpkmap &gt; etc/kmap-custom</p></blockquote>
<p>Agora para o initramfs funcionar será necessário um script que será rodado quando o initramfs for carregado pelo kernel:<br />
Abra com seu editor favorito de texto, e crie o arquivo init: (vim init)</p>
<blockquote><p>#!/bin/sh</p>
<p>mount -t proc proc /proc<br />
CMDLINE=`cat /proc/cmdline`</p>
<p># Espere até as saídas do kernel passarem para não cobrir o pedido de senha do cryptsetup<br />
sleep 3</p>
<p># Carregue o mapa do teclado<br />
loadkmap &lt; /etc/kmap-custom</p>
<p># Abra o cofre<br />
cryptsetup luksOpen /dev/sda2 cofre</p>
<p># Ative seus volumes<br />
vgchange -ay vol</p>
<p># monte o root na pasta newroot &#8211; lembre do label que voce botou na particao do root<br />
mount -r /dev/mapper/vol-root /newroot</p>
<p>umount /proc<br />
# passe o root temporário para o seu lugar<br />
exec /bin/busybox switch_root /newroot /sbin/init ${CMDLINE}</p></blockquote>
<p>Ponha o atributo executável no seu script de init:</p>
<blockquote><p>chmod a+x init</p></blockquote>
<p>Gere o initramfs a partir da pasta atual:</p>
<blockquote><p>find . | cpio &#8211;quiet -o -H newc | gzip -9 &gt; /boot/crypto.initramfs</p></blockquote>
<p>Está tudo pronto agora, instale o grub e o configure:</p>
<blockquote><p>root (hdx,x)<br />
kernel /boot/kernel<br />
initramfs /boot/crypto.initramfs</p></blockquote>
<p>Isso já deve ser o suficiente para poder entrar no seu Gentoo/Funtoo instalado no seu volume encriptado. Note que durante o boot será pedido a senha que você colocou no inicio deste guia, anote ela em algum lugar para não esquecer, senão você correrá riscos de perder seus dados para sempre.</p>
<p>Fontes:</p>
<p><a href="http://distrowatch.com/weekly.php?issue=20090309">1</a>, <a href="http://distrowatch.com/weekly.php?issue=20090316">2</a>, <a href="http://en.gentoo-wiki.com/wiki/DM-Crypt_with_LUKS">3</a>, <a href="http://en.gentoo-wiki.com/wiki/Root_filesystem_over_LVM2,_DM-Crypt_and_RAID">4</a>, <a href="http://tldp.org/HOWTO/LVM-HOWTO/">5</a> e <a href="http://tldp.org/HOWTO/LVM-HOWTO/lvm2faq.html">6</a>.</p>
<p>** Atualização: para aqueles que não estão conseguindo criar o seu próprio initram por causa do lvm2 ou algum outro erro, tente usar o meu que estou mantendo uma cópia aqui: <a href="http://dl.getdropbox.com/u/222135/initram.tar">link</a>).</p>
]]></content:encoded>
			<wfw:commentRss>http://devzr.gentoobr.org/2009/03/25/funtoo-lvm2-dm-crypt/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
