<?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>Rafael Cambuí</title>
	<atom:link href="http://www.gilix.com.br/rafael_cambui/wordpress_2.7/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7</link>
	<description>Desenvolvimento web &#38; Coluna Informativa</description>
	<lastBuildDate>Tue, 27 Jul 2010 14:06:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Consultando LDAP com PHP</title>
		<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2010/07/27/consultando-ldap-com-php/</link>
		<comments>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2010/07/27/consultando-ldap-com-php/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 14:01:53 +0000</pubDate>
		<dc:creator>Rafael</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Php + Mysql]]></category>
		<category><![CDATA[css + js]]></category>
		<category><![CDATA[a]]></category>
		<category><![CDATA[adp]]></category>
		<category><![CDATA[ad_pgp]]></category>
		<category><![CDATA[b]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[d]]></category>
		<category><![CDATA[e]]></category>
		<category><![CDATA[f]]></category>
		<category><![CDATA[g]]></category>
		<category><![CDATA[h]]></category>
		<category><![CDATA[i]]></category>
		<category><![CDATA[j]]></category>
		<category><![CDATA[k]]></category>
		<category><![CDATA[l]]></category>
		<category><![CDATA[LDAP]]></category>
		<category><![CDATA[ldap_php]]></category>
		<category><![CDATA[m]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[n]]></category>
		<category><![CDATA[o]]></category>
		<category><![CDATA[p]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[q]]></category>
		<category><![CDATA[r]]></category>
		<category><![CDATA[s]]></category>
		<category><![CDATA[t]]></category>
		<category><![CDATA[u]]></category>
		<category><![CDATA[v]]></category>
		<category><![CDATA[x]]></category>
		<category><![CDATA[z]]></category>

		<guid isPermaLink="false">http://www.gilix.com.br/rafael_cambui/wordpress_2.7/?p=161</guid>
		<description><![CDATA[&#60;?php // Variaveis Globais $ldap_server = "seudominio.com.br"; /*Usamos o nome do dominio ou o nome do Servidor do dominio Casa seja 1 servidor Apenas*/ $dominio = "seudominio\\"; /*Aqui usaremos o nome Netbios do dominio*/ // Usuario para autenticacao na Base LDAP $auth_user = "seudominio\usuario_de_consulta"; /*nome Netbios\usuario*/ $auth_pass = "senha_do_usuario"; /*Senha do usuario do dominio*/ // [...]]]></description>
			<content:encoded><![CDATA[<pre class="php" style="border: 1px solid #d0d0d0; color: #000066; background-color: #f0f0f0;">&lt;?php
// Variaveis Globais
$ldap_server = "seudominio.com.br";
/*Usamos o nome do dominio ou o nome do Servidor do dominio Casa
seja 1 servidor Apenas*/
$dominio = "seudominio\\"; /*Aqui usaremos o nome Netbios do dominio*/

// Usuario para autenticacao na Base LDAP
$auth_user = "seudominio\usuario_de_consulta";
/*nome Netbios\usuario*/

$auth_pass = "senha_do_usuario";
/*Senha do usuario do dominio*/

// Caminho LDAP do Dominio
$base_dn = "OU=DOMINIO,DC=seudominio,DC=com,DC=br";
/*Nome do Dominio completo + OU principal*/

// Caminho LDAP do Grupo para consulta
$filter = "(&amp;(objectClass=user)(memberOf=CN=grupo,OU=ou_do_grupo,
OU=ou_principal,DC=seudominio,DC=com,DC=br))";

//Funcao para conectar na base LDAP listar os usuarios de um grupo.

if (($connect=@ldap_connect($ldap_server))) {
 if (($bind=@ldap_bind($connect, $auth_user, $auth_pass))) {
 if (($search=@ldap_search($connect, $base_dn, $filter))){
 $number_returned = ldap_count_entries($connect,$search);
 $info = ldap_get_entries($connect, $search);

   for ($i=0; $i &lt; $info["count"]; $i++){

     $user_pure = $info[$i]["samaccountname"][0];
     $user_up = strtoupper($user_pure);
     echo "Ususario - $user_up&lt;br&gt;";
   }

 }

 }

}
// Fecha a conexao LDAP.
ldap_close($connect);
?&gt;

Fonte: www.revistaphp.com.br</pre>
<p><strong>Mais informações sobre AD:<br />
</strong>http://www.learnthat.com/Software/learn/1295/Introduction-to-Active-Directory/</p>
<p><strong>Abaixo uma breve descrição das variáveis:</strong><br />
$ldap_server -&gt; essa variavel deve apontar para o servidor Active Directory, que pode ser preenchida com um nome FQDN ou o IP do servidor, ou seja, será a base onde consultaremos o(s) usuário(s).</p>
<p>$dominio -&gt; essa variável deve conter o nome NETBIOS do domínio que é o nome curto do domínio do seu Active Directory. Suponhamos que seu domínio fosse phpldap.com.br , o nome curto(NETBIOS) para esse domínio seria phpldap que atribuímos a variável ‘$dominio’.</p>
<p>$auth_user -&gt; esse variável deve conter o nome de um usuário existente na base do Active Diretory. Suponhamos que você tenha na sua base o usuário ‘teste’, nesse caso usando o exemplo acima com o nome do domínio phpldap a variável seria preenchida assim ‘phpldap\teste’. Esse usuário serva para se conectar a base de dados.<br />
$auth_pass -&gt; essa variável deve ser preenchida com a senha do usuário teste do Active Directory, conforme exemplo acima.</p>
<p>$base_dn -&gt; usando o exemplo do domínio phpldap.com.br essa variável ficaria da seguinte forma ‘OU=phpldap,DC=phpldap,DC=com,DC=br’.</p>
<p>$filter -&gt; deve ser preenchida com o caminho LDAP completo do grupo no qual você deseja pesquisar os usuários.</p>
<p>Obs: o código acima consulta usuários na base de dados de um servidor Active Directory, e também pode ser adaptado para consultar usuários em uma base de dados OPENLDAP.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2010/07/27/consultando-ldap-com-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Entendendo as Expressões Regulares</title>
		<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2010/03/25/entendendo-as-expressoes-regulares/</link>
		<comments>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2010/03/25/entendendo-as-expressoes-regulares/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 16:31:53 +0000</pubDate>
		<dc:creator>Rafael</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Php + Mysql]]></category>
		<category><![CDATA[css + js]]></category>
		<category><![CDATA[expressões regulares]]></category>

		<guid isPermaLink="false">http://www.gilix.com.br/rafael_cambui/wordpress_2.7/?p=152</guid>
		<description><![CDATA[Prefácio E o assunto hoje é Expressões Regulares! Com algumas vasculhadas pela internet podemos encontrar inúmeras definições para expressões regulares, porém, vou ficar com a da Wikipédia de lingua portuguesa. Uma expressão regular, na Informática, define um padrão a ser usado para procurar ou substituir palavras ou grupos de palavras. É um meio preciso de [...]]]></description>
			<content:encoded><![CDATA[<p><script src="js/mootools.js" type="text/javascript"></script><br />
 <script src="js/code.js" type="text/javascript"></script></p>
<p><!-- div.code{ 		border:1px solid #000; 		border-left:8px solid #000; 		padding:8px; 		background-color:#ccc; 	} --></p>
<div id="geral">
<div id="conteudo">
<div class="post">
<div>
<h3 class="tituloArtigo">Prefácio</h3>
<p>E o assunto hoje é Expressões Regulares!</p>
<p>Com algumas vasculhadas pela internet podemos encontrar inúmeras definições para expressões regulares, porém, vou ficar com a da Wikipédia de lingua portuguesa.</p>
<div class="code">Uma expressão regular, na Informática, define um padrão a ser usado para procurar ou substituir palavras ou grupos de palavras. É um meio preciso de se fazer buscas de determinadas porções de texto.</p>
<p>Por exemplo, se o conjunto de palavras for {asa, carro, jardim, ovos, terra} e a expressão regular buscar por um padrão rr, obterá as palavras carro e terra.<br />
Existem diferentes formatos para definir-se expressões regulares, porém com algumas noções gerais é possível entender boa parte das expressões.</p>
</div>
<p>Fonte: Wikipédia &#8211; Expressão Regular</p>
<h3 class="tituloArtigo">Conceito</h3>
<p>As Expressões Regulares (ER, Ereg ou RegEx &#8211; para os mais íntimos), então, são um método rápido e simples de manipulação e combinação avançada de strings.</p>
<p>Vamos partir do princípio! Uma expressão regular é essencialmente um padrão. É com base nesse padrão que a expressão em questão será avaliada. Primeiro vamos aprender a sintaxe das expressões para depois aprender como fazê-las funcionar&#8230;</p>
<h3 class="tituloArtigo">Operador ^</h3>
<p>Este é o primeiro operador que vamos aprender. O ^ indica que a expressão deve iniciar com a string dada.</p>
<div class="code">^era</div>
<p>Esta sintaxe irá definir que a string dada deverá começar com &#8216;era&#8217;. No caso, &#8220;era uma vez&#8221; seria uma string concordante. Porém, se você tentar &#8220;Ele era triste&#8221;, não obterá sucesso.</p>
<h3 class="tituloArtigo">Operador $</h3>
<p>Já que temos o operador para definir o começo, temos que ter um para definir o final também! Com $ nós definimos a string que deverá conincidir com o final.</p>
<div class="code">fim$</div>
<p>Esta sintaxe irá definir que a string dada deverá terminar com &#8216;fim&#8217;. Tentando validar a string &#8220;E nunca terá fim&#8221; obteremos sucesso, o que não acontecerá com a string &#8220;O fim está próximo&#8221;.</p>
<h3 class="tituloArtigo">Caracteres em Branco e Caracteres de Escape</h3>
<p>Assim como no PHP, em expressões regulares nós temos também que nos utilizar de caracteres de escape, a saber: barra invertida (\).</p>
<p>Segue, então, a lista com os caracteres de espaço em branco e alguns caracteres que necessitam de escape.</p>
<div class="code">\t     &#8211; Caracter de tabulação</p>
<p>\n     &#8211; Nova linha<br />
\f     &#8211; Avanço de página<br />
\r     &#8211; Retorno de carro</p>
<p>\.     &#8211; Qualquer caractere<br />
\\     &#8211; Uma barra invertida literal<br />
\-     &#8211; Um hífen literal</p>
</div>
<p>&#8230; e com alguma garimpada pela rede você consegue encontrar uma lista mais completa!</p>
<h3 class="tituloArtigo">Classes de Caracteres</h3>
<p>Classes de caracteres são uma espécie de grupo que contêm todas as ocorrências que deverão (ou não deverão) constar em uma expressão&#8230;</p>
<p>Por exemplo&#8230; Para permitir apenas letras vogais, usaríamos:</p>
<div class="code">[AaEeIiOoUu]</div>
<p>Então com este código teríamos um padrão que só permitirá que apenas vogais estejam na string dada.</p>
<p>Vamos agora aprender intervalo de caracteres</p>
<div class="code">[a-z]     &#8211; Qualquer letra minúscula<br />
[A-Z]     &#8211; Qualquer letra maiúscula<br />
[a-zA-Z] &#8211; Qualquer letra maiúscula ou minúscula<br />
[0-9]      &#8211;  Qualquer número</p>
<p>[0-9\.\-] &#8211; Qualquer número, ponto ou sinal de subtração</p>
</div>
<p>Bom&#8230; Tudo muito legal, muito simples&#8230; Mas isto serve apenas para combinação de UM caractere.</p>
<div class="code">^[a-z][0-9]$</div>
<p>Neste caso teríamos uma expressão de apenas dois caracteres em que o primeiro tem necessariamente que ser uma letra minúscula e o segundo ser um número.</p>
<p>Agora vamos aprender outra função para o operador ^! Fora de uma classe de caracteres, ele serve para demonstrar o que deve haver no início, porém dentro, ele serve para mostrar o que não deve ocorrer.</p>
<div class="code">^[^0-9][0-9]$</div>
<p>Aqui nós definimos que a expressão deve começar com um caractere que não seja um número e seja imediatamente seguido por um caractere que será um número!</p>
<h3 class="tituloArtigo">Classes de Caracteres Pré-definidas</h3>
<p>Para evitar chateação, foram criadas as classes de caracteres pré-definidas que já vêm junto com o interpretador de ER que você estiver utilizando (lembrando que estão presentes apenas no método POSIX).</p>
<div class="code">[[:alpha:]] // Qualquer letra (alfabético)</p>
<p>[[:digit:]] // Qualquer número (dígito)<br />
[[:alnum:]] // Qualquer letra ou número (alfanumérico)<br />
[[:space:]] // Qualquer caractere de espaço<br />
[[:upper:]] // Qualquer letra maíuscula<br />
[[:lower:]] // Qualquer letra minúscula</p>
<p>[[:punct:]] // Qualquer caractere de pontuação<br />
[[:xdigit:]] // Qualquer dígito hexadecimal (Equivalente a: [0-9a-fA-F])</p>
</div>
<h3 class="tituloArtigo">Ocorrências Múltiplas</h3>
<p>Agora vamos pra parte em que realmente começa a fazer sentido usar-se expressões regulares.</p>
<div class="code">^[[:alpha:]]{3}$ // Qualquer palavra de três letras</p>
<p>^a{4}$ // Só fecha com a expressão &#8216;aaaa&#8217;<br />
^a{2,4}$ // Fecha com &#8216;aa&#8217;, &#8216;aaa&#8217; e &#8216;aaaa&#8217;<br />
^a{2,}$ // Fecha com &#8216;aa&#8217;, &#8216;aaa&#8217;, &#8216;aaaa&#8217;, &#8216;aaaaa&#8217; e assim por diante</p>
</div>
<p>Até aqui&#8230; Tudo tranquilo? Então vamos em frente!</p>
<p>Há outros modos de representar a repetição de caracteres!</p>
<div class="code">?     &#8211; Uma ocorrência ou nenhuma (Equivale a {0,1})<br />
*     &#8211; Nenhuma ocorrência, uma ocorrência, duas ocorrências e por aí vai (Equivale a {0,})<br />
+     &#8211; Uma ou mais ocorrências (Equivale a {1,})</div>
<p>Se até aqui foi tudo tranqüilo, estamos muito bem! <img src='http://www.gilix.com.br/rafael_cambui/wordpress_2.7/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Vamos então para o tópico final de expressões regulares</p>
<h3 class="tituloArtigo">Alternação e Parênteses</h3>
<p>A alternação se baseia no caractere de &#8220;pipe&#8221;, o famoso |. Ele é bem parecido com o operador lógico OR. Por exemplo&#8230;</p>
<div class="code">r|s é equivalente a [rs]</div>
<p>Para caracteres simples é com certeza mais conveniente utilizar as classes. A alternação é basicamente útil para utilizar alternância de palavras.</p>
<div class="code">João|Maria|José</div>
<p>Esta expressão só irá retornar verdadeiro se a string dada for &#8220;João&#8221; OU &#8220;Maria&#8221; OU &#8220;José&#8221;.</p>
<p>Agora vamos aos parênteses. Eles tem uma função muito importante.<br />
Caso você utilize</p>
<div class="code">feliz+</p>
<p>Somente fecharia com:<br />
feliz</p>
<p>felizz<br />
felizzz<br />
felizzzz<br />
&#8230;</p>
</div>
<p>Porém com os parênteses, temos um jeito mais interessante de interar com palavras repetidas.</p>
<div class="code">(feliz)+</p>
<p>Irá fechar com:<br />
feliz<br />
felizfeliz<br />
felizfelizfeliz<br />
&#8230;</p>
</div>
<p>Quando utilizados em conjunto, obtemos bastante flexibilidade para nossas expressões regulares.</p>
<div class="code">(fel|g|aprend)iz</p>
<p>Irá fechar com:<br />
feliz<br />
giz<br />
aprendiz</p>
<p>&#8212;&#8212;&#8212;&#8211;<br />
João|Maria$     &#8211; Fecha com &#8216;João&#8217; em qualquer parte da string ou com &#8216;Maria&#8217; no final</p>
<p>(João|Maria)$   &#8211; Fecha tanto com &#8220;João&#8221; quanto &#8220;Maria&#8221;, porém, no final da string<br />
([ab])([xy])    &#8211; Fecha com &#8216;ax&#8217;, &#8216;ay&#8217;, &#8216;bx&#8217; e &#8216;by&#8217;</p>
</div>
<p>E fim de papo!</p>
<h3 class="tituloArtigo">Utilizando expressões regulares no PHP</h3>
<p>Agora que já aprendemos essa porrada de regras, temos que saber como aplicá-las! (Lembrando que este é o método POSIX. Caso você vá utilizar ER em outra linguagem, pode ter de fazer algumas adaptações)</p>
<h3 class="tituloArtigo">ereg() e eregi()</h3>
<p>Vou ensinar apenas essas duas&#8230; Caso você queira se aprofundar mais, olhe no manual do php no capitulo de expressões regulares! <img src='http://www.gilix.com.br/rafael_cambui/wordpress_2.7/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>int ereg(string padrão, string fonte [, array registro]);</p>
<p>Esta função retorna TRUE se o padrão dado for encontrado na fonte e FALSE caso contrário.</p>
<div id="cop_3c4dfde4b117419f7e08f6a4de3ad9267f524c5f" class="copia"><code><span style="color: #000000;"></p>
<p><span style="color: #0000bb;">&lt;?php</span></p>
<p>$email</p>
<p></span><span style="color: #007700;">= </span><span style="color: #dd0000;">'mario@gmail.com'</span><span style="color: #007700;">;</p>
<p></span><span style="color: #0000bb;">$padrao </span><span style="color: #007700;">= </span><span style="color: #dd0000;">"^(.+)@(.+)\.(.+)$"</span><span style="color: #007700;">;</p>
<p>if (</p>
<p></span><span style="color: #0000bb;">ereg</span><span style="color: #007700;">(</span><span style="color: #0000bb;">$padrao</span><span style="color: #007700;">,</span><span style="color: #0000bb;">$mail</span><span style="color: #007700;">)) {</p>
<p>print</p>
<p></span><span style="color: #dd0000;">'Seu email passou na validacao'</span><span style="color: #007700;">;</p>
<p>}</p>
<p>else {</p>
<p>print </span><span style="color: #dd0000;">'Seu email nao passou na validacao'</span><span style="color: #007700;">;</p>
<p>}</p>
<p></span><span style="color: #0000bb;">?&gt;</span></p>
<p></code></div>
<p>O que temos?<br />
A string dada deverá começar com algum caractere qualquer em qualquer quantidade, seguido de uma arroba, seguido de mais qualquer caractere em qualquer quantidade, seguido de um ponto literal, seguido de mais qualquer sequência de caracteres, que deverão então finalizar a string.</p>
<p>A função eregi() se comporta de modo semelhante, porém não diferencia maiúsculas e minúsculas.</p>
<h3 class="tituloArtigo">Conclusão</h3>
<p>O mundo das expressões regulares é muito grande e abrangente. Com certeza não vai ser com essa passada de olho que você vai se tornar um expert em ER, mas serve pra dar uma noção do que elas são e para que servem!</p>
<p>Fonte: www.phphit.com.br</p>
</div>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2010/03/25/entendendo-as-expressoes-regulares/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Configurando 3g no Mikrotik</title>
		<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/10/16/configurando-3g-no-mikrotik/</link>
		<comments>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/10/16/configurando-3g-no-mikrotik/#comments</comments>
		<pubDate>Fri, 16 Oct 2009 19:47:35 +0000</pubDate>
		<dc:creator>Rafael</dc:creator>
				<category><![CDATA[Php + Mysql]]></category>
		<category><![CDATA[3g]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[mikrotik]]></category>
		<category><![CDATA[tim]]></category>

		<guid isPermaLink="false">http://www.gilix.com.br/rafael_cambui/wordpress_2.7/?p=148</guid>
		<description><![CDATA[Modem 3G da Tim no Mikrotik Essa configuração foi feita no Mk 3.30 licenciado. Conecte o Modem 3G na USB e ligue o Servidor. Vá em Ports Na usb3 coloque 9600 em Baud Rate. Em PPP > Profiles crie o seguinte Profile name=ppp-3G Remote Address=212.93.97.200 Em Interface crie um PPP-Client name=ppp-3G Max MTU=1500 MAx MRU=1500 [...]]]></description>
			<content:encoded><![CDATA[<p>Modem 3G da Tim no Mikrotik<br />
Essa configuração foi feita no Mk 3.30 licenciado.</p>
<p>Conecte o Modem 3G na USB e ligue o Servidor.</p>
<p>Vá em Ports<br />
Na usb3 coloque 9600 em Baud Rate.</p>
<p>Em PPP > Profiles crie o seguinte Profile<br />
name=ppp-3G<br />
Remote Address=212.93.97.200</p>
<p>Em Interface crie um PPP-Client<br />
name=ppp-3G<br />
Max MTU=1500<br />
MAx MRU=1500<br />
port=usb3<br />
Modem Init=AT+CGDCONT=1,&#8221;ip&#8221;,&#8221;tim.br&#8221;<br />
Menu PPP<br />
Phone=*99***1#<br />
Dial Command=ATDT<br />
User=tim<br />
Password=tim<br />
Profile=ppp-3G<br />
Add Default Route=Yes<br />
User Peer DNS=Yes<br />
Allow<br />
Pap=Yes<br />
Mschap=Yes<br />
Chap=Yes<br />
Mschap2=Yes</p>
<p>e Pronto, seu servidor Mikrotik já está preparado para utilizar o Modem 3G da Tim, o restante das configurações do servidor todos já sabemos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/10/16/configurando-3g-no-mikrotik/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Como devo tratar a bateria do meu notebook?</title>
		<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/08/19/como-devo-tratar-a-bateria-do-meu-notebook/</link>
		<comments>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/08/19/como-devo-tratar-a-bateria-do-meu-notebook/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 17:29:17 +0000</pubDate>
		<dc:creator>Rafael</dc:creator>
				<category><![CDATA[Tecnologia - Info]]></category>

		<guid isPermaLink="false">http://www.gilix.com.br/rafael_cambui/wordpress_2.7/?p=146</guid>
		<description><![CDATA[Pensando na crescente popularização dos notebooks, e conseqüente demanda por informações a respeito dos cuidados com a bateria, resolvi criar esse pequeno FAQ para ajudar os novatos na área. O tutorial é fruto de muita pesquisa e saudável troca de informações com os colegas do fórum. Por favor, sintam-se a vontade para fazer alguma observação, [...]]]></description>
			<content:encoded><![CDATA[<p>Pensando na crescente popularização dos notebooks, e conseqüente demanda por informações a respeito dos cuidados com a bateria, resolvi criar esse pequeno FAQ para ajudar os novatos na área.</p>
<p>O tutorial é fruto de muita pesquisa e saudável troca de informações com os colegas do fórum. Por favor, sintam-se a vontade para fazer alguma observação, caso julguem necessária.</p>
<p>Tentei fazê-lo o menos entediante possível, por isso abordo os assuntos de maneira um tanto superficial, de forma que não canse a leitura, caso alguém queira se aprofundar basta uma pesquisa mais detalhada pela internet. Recomendo para iniciar o link: http://www.batteryuniversity.com/</p>
<p>1 – Meu note acabou de chegar. Devo dar uma carga de quantas horas antes de usá-lo?<br />
R – Não é necessário dar carga inicial nos notes atuais, já que a maioria esmagadora possui baterias de íons de lítio, que não possui efeito memória. A famosa carga inicial era um requisito das antigas baterias a níquel-metal-hidreto.</p>
<p>2 – Por que a bateria não vem completamente carregada de fábrica?<br />
R – Apesar de não possuir efeito memória as baterias de íons de lítio não devem ser guardadas totalmente carregadas ou totalmente vazias por longos períodos de tempo. Isto se deve ao processo interno de armazenamento de energia das células.</p>
<p>3 – Como funciona esse processo?<br />
R – Os íons de lítio &#8220;liberam&#8221; energia quando passam do estado sólido para o líquido, sendo que normalmente eles ficam alternando de estado entre eles, mesmo com o note desligado. Quando guardamos a bateria completamente carregada ou vazia, a grande maioria dos íons ficam em um estado estático (sólido ou líquido), pois não tem &#8220;espaço energético&#8221; suficiente para mudar de estado, sendo assim eles acabam &#8220;congelando&#8221; naquele estado e perdem a capacidade de reter e/ou liberar corrente.</p>
<p>4 – Isso não seria o efeito memória?<br />
R – Não, nas baterias de níquel-metal-hidreto o processo de recarga da bateria deveria ser efetuado praticamente no final da carga, para que ela “aprendesse” que poderia armazenar carga até aquele nível. Nas de íons de lítio isso não ocorre, na verdade é recomendável nunca deixá-las esgotar a carga por completo, recomenda-se carregá-la antes de se esgotar a carga.</p>
<p>5 – Então devo usá-la apenas até a metade?<br />
R – Não precisa exagerar, vez ou outra não há problema em deixar a carga terminar. O problema é quando isso se torna o padrão de uso.</p>
<p>6 – Isso é muito complicado. Não seria então melhor usar o note o tempo todo na tomada?<br />
R – Esse é um erro comum. Muitos deixam o note por meses na tomada e quando vão usá-lo apenas com a bateria, ela dura somente alguns minutos. A bateria tem de ser &#8220;ensinada&#8221; de tempos em tempos, não deve ficar 100% do tempo na tomada. Ela foi feita para ser usada.</p>
<p>7 – Então não seria melhor retirar a bateria do note e usá-lo apenas na tomada?<br />
R – Apensar de uma corrente de pensamento defender que a bateria deve estar sempre no note para servir como descarga de corrente excedente, os notes atuais possuem fontes inteligentes associadas com circuitos que detectam as variações e as corrigem sem necessidade de mandá-las para a bateria. Mas pense bem, se um dos equipamentos mais desejados pelos usuários de computadores é um nobreak, por que retirar o nobreak natural do note, a bateria? Você não a estará poupando ao retirá-la.</p>
<p>8 – E seu eu for viajar por muito tempo sem o note? Como devo guardar a bateria?<br />
R – Nesse caso retire a bateria e guarde-a entre 40 e 50% de carga, para que os íons possam se movimentar livremente entre os diferentes estados energéticos. Mas se realmente passar muito tempo sem o note, peça para alguém utilizá-lo vez ou outra.</p>
<p>9 – Posso dar várias cargas seguidas? Por exemplo. Usá-la no sofá, depois ligá-la na tomada, retirar da tomada e tornar a ligar?<br />
R – Não, evite retirar e colocar na tomada em curtos intervalos de tempo.</p>
<p>10 – Qual o indicativo que a bateria está terminando sua vida útil? E de quanto tempo é essa vida útil?<br />
R – Apesar de totalmente carregada ela passa a durar cada vez menos. A vida útil é de, em média, 2 anos, apesar de alguns usuários conseguirem mantê-la funcionando satisfatoriamente por até 4 anos, isso em raríssimos casos. É normal a bateria perder alguma capacidade de carga com o tempo, ou seja, uma bateria que segurava um note por 2 horas, pode segurá-lo por 1 hora e 40 minutos após alguns meses de uso.</p>
<p>11 &#8211; Quando for rodar softs pesados, devo usar a bateria ou o carregador? (sugestão do Matheusos)<br />
R &#8211; Quanto mais rápido for o consumo da bateria, menor sua vida útil, por isso se puder evitar de rodar softs que exijam muito da máquina através da bateria você estará aumentando a vida útil dela.</p>
<p>12 – Resumindo: Devo sempre manter a bateria no note e utilizá-la de vez em quando, mas qual seria o prazo de tempo para usar o note na bateria ou tomada?<br />
R – Como tudo na vida use o bom censo. Quando estiver em casa e tiver uma tomada por perto, use-o na tomada. Caso queira utilizá-lo na varanda, sofá ou cama, ou ainda em locais externos, use a bateria, sem stress. Chega uma hora que sua bateria vai acabar mesmo, por isso não adianta “poupa-la” em demasia.</p>
<p>13 – Existe alguma forma de manter a bateria sempre perto de sua carga nominal?<br />
R – Sim, de tempos em tempos é necessário educar a bateria fazendo ciclos de calibragem.</p>
<p>14 – Como faço a calibragem da bateria?<br />
R – Faça o procedimento abaixo a cada 60 a 90 dias.</p>
<p>a &#8211; Ligue o carregador e após a luz de carga indicar que a carga foi concluída deixe o carregador conectado por pelo menos mais duas horas, você pode usar o micro normalmente durante esse tempo.<br />
b &#8211; Com o micro ainda ligado, desconecte o carregador e use o note até ele desligar sozinho, evite FORÇAR o descarregamento rápido rodando programas com esse intuito, faça o uso normal do note.<br />
c &#8211; Após o desligamento, deixe o note &#8220;descansar&#8221; por pelo menos 5 horas com a bateria descarregada.<br />
d &#8211; Carregue normalmente até a luz indicar que a carga foi concluída. Pronto, bateria calibrada.</p>
<p>Depois de tentar fazer minha esposa decorar esses procedimentos, ela, leiga no assunto, me veio com uma tirada sensacional: &#8211; Não vou ficar neurótica com isso. Vou usar do jeito que achar mais conveniente e se acabar, compro outra!<br />
Ou seja, tente seguir esses passos, mas não se desespere por vez ou outra não conseguir.</p>
<p>Abraços</p>
<p>OBSERVAÇÃO: Os procedimentos acima valem para toda e qualquer bateria de íons de lítio, porém caso o fabricante de sua bateria/notebook recomende um procedimento diferente, utilize-o.</p>
<p>EDIT: A título de curiosidade, ou para aqueles que tem coragem e sabem das consequências que tal ato pode causar, estou adicionando um pequeno vídeo ensinando a &#8220;recondicionar&#8221; baterias de notebooks.</p>
<p>Quero deixar BEM claro que não me responsabilizo por nada.</p>
<p>Vídeo: http://www.youtube.com/watch?v=BtqRv&#8230;eature=channel</p>
<p>Vale lembrar que se o procedimento for feito de forma errada pode causar queimaduras, explosões ou danificar o notebook.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/08/19/como-devo-tratar-a-bateria-do-meu-notebook/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Configurar login automático no Linux Fedora 9 ou 10</title>
		<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/07/08/configurar-login-automatico-no-linux-fedora-9-ou-10/</link>
		<comments>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/07/08/configurar-login-automatico-no-linux-fedora-9-ou-10/#comments</comments>
		<pubDate>Wed, 08 Jul 2009 11:21:38 +0000</pubDate>
		<dc:creator>Rafael</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[automatico]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[login]]></category>
		<category><![CDATA[login automático fedora 9]]></category>

		<guid isPermaLink="false">http://www.gilix.com.br/rafael_cambui/wordpress_2.7/?p=144</guid>
		<description><![CDATA[Para configurar o login automático do único usuário da máquina no Gnome, geralmente utilizamos a &#8220;Janela de Início de Sessão&#8221; que, como os mais experientes sabem, fornece opções para o GDM. Ocorre que no Fedora, desde a versão 9, não há como fazer isso. Mas a solução para aqueles que sentem falta da opção é [...]]]></description>
			<content:encoded><![CDATA[<p>Para configurar o login automático do único usuário da máquina no Gnome, geralmente utilizamos a &#8220;Janela de Início de Sessão&#8221; que, como os mais experientes sabem, fornece opções para o GDM.</p>
<p>Ocorre que no Fedora, desde a versão 9, não há como fazer isso.</p>
<p>Mas a solução para aqueles que sentem falta da opção é simples!</p>
<p>Basta criar um arquivo de texto (use o Gedit ou outro editor de sua preferência), dando a ele o nome de &#8220;custom.conf&#8221; (sem as aspas, obviamente). Certifique-se de que o arquivo mencionado contenha apenas o seguinte texto:</p>
<p>[daemon]<br />
TimedLoginEnable=true<br />
TimedLogin=pinduvoz<br />
TimedLoginDelay=0</p>
<p>(não se esqueça de substituir &#8220;pinduvoz&#8221; &#8212; meu login e nome de usuário, usado aqui como exemplo &#8212; pelo seu login e nome de usuário)</p>
<p>Agora mova o arquivo &#8220;custom.conf&#8221; para a pasta &#8220;/etc/gdm/&#8221; com os comandos abaixo:</p>
<p>$ su<br />
[senha do root]<br />
# mv custom.conf /etc/gdm/</p>
<p>A mesma tarefa (mover o arquivo) pode ser feita com o Nautilus, aberto como root:</p>
<p>$ su<br />
[senha do root]<br />
# nautilus</p>
<p>e a partir daí &#8220;seu mouse&#8221;.</p>
<p>Agora, no próximo boot, o usuário indicado no arquivo &#8220;custom.conf&#8221; será logado no Gnome diretamente, sem senha ou opções.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/07/08/configurar-login-automatico-no-linux-fedora-9-ou-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ligando a máquina remotamente e desativando o botão power</title>
		<link>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/06/12/ligando-a-maquina-remotamente-e-desativando-o-botao-power/</link>
		<comments>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/06/12/ligando-a-maquina-remotamente-e-desativando-o-botao-power/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 12:38:55 +0000</pubDate>
		<dc:creator>Rafael</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[ligando]]></category>
		<category><![CDATA[ligando remotamente]]></category>
		<category><![CDATA[maquina]]></category>
		<category><![CDATA[remota]]></category>
		<category><![CDATA[wakeup]]></category>

		<guid isPermaLink="false">http://www.gilix.com.br/rafael_cambui/wordpress_2.7/?p=142</guid>
		<description><![CDATA[Configurando o gerenciamento de energia usando ACPI O ACPI (Advanced Configuration and Power Interface &#8211; Interface de Configuração e Gerenciamento de Energia Avançado) é uma camada de gerenciamento de energia que opera a nível de sistema operacional. Apresenta os mesmos recursos que o APM, e outros como o desligamento da máquina por teclas especiais de [...]]]></description>
			<content:encoded><![CDATA[<p>Configurando o gerenciamento de energia usando ACPI O ACPI (Advanced Configuration and Power Interface &#8211; Interface de Configuração e Gerenciamento de Energia Avançado) é uma camada de gerenciamento de energia que opera a nível de sistema operacional. Apresenta os mesmos recursos que o APM, e outros como o desligamento da máquina por teclas especiais de teclado, controle de brilho e contraste de notebooks, suspend para RAM, suspend para disco, redução de velocidade de CPU manualmente, monitoramento de periféricos, temperatura, hardwares, etc. Desta forma, o ACPI varia de sistema para sistema em questões relacionadas com suporte a recursos especiais, estes dados são armazenados em tabelas chamadas DSDT. O Linux inclui suporte a recursos ACPI genéricos entre placas mãe, recursos específicos devem ser extraídos diretamente da BIOS e disassemblados manualmente para a construção de um kernel com suporte específico a tabela DSDT do hardware (não falarei das formas de se fazer disso aqui, somente do suporte genérico). Quanto mais nova a versão do kernel, maiores as chances do seu hardware ser suportado plenamente pelo ACPI, principalmente no caso de notebooks. Para compilar estaticamente, marque com Y a opção ACPI, depois marque os módulos que você quer que ele monitore: button (botão power), fan (ventoinhas), etc. Se compilou como módulo, adicione o nome do módulo acpi no arquivo /etc/modules. Não há problema em compilar também o suporte a APM, pois não causará problemas com um kernel com ACPI também compilado. Caso não saiba quais módulos ACPI seu sistema aceita, marque o suporte a todos e carregue-os. Após isto, entre no diretório /proc/acpi e de um ls entrando nos diretórios e vendo se existem arquivos dentro deles. Remova o módulo correspondente daqueles que não tiver conteúdo. Após isto, instale o daemon acpid e configure-o para monitorar algumas características do seu sistema. Por padrão o acpid monitora o botão POWER, assim se você pressionar o power, seu sistema entrará automaticamente em run-level 0, fechando todos os processos e desligando sua máquina. O suporte a ACPI pode ser desativado de 3 formas: Removendo seu suporte do kernel, passando o argumento acpi=off ao kernel (caso esteja compilado estaticamente) ou removendo o módulo de /etc/modules (caso tenha compilado como módulo. Após isto, remova o daemon acpid do seu sistema.</p>
<p>Ativando WakeUP on Lan Algumas placas mãe ATX possuem suporte a este interessante recurso, que permite sua máquina ser ligada através de uma rede. Isto é feito enviando-se uma seqüência especial de pacotes diretamente para o MAC (endereço físico) da placa de rede usando um programa especial. Para usar este recurso, seu sistema deverá ter as seguintes características: Placa mãe ATX Fonte de alimentação ATX compatível com o padrão 2.0, com fornecimento de pelo menos 720ma de corrente na saída +3v. Placa de rede com suporte a WakeUP-on-Lan (WOL), você poderá confirmar isto vendo um conector branco de 3 terminais instalado na placa que é o local onde o cabo wake-up é conectado. Suporte na BIOS também deverá ter a opção para WakeUP-on-Lan. Com todos esses ítens existentes, instale em uma máquina da rede o pacote etherwake. Depois disso, pegue o MAC address a placa de rede da máquina que tem o wakeup on lan e na máquina da rede onde instalou o pacote execute o seguinte comando:</p>
<p>    ether-wake AA:BB:CC:DD:EE:FF</p>
<p>Onde AA:BB:CC:DD:EE:FF é o endereço MAC da placa de rede. A máquina deverá ligar e realizar o procedimento padrão de POST normalmente. Algumas das situações onde o WOL não funciona é quando sua rede é controlada por Switches (devido a natureza de funcionamento deste equipamentos) ou caso esteja atrás de um roteador que não faz proxy arp.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.gilix.com.br/rafael_cambui/wordpress_2.7/2009/06/12/ligando-a-maquina-remotamente-e-desativando-o-botao-power/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
