Archive for the ‘softwarelivre’ Category

gnome, problema para montar dispositivos usb “duplicate uuid”

domingo, março 14th, 2010

As vezes eu acabo futucando demais na mesa aqui do computador o que acaba causando  mal contato na conexão USB entre o notebook e o disco externo, quando isso acontece, o GNOME ao tentar montar o HD nos brinda com o clássico erro “wrong fs type/bad superblock”, deixando claro que ele não consegue mais realizar tal procedimento. Na mesma tela o GNOME sugere que a gente suje a mão e verifique no console – gnome-terminal – via dmesg os erros do sistema, no meu caso o erro era o seguinte:

XFS: Filesystem sdc1 has duplicate UUID – can’t mount

O que acontece?

1. Quando montei pela primeira vez meu HD foi gerado um UUID para ele.

2. Quando iniciei o sistema há alguns dias, ele o montou de acordo com aquele UUID, porém ele havia detectado meu disco como /dev/sdb1, acontece que ao religar o HD USB o sistema estava tentando entender o problema do antigo dispotivo sdb1, o qual não respondia, mas continua ali ocupando espaço no /dev

3. Ao chegar um novo dispositivo, o kernel o nomeou com o próximo dispositivo livre, no caso sdc. O dispositivo em questão só tem uma partição XFS de 500GB, logo sua identifcação foi fixada como sdc1.

4. Ao identificar e registar uma nova partição /dev/sdc1 o Kernel vai tentar montá-la utilizando seu UUID – padrão as distros mais novas – ao invés do dispositivo absoluto, ao fazer isto ele vai ler o UUID gerado para este dispositivo e Pimba, erro, ele vai encontrar um conflito com o UUID do dispositivo sdb1, bugado, porém presente, nesta situação o kernel para tudo e pede ajuda dos universitários, você!

Normalmente o mais fácil é o reiniciar o sistema e tudo volta ao normal, o kernel vai montar seu disco sem problemas, isto vai ocorrer pois na próxima detecção de discos o kernel só vai achar um dispositivo e apenas um uuid, neste cenário tudo vai funcionar redondo.

Mas eu preciso reiniciar? Não, isso é coisa de sistema operacional proprietário bugado, eu uso GNU/Linux e gosto de colocar meu tico e teco para funcionar de vez em quando, por isso fui pesquisar na internet Duplicate UUID no google e achei os caminhos para entender o problema e descrever aqui no post a solução.

Para verificar os UUIDs de seus dispositivo você pode utilizar o comando blkid

root@defiant:/downloads/p2p/subtitles# blkid -s UUID
/dev/sda1: UUID=”613c6fe2-f4d3-4423-85af-695b1607790b” TYPE=”xfs”
/dev/sda2: UUID=”de0958e6-8e82-46c0-8eae-4a4eb512ae1e” TYPE=”xfs”
/dev/sda3: UUID=”179a6dab-3dce-4be4-aebb-193af0a9b807″ TYPE=”xfs”
/dev/sdc1: UUID=”0e55cd49-e14f-4f58-9e2f-fc764df764a1″ TYPE=”xfs”

Beleza vi que o UUID do scd1 é o 0e55cd49-e14f-4f58-9e2f-fc764df764a1

Provavelmente esse é o cara duplicado, mas como vamos resolver esse problema? Fácil, mas vamos sujar as mãos um pouquinho, primeiro temos que montar a partição em um local temporário, vamos lá

# mkdir /media/tmp
# mount -o nouuid /dev/sdc1 /media/tmp

agora vamos gerar um novo uuid para esta partição

# xfs_admin -U generate /dev/sdc1
Clearing log and setting UUID
writing all SBs
new UUID = 179a6dab-3dce-4be4-aebb-193af0a9b807

pronto novo uuid gerado, desmonte a partição

# umount /dev/sdc1
# rm -rf /media/tmp

Agora vá ao seu Gnome, clique em locais/computador, provavelmente você está vendo seu dispositivo USB, clique 2 vezes nele, veja que desta vez ele será montado sem problemas, erros ou alertas e o melhor, você não precisou reiniciar o seu computador.

Se você criou algum link simbólico apontando para o ponto de montagem que referenciava o UUID antigo do dispositivo usb em questão, corrija o link ;)

Referências

http://linux-tips.org/article/50/xfs-filesystem-has-duplicate-uuid-problem

http://en.wikipedia.org/wiki/Universally_Unique_Identifier

https://help.ubuntu.com/community/AutomaticallyMountPartitions

http://linux.die.net/man/8/blkid

[]’s
Guto

gnome, organizando ideias em um diário

sexta-feira, março 12th, 2010

Sempre gostei de documentar o que faço no meu dia-a-dia, normalmente uso o gedit para isto, mas confesso que não é nada prático gerenciar um pancadão de arquivos ou uma tripa de texto gigantesca.

Há alguns anos testei e usei um programa chamado MonoDiary – descontinuado em 2006, ele me atendida bem apesar dos pobres recursos, mas era um parto compilar devido a suas dependências Mono.

Muito tempo se passou até que passeando pelo GnomeFiles.org, visitei a área ‘Diaries & Journals’ , lá eu encontrei dois projetos interessantes, ambos com pacotes disponíveis no Ubuntu e Debian.

Almanah

Este é um projeto bem simples de diário, ele tem suporte a formatação básica – negrito, italico e sublinhado, tem suporte a definições de texto (templates) e criptografia de sua base através das chaves gpg, esse é o ponto mais interessante deste software.

Abaixo uma tela do Almanah

Rednotebook

Este já é um sistema de diário bem mais completo com ricos recursos de edição. Ele funciona quase como um Wiki – o que me agrada muito, tem suporte a templates, busca eficiente, tagging e orientação por calendário.

Abaixo uma tela do Rednotebook

Dentre seus principais recursos destaco:

* Formatação de Texto
* Tagging
* Inserção de imagens e links
* Busca por palavras chaves
* Salvamento automático
* Backup e compressão da base
* Nuvem de Palavras com os termos mais utilizados
* Suporte a Templates
* Exportação em vários Formatos

O Rednotebook foi a minha escolha para sistema de diário, durante o dia vou anotando  tudo que fiz e os detalhes que preciso me lembrar, algo muito útil quando você está atuando em vários projetos e demandas simultâneas.


Instalando

Para instalar os programas no Ubuntu/Debian utilize o comando abaixo no gnome-terminal:

# aptitude install rednotebook

ou se preferir o almanah

# aptitude install almanah

Se o console não é sua praia, utilize o gerenciador de pacotes gráfico Synaptic clicando em Sistema/Administração/Gerenciador de Pacotes Synaptic.

Enjoy!

Referências

http://www.gnomefiles.org/

http://www.gnomefiles.org/app.php/Almanah_Diary

http://www.gnomefiles.org/app.php/RedNotebook

http://www.gnomefiles.org/app.php/monodiary

http://live.gnome.org/Almanah_Diary

http://digitaldump.wordpress.com/projects/rednotebook/

[]’s
Guto

shutter, mais recursos para tirar sua screenshot

quinta-feira, março 11th, 2010

Se você precisa tirar uma screenshot (foto da tela) de uma forma diferente, apenas de uma janela, ou  dando um zoom em uma parte da tela, ou mesmo de um ponto específico de seu desktop o shutter foi feito para você.

Normalmente eu uso a ferramenta de screenshot padrão do GNOME, porém após tirar a foto da tela, tenho de ir para o GIMP, Inkscape ou qualquer outro editor gráfico para recortar a imagem e adequar as minhas necessidades, seja colocando alertas, setas, linhas, sinalizando a imagem.

O complicado é que nem sempre tenho paciência e tempo para ficar recortando a imagem, e confesso que minhas aptidões gimpisticas e inkscapticas andam deixando a desejar, apanhei pra caramba para recortar uma janelinha para o post das telas transcionais no Gnome.

Finalmente eis que o Sr. @emerluis me apresenta o Shutter e meus problemas foram todos resolvidos.

O Shutter é um projeto opensource – GPLv3 – que oferece excelentes recursos para tirarmos a nossa tão necessária screenshot.

Principais recursos do Shutter:

  • Screenshot da tela cheia
  • Screenshot de uma janela específica
  • Screenshot  de uma sessão específica
  • Screenshot de uma seleção da tela (porção específica)
  • Screenshot de um URL/Página

Após tirar a screenshot você pode editar na hora, o shutter lhe permite recortar, redimensionar, dar zoom e sinalizar a imagem, seja escrevendo, colocando balões, retângulos, setas, linhas, marcadores, além de inúmeros outros recursos interessantíssimos.

Você pode também exportar a imagem na hora para Ubuntu-Pics.de, ImageShack.com ou ImageBanana.com

O Shutter tem suporte a plugins com efeitos e no Ubuntu ele já vem com alguns muito interessantes, dentre os que me chamaram atenção estão:

  • Redimensionar (muito fácil de usar)
  • Marca d’agua
  • Efeito Sépia
  • Perspectiva em 3d
  • Escala de cinza em 256 cores
  • Suavizar bordas
  • Exportar em PDF

Abaixo um screenshot mostrando como selecionar apenas uma parte da tela.

Abaixo a tela do shutter, como podem ver ele trabalha com abas e tem uma interface bem simples, no exemplo abaixo o shutter tirou uma screenshot de um website, apenas da porção da página, outro recurso interessante.

resultado da screenshot de URL

Se você usa Debian ou Ubuntu, pode instalar o shutter com o comando abaixo no console, desde que esteja com um usuário com os poderes para executar tal comando.

# aptitude install shutter

para complementar o funcionamento dele instale os pacotes abaixo

# aptitude install gnome-web-photo libgoo-canvas-perl nautilus-sendto

Se preferir use o Synaptic no ambiente gráfico.

Enjoy!

Site do projeto: http://shutter-project.org/
Screenshots: http://shutter-project.org/screenshots
Downloads: http://shutter-project.org/downloads/
Licença: GPL v3

[]’s
Guto

gnome, tela de fundo transacional

domingo, março 7th, 2010

Desde que iniciei o uso da versão 2.28 do Gnome reparei no wallpaper “cosmos” que possui a característica da randomicidade, pelo menos foi o que eu achei, porém ele não é aleatório e sim transicional, pesquisando e estudando  este wallpaper verifiquei que ele possui um arquivo XML que determina o seu comportamento.

O arquivo XML encontra-se no caminho abaixo:

/usr/share/background/cosmos/background-1.xml

Abaixo o conteúdo do arquivo:

<background>
  <starttime>
    <year>2009</year>
    <month>08</month>
    <day>04</day>
    <hour>00</hour>
    <minute>00</minute>
    <second>00</second>
  </starttime>
<!-- This animation will start at midnight. -->
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/cloud.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/cloud.jpg</from>
    <to>/usr/share/backgrounds/cosmos/comet.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/comet.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/comet.jpg</from>
    <to>/usr/share/backgrounds/cosmos/earth-horizon.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/earth-horizon.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/earth-horizon.jpg</from>
    <to>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</from>
    <to>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</from>
    <to>/usr/share/backgrounds/cosmos/helix-nebula.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/helix-nebula.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/helix-nebula.jpg</from>
    <to>/usr/share/backgrounds/cosmos/jupiter.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/jupiter.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/jupiter.jpg</from>
    <to>/usr/share/backgrounds/cosmos/sombrero.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/sombrero.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/sombrero.jpg</from>
    <to>/usr/share/backgrounds/cosmos/whirlpool.jpg</to>
  </transition>
  <static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/whirlpool.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/whirlpool.jpg</from>
    <to>/usr/share/backgrounds/cosmos/cloud.jpg</to>
  </transition>
</background>

Entendendo o XML

O XML utiliza a seguint estrutura

<background>
<starttime>
</startime>

<static>
</static>

<transition>
</transition>

</background>

Vamos entender agora o que cada tag especifica.

<starttime>
    <year>2009</year>
    <month>08</month>
    <day>04</day>
    <hour>00</hour>
    <minute>00</minute>
    <second>00</second>
  </starttime>

A primeira parte da configuração está dentro da TAG <starttime> a qual especifica quando o wallpaper inicia o seu funcionamento, no caso do Cosmos é na hora 00:00

<static>
    <duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/cloud.jpg</file>
  </static>
  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/cloud.jpg</from>
    <to>/usr/share/backgrounds/cosmos/comet.jpg</to>
  </transition>

A segunda parte está relacionada as tags <static> e <transition> vamos entendê-las agora


<duration>1795.0</duration>
    <file>/usr/share/backgrounds/cosmos/cloud.jpg</file>
  </static>

A tag <static> indica o arquivo que deve ser carregado e o tempo em segudos que ele deve permanecer na tela, no caso do Cosmos é de 29 minutos.


  <transition>
    <duration>5.0</duration>
    <from>/usr/share/backgrounds/cosmos/cloud.jpg</from>
    <to>/usr/share/backgrounds/cosmos/comet.jpg</to>
  </transition>

Já a tag transition especifica quando tempo deve durar a transição de um wallpaper para o outro, aqui no exemplo diz que a transição vai levar 5 segundos partindo do arquivo cloud.jpg para o arquivo comet.jpg

Quando a lista terminar ela reinicia a transição automaticamente.

Utilizando o XML

Siga o passo a passo

Abra o diálogo de controle dos planos de fundo, use o botão direito no desktop e clique alternar plano de fundo.

selecione adicionar

mude a opcao no canto inferior direito para "todos os arquivos"

selecione o xml que você criou

Pronto, sua tela de fundo transicional está funcionando.

Faciliando as coisas

Entendo que escrever o arquivo XML pode ser chato para alguns, se for seu caso, vá a página abaixo e instale o script XML Animated Background.

http://gnome-look.org/content/show.php/XML+animated+background+creator?content=118074

Testei aqui e funcionou muito bem, instalei de acordo com as instruções do autor. Com esse script você consegue clicar em cima do seu diretório com as walpapers e gerar o arquivo XML, basta selecionar a opção Scripts/Create XML Background ao clicar com o botão direito no diretório.

Referências

http://www.linuxjournal.com/content/create-custom-transitioning-background-your-gnome-228-desktop

[]'s
Guto

fica dica, mplayer e posicionamento das legendas

domingo, fevereiro 28th, 2010

Você já tentou mover a legenda de cima do filme – em arquivos com formato widescreen – e não teve sucesso mesmo procurando ajuda na extensa manpage do mplayer?

Pois é, eu também já passei por esta situação, mas fique tranquilo pois a solução é bem simples

normalmente eu assisto os filmes com o comando abaixo:

mplayer filme.avi -sub legenda.srt -subfont-autoscale 2

desta forma estou carregando o módulo padrão para saída de video (xv) e o módulo padrão para saída do audio (alsa), portando, a legenda vai para cima do filme e não tem choro nem vela para tirá-la de lá.

Para corrigir este desconforto basta utilizar um módulo de vídeo diferente do padrão como o módulo GL ou o módulo GL2.

mplayer -ao pulse -vo gl2 filme.avi -sub legenda.srt -subfont-autoscale 2

Assim você pode alterar a posição das legendas na tela utilizando a telca R e T, se o filme tiver formato widescreen você conseguirá coloca-la tranquilamente fora do filme.

[]’s
Guto

voltando no tempo sem mistérios…

sexta-feira, fevereiro 19th, 2010

As vezes vem a mente aquela máxima “Faça o que eu falo, não o que eu faço” e isto sempre me faz refletir sobre alguns aspectos do nosso dia-a-dia no trabalho,  no caso do backup sabemos que é uma das coisas mais importantes na computação, porém por algum motivo não o levamos muito a sério, principalmente em nosso Desktop, não o fazemos periódicamente e geralmente arrancamos nossos cabelos usando FSCK e outras ferramentas para recuperar algum HD – com problemas – do qual você não tem backup.

É sério minha gente, se eu ganhasse uma moeda por cada pessoa que já vi chorando a perda de seus dados, já dava para comprar um STORAGE SAN HI-END ligado a uma VTL integrado a uma Tape Library bacana para fazer o armazenamento, cópia, espelhamento e o backup dos dados deles ;)

Eu também não tenho costume de me preocupar muito com os dados do meu DESKTOP, principalmente com o advento do HD USB e os serviços WEB 2.0, porém há alguns dias me deparei com um problema que me forçou a buscar uma solução de backup simples e rápida para o Desktop, esta busca me levou ao BIT.

O Back In Time (BIT) é uma programa escrito em python que utiliza o recursos do RSYNC para fazer snapshots de diretórios específicos, o criador do programa se inspirou nos projetos Flyback e TimeVault para desenvolvê-lo.

O BIT é leve é fácil de configurar e te ajuda a fazer o seu tão importante – deveras hora esquecido – Backup.

Sua interface é bem simples, ela nos permite agendar backup em minutos, horas ou em período diário, semanal ou mensal, tudo de forma bem intuitiva.

A imagem acima é a tela principal, ela mostra os pontos de recuperação disponíveis e os diretórios que estão na lista para serem executados os snapshots.

Aqui ficam as configurações, você escolhe o diretório em que ficarão armazenados os snapshots – um disco externo é uma boa alternativa, a periodicidade, quais diretórios entram, quais diretórios ou padrões de arquivos não devem entrar no snapshot além de outras opções de retenção de dados.

Esta é a tela de diálogo dos SNAPSHOTS, aqui você pode comparar arquivos ou diretórios e retornar versões anteriores em pontos do tempo específicos.

Aqui em casa agendei um BACKUP diário que é salvo no meu HD externo, no trabalho farei o mesmo, dessa forma fico mais tranquilo ;)

O BIT funciona para os ambientes de desktop GNOME e KDE em sistemas GNU/Linux ou UNIX Like. Se você usa Fedora, Debian ou Ubuntu ele está disponível nos repositórios oficiais destas distribuições.

Site do projeto: http://backintime.le-web.org/
Licença: GPLv2

Referências:
https://launchpad.net/timevault
http://code.google.com/p/flyback/

liberte o seu boleto

quinta-feira, fevereiro 18th, 2010

Hoje fui consultado por uma amiga acerca de sistemas livres para a geração de Boletos Bancários, eu conheço apenas dois projetos brazucas com essa finalidade, são eles:

Projeto jBoleto
http://www.jboleto.com.br

Projeto BoletoPHP
http://www.boletophp.com.br/

Fica a dica!

[]’s
Guto

saindo do forno, openoffice 3.2

quinta-feira, fevereiro 18th, 2010

No dia 11 de Fevereiro de 2010 foi lançado a versão 3.2 do OpenOffice, disponível para downloads no link abaixo:

http://download.openoffice.org/.

No Brasil o projeto BrOffice lançou a versão 3.2 no dia 15 de Fevereiro, baixe através do link abaixo:

http://www.broffice.org/download

Notas da versão:

http://development.openoffice.org/releases/3.2.0.html

Referências:

http://www.openoffice.org/news/

http://www.broffice.org/broffice_3_2_0_disponivel< /a>


[]’s
Guto

saindo do forno, wordpress 2.9.2

quarta-feira, fevereiro 17th, 2010

Saiu do forno no dia 15 de Fevereiro de 2010 a versão 2.9.2 do wordpress, esta versão corrige um problema de segurança que permite que usuários registrados e logados consigam ver posts de outros autores se eles estiverem na lixeira, caso isso seja um problema em seu blog, atualize agora.

Aqui eu já atualizei pela área administrativa.

Referências:

http://wordpress.org/development/2010/02/wordpress-2-9-2/

[]’s
Guto

wiki, nova seção netfilter/iptables

quinta-feira, fevereiro 11th, 2010

Por algum motivo eu ainda não havia criado essa seção na wiki, apesar de ser o assunto de meu maior interesse. Posso inclusive dizer que alguns dos momentos mais divertidos da minha vida profissional foram aqueles em que elaborei scripts de firewall para ambiente GNU/Linux, fazendo isto utilizando shellscript e netfilter/iptables. Ontem ressuscitei um script que criei no dia 2003-05-12 e uso até hoje. Preciso confessar que nunca gostei de sites especializados em Netfilter, sejam em português ou inglês, por isto acho que é a hora de fazer um guia à Moda Pantaneira ;)

Agradeço a cervejada com @fernandoike e seus colegas de trabalho, o papo sobre firewalls, bridge, netfilter/iptables, ebtables e packet filter foi inspirador.

Bom galera o trabalho está apenas começando, estou bastante empolgado, aguardo sugestões, pedidos, críticas e ajuda na elaboração, é sempre bom lembrar que minha wiki é aberta, qualquer um pode colaborar e utilizar aquele espaço, basta se cadastrar.

Abaixo o link para a wiki
http://gutocarvalho.net/mediawiki/index.php?title=Página_principal#Netfilter.2FIptables

Aqui um diagrama de fluxo – que gosto muito – de entrada e saída de pacotes.