Mostrando postagens com marcador ubuntu. Mostrar todas as postagens
Mostrando postagens com marcador ubuntu. Mostrar todas as postagens

domingo, 3 de junho de 2012

Instalando um Servidor Jabber jabberd no Ubuntu ou Debian

Jabber é um serviço que implementa o protocolo XMPP (Extensible Messaging and Presence Protocol), um protocolo aberto responsável por definir padrões para a comunicação entre clientes e servidores de mensagens instantâneas. É claro que não é o único padrão neste sentido, já que temos muitos deles (como o ICQ, AIM, MSN, etc.), mas é o único realmente aberto e gratuito.
Porque o XMPP é gratuito, existem muitos servidores e clientes Jabber, que implementam este protocolo e permitem, assim, que você tenha um serviço privado de mensagens instantâneas na sua casa, sua empresa, sua lan house ou rede particular. O objetivo deste artigo é exatamente isto: ajudar-lhe a instalar e configurar seu serviço particular de mensagens instantâneas baseado em Jabber. Note que todas as ações descritas neste tutorial supõem que você tem prioridade de root.


1- De Que Programas Preciso?

Para começar, você precisa de dois tipos de programas:

  • Um servidor Jabber, que ficará em uma máquina servidora acessível via rede;
  • Um cliente Jabber, que ficará em cada máquina de usuário.

A princípio, qualquer servidor Jabber deve poder falar com qualquer cliente, sem exclusividade, já que o protocolo XMPP é aberto e único.
Consulte aqui uma lista de clientes Jabber, e consulte aqui uma lista completa de servidores Jabber.
Para efeito deste artigo, vamos utilizar o servidor jabberd, versão 14, que é um servidor leve e bastante flexível, e vamos utilizar, para testar, o cliente pidgin, que é leve e multi-plataforma.


2- Instalação dos Programas

Nas máquinas clientes (dos usuários), instale o pidgin:

apt-get install pidgin

Faça a instalação do cliente em pelo menos uma máquina, para fins de teste. Em último caso, você pode instalar o cliente e o servidor na mesma máquina, para que faça todos os testes e configurações antes da implantação na máquina servidora realmente.

Na máquina servidora, instale o jabberd:


apt-get install jabberd14

(Em algumas distribuições, há o meta-pacote "jabber", que tem o jabberd14 como dependente. Neste caso, use opcionalmente "apt-get install jabber")

Isto instala o servidor jabberd e já roda o script de inicialização, programando-o para carregar sempre durante o boot. Evidentemente, você desejará modificar as configurações do servidor, então é preciso pará-lo:

/etc/init.d/jabberd14 stop


3- Configurando o Servidor jabberd

Toda a configuração do servidor está em um único arquivo XML, que pode ser encontrado em:

/etc/jabber/jabber.xml

Já a configuração do script de inicialização, dependendo de sua distribuição, pode ser encontrada em um destes dois arquivos:

/etc/jabber/jabber.cnf (mais comum no Debian)
ou
/etc/default/jabberd14 (mais comum no Ubuntu)

O arquivo jabber.xml é vastamente documentado e já vem pronto para uso. Contudo, algumas informações você precisará alterar.


Ajustando o nome e domínio do servidor

Ache a linha:

<host><jabberd:cmdline flag="h">localhost</jabberd:cmdline></host>

E troque a referência "localhost" pelo nome de sua máquina na rede. Use aqui o que chamamos de FQDN (Full-Qualified Domain Name), ou seja, o nome da máquina com o domínio. Exemplo: se sua máquina se chama "host1" e seu domínio é "minhacasa.org", então configure esta linha assim:

<host><jabberd:cmdline flag="h">host1.minhacasa.org</jabberd:cmdline></host>

Observe que a linha acima faz menção à opção de linha de comando "-h". Esta opção é usada na inicialização do servidor pelo script e serve para indicar o nome do host que deverá ser considerado.
Portanto, uma vez alterando o nome de máquina no arquivo jabber.xml, você deve necessariamente abrir o arquivo de configuração do script e fazer a mesma alteração:

/etc/jabber/jabber.cnf (Debian):
JABBER_HOSTNAME=host1.minhacasa.org

ou

/etc/default/jabberd14 (Ubuntu):
HOSTNAME=host1.minhacasa.org

 Ainda falta um passo: neste arquivo de configuração do script acima, há referência ao diretório de spool. Este diretório é onde o jabberd armazena todos os dados dos usuários criados (que são arquivos XML contendo as informações de usuário, como login e senha, e o ícone do mesmo). Para cada opção de host o jabberd necessita de um sub-diretório dentro do spool de mesmo nome do host.
Assim, se seu diretório de spool é /var/spool/jabberd/, então você deve criar o diretório:

mkdir /var/spool/jabberd/host1.minhacasa.org

 Verifique com que usuário o seu jabberd roda. Em geral, ele roda com usuário e grupo chamado "jabberd". Assim, atribua este diretório a estes usuário e grupo:

chown jabberd /var/spool/jabberd/host1.minhacasa.org
chgrp jabberd /var/spool/jabberd/host1.minhacasa.org


Ajustando a porta

Se você chegou até aqui, seu servidor jabberd já está pronto para rodar perfeitamente. Contudo, ele vai rodar nas portas padrões do Jabber, a porta 5222 (para acesso sem encriptação) e 5223 (para acesso com encriptação). É fortemente recomendável, especialmente se seu servidor estará aberto para acesso externo via internet, que você troque a porta.
Para tanto, localize no arquivo jabber.xml mencionado acima as linhas:

<ip port="5222"/> (usada para acesso sem SSL)
<tls port='5223'/> (usada para acesso com SSL)

Troque os valores 5222 e 5223 para valores que você desejar. É imprescindível, entretanto, que você verifique o firewall de sua máquina onde está instalado o jabberd para se certificar de que as portas escolhidas estão abertas para acesso conforme você deseja. De outro modo, o servidor ficará inacessível.


Cadastramento de usuários

O jabberd vem, por padrão, disponível para aceitar que qualquer novo usuário se cadastre (registre) no sistema. Caso esta não seja a opção de seu desejo, então visite, no arquivo jabber.xml mencionado acima, as tags <register> e escolha a opção que mais lhe convenha.
Para eliminar totalmente a opção de registro automático pelo usuário, elimine deste arquivo todas as tags <register>.
Caso você queira ter total controle sobre os usuários e deseja registrá-los através de um serviço web ou criando-os a mão mesmo, você deverá saber a sintaxe do arquivo XML de usuário para escrevê-lo, ou confiar em um script que faça isto. Se é este seu desejo, veja bons scripts administrativos do Jabber aqui e aqui.
Lembre-se de que, para o Jabber, o nome do usuário sempre tem a fórmula:

nomeusuario@host.dominio
Arquivo: "/var/spool/jabberd/host.dominio/nomeusuario.xml"

Muitos clientes só conseguirão cadastrar ou localizar usuários usando esta forma acima.
Também é importante lembrar-se de que, se você fará o cadastramento de usuários manualmente ou através de outro sistema, os arquivos XML de cada usuário deverão ser atribuídos aos usuário e grupo do jabberd, conforme fizemos com o diretório de spool acima.


4- Reiniciando o Servidor

Após concluídas todas estas modificações, o servidor precisa ser reiniciado. Para tanto, rode os comandos:

/etc/init.d/jabberd14 stop (caso ainda não o tenha feito)
/etc/init.d/jabberd14 start

Para verificar se o servidor rodou usando o nome de host adequado, consulte o comando executado pelo script:

ps ax | grep jabberd

Deve surgir algo como:

2764 pts/1    S      0:00 /usr/sbin/jabberd --background -h host1.minhacasa.org -s /var/spool/jabberd

onde:

--background: informa que o serviço deve rodar como deamon, ou seja, em segundo plano.
-h: informa o nome do host (e, conseqüentemente, a pasta a ser lida dentro do spool);
-s: indica o local onde está o spool.


5- Conclusões

Bom, ao final deste tutorial, você deverá estar com um servidor Jabber rodando perfeitamente. Deve também ser capaz de criar usuários e configurar facilmente um cliente, como o Pidgin. Espero ter ajudado e conto com suas impressões nos comentários!!

domingo, 18 de setembro de 2011

Instalando o Bugzilla no Debian ou Ubuntu

  • Introdução

O Bugzilla é um famoso gerenciador de bugs e pendências para projetos de desenvolvimento, especialmente desenvolvimento de sistemas, criado pela Fundação Mozilla. Suporta múltiplos projetos, diversos componentes por projeto e login de usuários. Suporta envio de anexos e é bastante flexível, além de ser código aberto (e, portanto, gratuito). Você pode baixar e instalar o Bugzilla em sua máquina pessoal, em um servidor de seu projeto, sua empresa ou instituição, ou mesmo modificá-lo e adaptá-lo para seu uso, caso deseje. Este artigo ensina os passos básicos para a instalação comum do Bugzilla, dando ênfase a sistemas derivados do Debian (como Ubuntu). Uma documentação detalhada de cada versão do sistema, incluindo a instalação destas, pode ser encontrada do repositório oficial de documentações (aqui). O artigo é divido em várias seções, uma para cada etapa da instalação, para melhor compreensão e orientação segura do fluxo, descrito passo-a-passo.


  • Verificando Dependências: Perl

O Bugzilla depente da linguagem Perl. Você não precisa saber nada da linguagem e possivelmente ela já vem na sua distribuição. Porém, para verificar isto, digite o comando:

perl -v

Caso o comando rode perfeitamente, o Perl está instalado. A versão mínima do Perl para rodar o Bugzilla deve ser maior ou igual à 5.8.1.


  • Verificando Dependências: Banco de Dados

O Bugzilla pode rodar em uma de três opções diferentes de bancos: MySQL, Oracle ou PostgreSQL. Para verificar as versões de cada um deles, digite:

mysql -V [para o MySQL. Deve ser maior ou igual a 4.1.2]
psql -V [para o PostgreSQL. Deve ser maior ou igual a 8.00.0000]
select * from v$version [para o Oracle. Deve ser maior ou igual a 10.02.0]

Se você tem ao menos um destes bancos e não está usando uma versão incrivelmente desatualizada da sua distribuição, então muito provavelmente seu banco servirá para o Bugzilla. Caso você ainda não tenha um banco de dados, recomendo que instale e use o MySQL. Para tanto, visite o nosso artigo Como Instalar e Configurar o MySQL no Ubuntu.


  • Verificando Dependências: Servidor Web

 Imagino que, a esta altura, você já tenha o Apache Web Server instalado (ou outro servidor web que suporte Perl). O Bugzilla recomenda o uso do Apache e, caso não o tenha instalado, proceda a instalação do mesmo via apt-get, digitando:

apt-get install apache2


  • Instalando e Configurando o Bugzilla

Muito bem, agora você está pronto para começar a instalação do Bugzilla. Baixe-o do portal oficial e copie-o para o diretório onde estão suas páginas do Apache. Descomprima-o lá dentro. Exemplo (para o arquivo da versão 4.0.2 e para o diretório /var/www como sendo o repositório das pastas virtuais do Apache):

mv bugzilla-4.0.2.tar.gz /var/www/
cd /var/www/
tar -zxvf bugzilla-4.0.2.tar.gz

É sempre bom renomear o diretório criado para um nome que você decida ser melhor, caso deseje:

mv bugzilla-4.0.2 bugzilla

Como o Bugzilla precisa escrever nos seus próprios arquivos, você terá de dar permissão para tanto. Verifique o usuário e grupo do Apache que está configurado na sua distribuição (para o Ubuntu, o usuário e grupo são ambos www-data) e modifique as permissões de acesso do Bugzilla para autorizar este usuário e grupo:

chown -R www-data bugzilla/
chgrp -R www-data bugzilla/

Você pode conferir se tudo funcionou com um "ls -l".


  • Instalando e Configurando os Módulos do Perl para o Bugzilla

A não ser que você seja um ávido desenvolvedor Perl, possivelmente seu servidor tem o Perl, porém não tem todos os módulos e bibliotecas necessárias para rodar o Bugzilla em sua plenitude. Neste caso, precisaremos verificar quais módulos você realmente tem e quais precisam ser instalados. Esta etapa deve ser feita cuidadosamente para que não falte nenhum módulo. Felizmente, o programa fornece uma ferramenta para isto. Entre no diretório do Bugzilla (talvez /var/www/bugzilla, ou o local onde você o colocou) e digite:

./checksetup.pl --check-modules

Não fique triste, mas a saída reportará várias linhas em vermelho, indicando os módulos não encontrados (ou encontrados, mas em versões inferiores à esperada). Você pode tentar instalá-los com os comandos sugeridos na própria saída, ou via apt-get. Eu recomendo que instale via apt-get o máximo de módulos possíveis, de sorte a garantir a integridade de seu sistema.
Alguns módulos que possivelmente estarão presentes: CGI.pm, Digest-SHA, TimeDate, DBI, URI, DBD-mysql. Alguns módulos que possivelmente estarão ausentes e podem ser instalados via apt-get são:

Módulo DateTime-Timezone:
apt-get install libdatetime-timezone-perl

Módulos List-MoreUtils e DateTime:
apt-get install libdatetime-perl liblist-moreutils-perl

Módulo Email-Send:
apt-get install libemail-send-perl

Módulo Email-MIME:
apt-get install libemail-mime-perl

Módulo Template (Template-Toolkit):
apt-get install libtemplate-perl

Caso, em seu sistema, outro módulo esteja faltando, o pacote correspondente pode ser encontrado fazendo a pesquisa:

apt-cache search [nome-do-módulo]

Use esta opção acima para achar também os módulos opcionais que deseja instalar (embora não estritamente obrigatórios, os módulos opcionais podem ser desejáveis para um uso mais amplo do Bugzilla).

Após a instalação dos módulos, rode de novo o comando checksetup (conforme mostrado lá em cima) para verificar se ainda há pendências.
Se algum módulo ficar faltando, ou caso esteja instalado, contudo o comando informa que se trata de uma versão inferior à requerida, então é preciso fazer o resto da instalação "à mão", ou seja, com os comandos sugeridos. Neste momento, como você fez o máximo que pôde com os pacotes do Debian (pelo apt-get), então as chances de instalações ou atualizações manuais falharem são de fato muito pequenas. Vide a seção seguinte.


  • Instalando Manualmente os Módulos do Perl para o Bugzilla

Suponhamos que o procedimento da seção acima informa que dois módulos foram instalados corretamente pelo gerenciador apt-get mas não se encontram nas versões mínimas requeridas: Template-Toolkit e Email-MIME (comumente isto acontece em algumas versões do Ubuntu).
Felizmente, o Bugzilla também se preocupou com problemas inerentes a este cenário, e prontificou uma ferramenta que auxiliará a instalação das versões mais novas (ou ao menos as versões corretas e apropriadas) dos módulos em questão. O próprio comando "checksetup.pl" sugere como proceder!! Basta que se digite (em relação a estes dois módulos e estando ainda no diretório do Bugzilla):

/usr/bin/perl install-module.pl Template
/usr/bin/perl install-module.pl Email::MIME

Utilizei estes módulos como exemplo, pois é comum que isto aconteça com eles. Entretanto, o comando acima instalará qualquer módulo, se substituir o "Template" ou "Email::MIME" pelo nome do módulo desejado. Impera ressalvar que, em qualquer condição, só faça uso dessa ferramenta se e somente se a instalação dos módulos pelo seu gerenciador de pacotes (apt-get, aptitude, Synaptic, etc.) não for possível ou acabar instalando versões anteriores à necessária.
Agora, faça figa, cruze os dedos, e verifique novamente como estão os módulos com o mesmo famoso comando ensinado lá em cima:

./checksetup.pl --check-modules

Se estiver tudo branquinho, então esta etapa foi superada!! Parabéns e continue aí embaixo com a próxima etapa!!


  • Instalando os Módulos Opcionais do Perl para o Bugzilla

Esta seção não é rigorosamente necessária para continuar a instalação, mas pode ser necessária dependendo da funcionalidade do Bugzilla que você desejar usar. Se quiser, pule para a seção seguinte. Caso contrário, instale os módulos que você realmente precisa dentre as opções abaixo. Os módulos HTML-Parser e libwww-perl possivelmente já estarão instalados. Seguem os comandos para a instalação dos outros.

Módulos GD e Chart:
apt-get install libchart-perl

Módulos GDTextUtil e GDGraph:
apt-get install libgd-graph-perl

Módulo Template-GD:
apt-get install libtemplate-plugin-gd-perl

Módulo MIME-tools:
apt-get install libmime-tools-perl

Módulo XML-Twig:
apt-get install libxml-twig-perl

Módulo perl-ldap:
apt-get install libnet-ldap-perl

Módulo Authen-SASL:
apt-get install libauthen-sasl-perl

Módulo RadiusPerl:
apt-get install libauthen-radius-perl

Módulo SOAP-Lite:
apt-get install libsoap-lite-perl

Módulos JSON-RPC e JSON-XS:
apt-get install libjson-rpc-perl

Módulo Test-Taint:
apt-get install libtest-taint-perl

Módulo HTML-Scrubber:
apt-get install libhtml-scrubber-perl

Módulo TheSchwartz:
apt-get install libtheschwartz-perl

Módulo Daemon-Generic:
apt-get install libdaemon-generic-perl

Note que alguns módulos não estão, aparentemente, disponíveis via gerenciador de pacotes. Assim, como na seção anterior, caso um dos módulos não seja encontrado ou não esteja na versão requerida, ele pode ser instalado diretamente pelo comando "install-module.pl", conforme descrito acima.


  • Instalando o Módulo do Perl no Apache2

Se o seu Apache2 já roda programas escritos em Perl, então talvez este passo também não seja necessário. Caso contrário, você precisa do módulo de Perl para o Apache. Este módulo faz com que o Apache aprenda a repassar para o executor Perl o código escrito em arquivos solicitados. Sem o módulo, os arquivos de código Perl serão tratados como arquivos de texto puro e serão simplesmente listados na tela de seu navegador.
Verificando se você tem o módulo Perl do apache:

ls /etc/apache2/mods-available/
[deve aparecer o arquivo perl.load na listagem]

Verificando se o módulo está ativo:

ls /etc/apache2/mods-enabled/
[deve aparecer o arquivo perl.load na listagem]

Caso o arquivo mencionado não esteja lá, o módulo não está instalado.
Instalando o módulo Perl do Apache2:

apt-get install libapache2-mod-perl2

Agora o arquivo deve aparecer em ambos os diretórios. Não se esqueça de que, sempre que uma mudança como estas é feita, é preciso que se reinicie o Apache. Você pode deixar para fazer isto depois, quando terminar de configurá-lo para o Bugzilla. Porém, caso deseje testar o carregamento do módulo, digite:

service apache2 restart

Você pode rodar de novo o verificador "./checksetup.pl --check-modules" e observar a linha "mod_perl" para averiguar se a versão do módulo do Perl para o Apache é maior ou igual à requerida. Embora esta linha esteja entre os módulos opcionais, ela é imprescindível caso você pretenda usar o Apache como servidor web através do módulo citado.


  • Gerando Automaticamente o Arquivo localconfig

A instalação está quase no fim!! Agora o seu Bugzilla precisa, para rodar perfeitamente, de acesso ao banco de dados. Para tanto, o programa lê um arquivo de configuração denominado "localconfig". Se você procurar este arquivo (e tiver feito tudo conforme indiquei até aqui!), notará que ele não existe (ainda). Não se preocupe, ele é gerado automaticamente pelo mesmo programa "checksetup.pl", porém rodado agora sem o parâmetro "--check-modules". Portanto, execute:

./checksetup.pl

[Quase no final deve surgir esta mensagem:]
This version of Bugzilla contains some variables that you may want to change and adapt to your local settings. Please edit the file ./localconfig and rerun checksetup.pl.

Muito bem!! Seu arquivo foi gerado!! Mas ainda está com as opções padrões... precisamos configurar qual schema (database) e qual usuário de banco o Bugzilla usará.


  • Criando Usuário de Banco e Schema (Database)

Este é um bom momento para se criar um usuário do banco de dados para o Bugzilla (jamais, jamais, sob qualquer hipótese, use o usuário "root"!!!), como também o seu Schema (ou Database). Como este artigo recomenda o uso do MySQL, abaixo estão os comandos do MySQL para executar estas funções. Caso você esteja usando o Oracle ou o PostgreSQL, busque na documentação de seu banco a maneira apropriada de se realizar estas operações.

Criando um usuário no MySQL:

mysql -u root -p
[digite a senha do banco, definida na instalação do mesmo, lá em cima]

mysql> create user 'bugzilla'@'localhost' identified by 'password';
[password é a senha que você deseja colocar, bugzilla é o nome do usuário (de até 16 caracteres). Não use nada óbvio!!]

Criando um schema para o Bugzilla:

mysql> create database bugzilla character set = 'utf8';
["bugzilla" será o nome do schema. Use o nome que quiser]

Concedendo privilégios para o novo usuário sobre o novo schema:

mysql> grant all privileges on bugzilla.* to 'bugzilla'@'localhost';


  • Configurando o Arquivo localconfig

Edite o arquivo "localconfig", de forma a acrescentar os dados do banco de dados e permitir o acesso correto do Bugzilla ao mesmo.

vi localconfig

Configure as opções:

$webservergroup = 'www-data';
[ou o nome do grupo linux usado pelo seu Apache]

$db_driver = 'mysql';
[pode ainda ser "oracle" ou "Pg", conforme o caso]

$db_host = 'localhost';
[caso acesse o banco de outra máquina, coloque o endereço do host aqui]

$db_name = 'bugzilla';
[ou o nome do schema ou database que você escolheu]

$db_user = 'bugzilla';
[ou o nome do usuário do banco que você escolheu]

$db_pass = 'password';
[ou a senha do usuário do banco que você escolheu]

Possivelmente as outras opções podem ficar como estão. Para testar se está tudo certinho e finalmente criar todas as suas tabelas dentro do banco de dados, rode novamente o programa:

./checksetup.pl

Se tudo correr bem, você verá um monte de tabelas sendo criadas. Ao final, serão solicitados dados para o administrador do Bugzilla, a saber:

- e-mail do Administrador do Bugzilla;
- Nome (real) do Administrador do Bugzilla;
- Senha (segura, por favor!!) do Administrador do Bugzilla.

Parabéns, seu Buzilla está configurado!! Resta apenas ensinar o Apache a encontrá-lo, que é seu último e derradeiro passo!!
NOTA: Uma vez terminada a configuração total, você poderá, via interface web do Bugzilla, criar mais usuários, inclusive outros usuários com perfil de Administrador.


  • Configurando o Servidor Web para o Bugzilla

A equipe do Bugzilla recomenda que se use o Apache Web Server. Este tutorial tem indicado o Apache desde o início; portanto, será explanada apenas a configuração deste servidor web. Se você usa, por qualquer motivo, outro servidor web, busque em suas documentações as configurações equivalentes.

Rode a página de teste do Bugzilla:

http://[seu servidor]/[pasta virtual]/testagent.cgi
[troque "seu servidor" pelo endereço ou IP de seu servidor, e "pasta virtual" pelo diretório onde o Bugzilla foi instalado]
Exemplo:
http://localhost/bugzilla/testagent.cgi

Se aparecer somente o texto "OK", então provável é que esteja tudo funcionando. Se o código do arquivo CGI for listado na tela, então o Apache ainda precisa entender melhor o Bugzilla. Possivelmente é isto que irá acontecer.

Existem duas maneiras de se configurar o Apache para rodar o Bugzilla: via mod_cgi e via mod_perl. Neste tutorial vamos varrer o mod_cgi, por ser mais econômico na memória e mais flexível (suporta múltiplas instâncias no mesmo servidor).
Abra o arquivo de configuração de seu Apache (apache2.conf ou httpd.conf, dependendo de sua distribuição):
vi /etc/apache2/apache2.conf

Acrescente as linhas:

<Directory /var/www/bugzilla>
AddHandler cgi-script .cgi
Options +Indexes +ExecCGI
DirectoryIndex index.cgi
AllowOverride Limit FileInfo Indexes
</Directory>
[troque o "/var/www/bugzilla" pelo diretório correto onde o seu Bugzilla está instalado]

Reinicie o Apache Web Server (lembra que eu pedi que você esperasse por este momento bem lá em cima?? Pois é, agora chegou a hora!!):

service apache2 restart

 Rode o "checksetup.pl" para pequenos ajustes automáticos. Este programa pode ser rodado a qualquer momento que se fizer necessário, sem prejuízo algum:

./checksetup.pl

Acesse novamente a página de testes lá em cima, no início desta seção. Se tudo funcionou, ela vai listar apenas uma linha contendo o texto:


OK mod_cgi

Parabéns!! Seu Bugzilla está instalado e rodando!! Acesse-o pelo endereço:

http://[seu servidor]/[pasta virtual]/
Exemplo:
http://localhost/bugzilla/

Se preciso, dê um Ctrl+F5 (função refresh ou recarregar do navegador) na página para ela acordar. Deve aparecer uma tela chamada "Main Page" e dizendo, sorridente, "Welcome to Bugzilla"!!

Agora você vai desejar certamente descansar um pouco, tomar um café, ou um chá, ou um mate, comentar este artigo dizendo como ele te ajudou tanto (ehehe) e, enfim, começar a cadastrar seus projetos e os componentes internos dos mesmos. Para tanto, clique em "Login", digite o e-mail que você informou para o Administrador, a senha que foi igualmente informada, e siga as instruções da página que surgirá.


  • Conclusões

Este foi um artigo um tanto quanto extenso que procurou deixar de forma bem clara e simples todos os (muitos!) passo da instalação completa do Bugzilla. Embora os passos sejam numerosos e a quantidade de tecnologias utilizadas seja grande e diversificada, o Bugzilla é amigável e vem com programas internos que facilitam e automatizam muito todo o processo.
A documentação é muito clara, porém não está em português. Uma pendência na documentação, no entanto, é que, com o caráter generalista que lhe é de costume, ela deixa passar muitos comando que podem instalar mais seguramente módulos e bibliotecas, como os comandos que utilizam o gerenciador de pacotes do Debian, o apt-get.
Evidentemente, outras distribuições de Linux, com seus próprios sistemas de pacotes e seus gerenciadores, substituirão os comandos informados aqui por comandos bem semelhantes. Assim, espero, com este artigo, ter ajudado a aprimorar o processo de instalação do Bugzilla e colaborar com aqueles que precisam de uma instalação confiável, detalhista e segura, onde todos os passos são avaliados e explicados.
Se você realmente gostou, deixe seu comentário e experiência. Poderá estar, com isto, ajudando a muitos outros que nos visitam em busca de informações e ajuda.

Como Instalar e Configurar o MySQL no Ubuntu

O MySQL é talvez o mais popular banco de dados do mundo. Gratuito e de código aberto, certamente, ainda que você não o use nos sistemas que você desenvolve, você precisará de ferramentas (muitas abertas, outras nem tanto) que demandam a utilização deste banco de dados. Em geral isto é uma coisa boa porque o MySQL é um banco rápido e leve. Este artigo expõe, de forma simples e direta, como instalar o MySQL em sistemas baseados em Debian, como o Ubuntu.
Apenas por curiosidade, segue uma lista de algumas ferramentas comuns que usam o MySQL, das quais talvez você necessite em seus projetos ou em sua empresa:

MediaWiki, ferramenta gratuita para criação de páginas Wiki.
Wordpress, ferramenta gratuita para criação de blogs.
Bugzilla, ferramenta gratuita para controle de bugs de um projeto.
FengOffice, gerenciador de projetos não tão gratuito.
OTRS, famoso gerenciador de tickets, muito útil para serviços de helpdesk e suporte.


  • Instalando o MySQL

Entre como administrador (root) do sistema e digite:

apt-get install mysql-server
(Quando for solicitado, defina uma senha segura de root do MySQL. Não deixe esta senha em branco!!)

O pacote "mysql-server" é, na verdade, um meta-pacote que aponta para a versão mais nova do banco disponível nos repositórios de sua distribuição.
Isto instala apenas o servidor do banco, ou seja, o banco em si. Este servidor vem com um cliente em modo texto bem simples, mas não instala diretamente nenhuma ferramenta gráfica de administração e manipulação do banco.

Nota 01: O download completo do banco e as principais dependências podem chegar a mais de 24MB e a instalação dos mesmos ocupará mais de 60MB de disco. Verifique a disponibilidade de seus discos.

Nota 02: Embora seja possível, evite instalar a versão disponível no portal do banco, a menos que você seja especialista no assunto, pois esta versão vem com opções de configurações consideradas inseguras.


  • Instalando Clientes Gráficos (GUI) do MySQL

É claro que só o banco e as ferramentas em modo texto disponíveis no servidor não vão deixar um DBA completamente feliz... neste caso, especialmente para uso profissional, será preciso que se instalem ferramentas gráficas que facilitem o trabalho de consultas, criação de queries e scripts, administração do banco de dados, etc.

IMPORTANTE: Recomenda-se que estas ferramentas abaixo sejam instaladas nos clientes, e não no servidor. Isto quer dizer: não as instale na máquina que vai servir o banco, mas sim nas máquinas pessoais de cada usuário ou administrador do banco.

1- Uma ferramenta simples, gratuita e ágil é o MySQL Query Browser, que pode ser instalada com o comando:

apt-get install mysql-query-browser

Com ela, você pode:

- Criar queries e scripts;
- Salvar históricos;
- Autocompletar comandos;
- Depurar scripts;
- dentre muitas outras funcionalidades!!


2- Muitas vezes, a instalação deste programa inclui automaticamente outro bem útil, o MySQL Administrator. Caso não o inclua na sua distribuição, instale-o com o comando:

apt-get install mysql-admin

Com o MySQL Administrator, você pode:

- Gerenciar usuários e bancos;
- Fazer e restaurar backups;
- Parar e reiniciar o banco;
- Obter informações críticas sobre o sistema onde o banco roda;
- Configurar grande parte dos parâmetros do banco;
- Medir o desempenho do banco;
- Visualizar logs;
- Acompanhar replicações;
- dentre muitas outras coisas!!


3- Ainda uma outra ferramenta extremamente útil na suíte de ferramentas gratuitas do MySQL é o MySQL Workbench, que pode ser instalado com o comando:

apt-get install mysql-workbench-gpl

Esta ferramenta possibilita:

- Muito do que as ferramentas anteriores permitem, adicionando:
- Gerenciamento completo de múltiplas instâncias do MySQL;
- Engenharia reversa do schemas e/ou scripts para geração de modelos EER (Modelos de Entidade-Relacionamento, aprimorados para suportar subclasses e superclasses, união de objetos, especialização e generalização).
Com as ferramentas acima, qualquer profissional estará bem munido para usar o MySQL tranqüilo e feliz!!

Espero ter ajudado, pessoal!! Boa sorte a todos e, claro, COMENTEM (e, se quiserem, cliquem no maiszinho aí embaixo!!)

quinta-feira, 21 de julho de 2011

Instalando Impressoras Multifuncionais HP no Linux

Antigamente, realizar a tarefa proposta pelo título deste artigo era como reescrever o Kernel: todos diziam que era possível, mas ninguém conseguia fazer realmente. Hoje em dia, esta tarefa está muito mais fácil e, com as breves dicas deste artigo, você conseguirá fazer sua impressora HP funcionar corretamente no Linux, de maneira bem mais fácil, rápida e eficiente do que em outros sistemas operacionais para os quais a HP envia o CD de instalação...


  • Instalando o hplip

O projeto hplin (HP Linux Imaging and Printing) é um projeto de código livre que é uma verdadeira mão-na-roda: ele se propõe a prover, de maneira eficiente e sem muita frescura, drivers para tantas impressoras multifuncionais HP quanto possível. E, realmente, a lista é enorme (verifique todas as impressoras suportadas aqui)!! Os drivers em geral suportam tanto o scanner da impressora HP quanto a impressão em si.
Assim, seu primeiro passo é clicar no link mencionado e verificar se a sua impressora está presente na lista (ou seja, se ela é suportada), especialmente observando a partir de qual versão do driver ela aparece. O hplip está presente em muitas das distribuições Linux mais recentes, mas pode ser instalado em virtualmente qualquer distribuição, em geral através do seu gerenciador de pacotes. Em distros baseadas em Debian, basta digitar, como root:

apt-get install hplip

Se você não sabe se ele está ou não instalado, ou quer saber qual a versão que você tem, digite:

dpkg-query -l hplip

Em poucos instantes seu driver estará instalado. Não consome milhares de clicks nem fica nada piscando na sua tela. Não consome mais memória nem fica travando seu sistema. Fantástico!!
Se você quer dicas mais detalhadas sobre configurações específicas, incluindo suporte a FAX para o Ubuntu, consulte o tutorial oficial aqui.


  • Instalando o XSane

No Linux, existe uma ótima coisa: é preciso que se tenha apenas um programa para escanear, e ele não está preso ao driver ou ao CD da impressora. Este programa se chama "xsane", que é na verdade um frontend gráfico amigável para o Sane Project (Scanner Access Now Easy). Para instalá-lo, caso já não esteja instalado por padrão, digite (em distros Debian, Ubuntu ou baseadas no Debian), como root:

apt-get install xsane xsane-common

Isto instalará tudo o que você precisa. Agora, provavelmente aparecerá um novo programa no grupo Graphics do seu menu de programas. Caso nada apareça, basta digitar, no terminal: xsane.
Certifique-se de ligar a impressora e plugá-la antes de rodar o xsane, pois ele procura por dispositivos assim que se carrega.


  • Instalando e Configurando uma Impressora no Linux

Talvez, ao plugar sua impressora USB, o seu Linux já seja esperto o suficiente para encontrá-la e instalá-la automaticamente, de forma que nada mais seja preciso. Então esta seção pode ser pulada. Caso isto não aconteça, ou caso sua impressora não seja USB, vamos ao procedimento manual...
Para imprimir, é preciso instalar o CUPS (Common UNIX Print System), que possivelmente já estará instalado por padrão. Verifique com o comando:

dpkg-query -l cups

Caso não esteja instalado, instale-o com o comando:

apt-get install cups

Uma vez instalado, o CUPS vai rodar como um servidor (um deamon) em sua máquina. O interessante deste programa é que ele não provê uma interface gráfica, mas sim uma interface web de administração. É feito desta forma para que fique mais fácil a manutenção de impressoras em servidores de impressão de rede, que devem ser acessados remotamente.
Acesso o CUPS pelo seu navegador, com o endereço:

http://localhost:631/
OBS: troque o "localhost" pelo IP ou nome da máquina

A porta padrão do CUPS é 631, mas esta porta pode ser trocada, caso se deseje. Toda a manutenção de impressoras (configurar a impressora, adicionar ou remover impressoras, verificar a fila, etc, etc.) pode ser feita com as opções do menu CUPS for Administrators. A interface web é muito simples e bastante auto-explicativa. Boa sorte!!


Bom, pessoal, espero ter ajudado com este breve tutorial!! Boa sorte e, claro, como sempre: COMENTEM!!

domingo, 3 de julho de 2011

Faxina no Linux: Limpando as Imagens Antigas do Kernel

Você pode não ter notado, mas algumas distribuições, como o Ubuntu, no momento de fazer uma grande atualização, podem baixar novas versões do Kernel, compilá-las automaticamente (ou ao menos instalar imagens pré-compiladas), gerando as chamadas "Imagens do Kernel" e aplicá-las nas opções do boot. Este procedimento não tem problema nenhum, salvo o fato de que as imagens são sempre acompanhadas pelo código-fonte, o que ocupa bastante espaço no seu disco. Além disso, polui a tela de boot do LILO ou GRUB com opções diferentes para cada imagem de kernel, desde a mais antiga, que veio com a instalação do sistema, até as mais recentes baixadas e instaladas.
Como limpar estas imagens de Kernel seguramente, remover as centenas de megas em fontes ocupando seu disco rígido e limpar as entradas das opções de boot do GRUB? Este artigo trata exatamente desta dica, e creio que possa ser de grande valia para muitos usuários Linux, especialmente aqueles que costumam fazer atualizações constantes.

Em sistemas baseados em Debian, como o Ubuntu, para rodar uma atualização completa, basta que se digite, como root:

apt-get dist-upgrade

A atualização do sistema pode reportar, muitas vezes, uma atualização das imagens do Kernel no meio do monte de pacotes sendo atualizados. Isto pode ser verificado nas linhas em negrito do exemplo abaixo:

apt-get dist-upgrade
Lendo listas de pacotes... Pronto
Construindo árvore de dependências      
Lendo informação de estado... Pronto
Calculando atualização... Pronto
Os NOVOS pacotes a seguir serão instalados:
  linux-headers-2.6.32-32 linux-headers-2.6.32-32-server linux-image-2.6.32-32-server
Os pacotes a seguir serão atualizados:
  apparmor apparmor-utils apt apt-transport-https apt-utils at base-files bind9-host binutils bsdutils dhcp3-client dhcp3-common dnsutils fuse-utils grub-common grub-pc initscripts landscape-common libapache2-mod-php5 libapache2-svn libapparmor-perl libapparmor1 libapr1 libbind9-60 libblkid1 libc-bin libc-dev-bin libc6 libc6-dev libcurl3-gnutls libdbus-1-3 libdbus-glib-1-2 libdns64 libfuse2 libgssapi-krb5-2 libisc60 libisccc60 libisccfg60 libk5crypto3 libkrb5-3 libkrb5support0 libldap-2.4-2 liblwres60 libpam-modules libpam-runtime libpam0g libpcsclite1 libplymouth2 libssl0.9.8 libsvn1 libuuid1 libxml2 linux-firmware linux-headers-server linux-image-server linux-libc-dev linux-server login logrotate mount ntpdate openssh-client openssh-server openssl passwd perl perl-base perl-modules php5 php5-common plymouth plymouth-theme-ubuntu-text python-smartpm rsync subversion sysv-rc sysvinit-utils tzdata upstart util-linux uuid-runtime w3m xkb-data
83 pacotes atualizados, 3 pacotes novos instalados, 0 a serem removidos e 0 não atualizados.
É preciso baixar 96,8MB de arquivos.
Depois desta operação, 216MB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]?

O novo Kernel é empacotado em pacotes com outros nomes, então, para o gerenciador de pacotes, não é considerado uma atualização, e sim uma gama de pacotes novos a serem instalados. Observe que existem muitos pacotes sendo de fato atualizados, o que não vai consumir espaço excedente quase nenhum, mas tem uma nova versão do Kernel a ser baixada, o que vai consumir 216MB de espaço, já que é preciso que se baixem todos os fontes. Naturalmente, a versão antiga, que está em pacotes de outros nomes, será mantida por padrão.
Depois de selecionar "S" para a pergunta e a atualização acabar, você já terá ocupado mais de 300MB deste sistema aí em cima sendo atualizado. Então, vamos limpar os arquivos de backup dos pacotes que foram baixados e atualizados. Se a atualização funcionou, não precisamos mais deles. Para tanto, digite:

apt-get clean

TESTE: Agora, dê um boot e certifique-se de que o sistema esteja funcionando perfeitamente, ou seja, a nova imagem do Kernel funciona e está estável (para fazer isto em modo texto, digite: "shutdown -r now"). Em avassaladora massa de vezes tudo estará perfeitamente estável, mas não custa fazer o teste, especialmente em servidores. Como o Pajezinho sempre diz, "um homem prevenido vale por cinco"!!

Estando tudo perfeito, vamos apagar os Kernels antigos do sistema:

apt-get autoremove

Respondendo "S" à pergunta gerada com o comando acima, será possível eliminar os pacotes referentes a Kernels antigos, aliviando centenas de megas de seu disco rígido. Contudo, isto ainda não limpa as imagens que estão associadas ao boot e à tela inicial do GRUB. Para limpá-las, é preciso que se vá ao diretório "/boot" e se apague os arquivos certos.

cd /boot
ls -1
abi-2.6.32-26-generic
abi-2.6.32-27-generic
abi-2.6.32-28-generic
abi-2.6.32-29-generic
abi-2.6.32-30-generic
abi-2.6.32-31-generic
abi-2.6.32-32-generic
config-2.6.32-26-generic
config-2.6.32-27-generic
config-2.6.32-28-generic
config-2.6.32-29-generic
config-2.6.32-30-generic
config-2.6.32-31-generic
config-2.6.32-32-generic
grub
initrd.img-2.6.32-26-generic
initrd.img-2.6.32-27-generic
initrd.img-2.6.32-28-generic
initrd.img-2.6.32-29-generic
initrd.img-2.6.32-30-generic
initrd.img-2.6.32-31-generic
initrd.img-2.6.32-32-generic
memtest86+.bin
System.map-2.6.32-26-generic
System.map-2.6.32-27-generic
System.map-2.6.32-28-generic
System.map-2.6.32-29-generic
System.map-2.6.32-30-generic
System.map-2.6.32-31-generic
System.map-2.6.32-32-generic
vmcoreinfo-2.6.32-26-generic
vmcoreinfo-2.6.32-27-generic
vmcoreinfo-2.6.32-28-generic
vmcoreinfo-2.6.32-29-generic
vmcoreinfo-2.6.32-30-generic
vmcoreinfo-2.6.32-31-generic
vmcoreinfo-2.6.32-32-generic
vmlinuz-2.6.32-26-generic
vmlinuz-2.6.32-27-generic
vmlinuz-2.6.32-28-generic
vmlinuz-2.6.32-29-generic
vmlinuz-2.6.32-30-generic
vmlinuz-2.6.32-31-generic
vmlinuz-2.6.32-32-generic

O comando "ls -1" lista os arquivos e diretórios todos em uma única coluna. Usei este comando para ficar mais fácil a leitura da saída dele aqui no blog. Obverse que temos aí uma verdadeira confusão: uma sopa de kernels e imagens que foram instalados, desde o 2.6.32-26 até o 2.6.32-32. O mais recente é aquele que instalamos lá em cima, o 2.6.32-32. Se ele está rodando e funcionando perfeitamente (conforme nosso teste acima), então podemos seguramente apagar todos os outros:

rm *-26* *-27* *-28* *-29* *-30* *-31*

Cuidado com o comando acima!!! Um dígito errado e você poderá estar prejudicando permanentemente seu sistema!! Apague apenas os arquivos cujos nomes apontam para as versões ANTIGAS do Kernel, nunca os que apontam para a mais recente!!
Depois disso, basta atualizar o GRUB ou o LILO (dependendo de qual você use) para que ele não aponte mais para as imagens antigas (até porque, elas foram apagadas). Para atualizar o LILO, é preciso que se edite manualmente o seu arquivo de configurações, removendo as linhas correspondentes às imagens apagadas. Para atualizar o GRUB (que é bem mais fácil!!), basta que se rode o seguinte comando:

update-grub2
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-32-generic
Found initrd image: /boot/initrd.img-2.6.32-32-generic
Found memtest86+ image: /boot/memtest86+.bin
done

Prontinho!!!! O GRUB encontrou apenas uma versão do Kernel, que é a mais recente!! Você já pode reiniciar o sistema e ver a tela limpinha do GRUB funcionando. Pode verificar seu disco para notar o quanto de espaço foi recuperado graças ao comando "apt-get autoremove" (para verificar o disco, use o comando "df -h").


Observações Importantes:

1- Evite colocar esta operação em scripts. São operações delicadas e muito pouco rotineiras. Faça-as com carinho e cuidado, manualmente;
2- Em servidores, assegure-se do momento mais propício para reiniciar a máquina;
3- Caso você tenha compilado manualmente uma versão do Kernel, assegure-se de deixá-la intacta. Tudo que não for removido será automaticamente detectado pelo GRUB e permanecerá válido;
4- Se você tiver medo na hora de apagar os arquivos do /boot, faça um backup deles. Caso necessário, apague os arquivos um a um, sem usar o "*", de forma a que você não se engane nem apague um arquivo errado;
5- Se você fez tudo isso e usa o indexador padrão do Linux, este é um bom momento para rodar o comando "updatedb". Não vai lhe render muito mais espaço em disco, mas vai remover uma série de entradas dos índices e vai deixar a busca mais leve;
6- Evidentemente, faça absolutamente todas estas operações como superusuário (root). De outro modo, nenhuma delas funcionará.

Bom, espero ter ajudado!! Boa sorte e, lembrem-se: COMENTEM!!!

segunda-feira, 27 de junho de 2011

Traduzindo Open Office e Corretor Ortográfico para Português do Brasil

Notável que o Open Office se tornou imprescindível em simplesmente qualquer distribuição Linux, das mais tradicionais às mais inconvencionais!! Para quem usa muitas destas, especialmente as criadas e lançadas em países que não falam português (como o caso do Ubuntu, por exemplo), já deve ter notado que o Open Office normalmente vem todo em inglês. E pior ainda: não tem o famoso corretor ortográfico funcionando!! Como corrigir isso??
A solução é bem simples: basta que se instale os pacotes de linguagem apropriados, e o seu Open Office vai ficar todo traduzido, além de voltar (ou passar) a falar português corretamente, inclusive com o corretor ortográfico (Spelling Check) funcionando!!
Para quem usa distribuições baseadas em Debian (como Ubuntu), para adicionar o idioma português do Brasil basta digitar, no terminal (como root, claro):

apt-get update
apt-get install openoffice.org-l10n-pt-br myspell-dictionary-pt-br openoffice.org-help-pt-br

Isto instalará três pacotes novos, a saber:

openoffice.org-l10n-pt-br: É a tradução do programa inteiro para o português brasileiro.
myspell-dictionary-pt-br: É a tradução do corretor ortográfico (dicionário).
openoffice.org-help-pt-br: É a tradução do help (ajuda).

Note que esta mesma técnica pode ser utilizada para traduzir o Open Office para qualquer linguagem, bastando que se substitua o "pt-br" do nome dos pacotes pela sigla da linguagem requerida (ex: "fr" para francês, "it" para italiano, etc.). Também é possível, desta maneira, que se acrescente várias linguagens e vários dicionários no Open Office, o que é extremamente útil para quem trabalha com línguas, traduções, turismo, relações internacionais, aeroportos, dentre muitas outras aplicações...
Bom, espero ter podido ajudar!! Boa sorte!!

terça-feira, 15 de fevereiro de 2011

Instalando a Suíte Ubuntu Studio no Ubuntu

O Ubuntu Studio nada mais é do que uma modificação do Ubuntu para compreender uma série de programas de áudio, vídeo e multimídia. Assim como o Edubuntu, todos estes programas, seus temas e suas configurações especiais (inclusive o Kernel do Ubuntu Studio) podem ser fácil e seguramente instalados via apt-get, a partir de uma distribuição padrão do Ubuntu ou Kubuntu.
Claro: instalar quilos e quilos de programas que vêm com o Ubuntu Studio via apt-get, além de todas as suas dependências, não é tarefa fácil!! Para diminuir esta tortura, o repositório padrão do Ubuntu tem alguns meta-pacotes que englobam todas as seções do Studio que se deseje instalar!! Este artigo mostra a lista dos meta-pacotes e ensina como instalá-los!!


  • Pacotes e Meta-pacotes do Ubuntu Studio

Um meta-pacote é um pacote que, ao invés de conter um programa ou biblioteca, contém um monte de referências a outros programas, que são computados como dependências. Assim, por ser um pacote vazio, ele na verdade não instala nada, mas exige um monte de dependências que serão forçosamente instaladas ao se instalar o meta-pacote em questão. Esta é uma maneira simples e ágil de se agrupar programas e bibliotecas diferentes em um único pacote.
Abaixo, a lista completa de pacotes e meta-pacotes do Ubuntu Studio. Note que não necessariamente é preciso que se instale todos estes pacotes!! Você pode instalar apenas aqueles que interessam.

ubuntustudio-audio: contém referências para toda a coleção de aplicativos para criação e edição de áudio do Ubuntu Studio.

ubuntustudio-audio-plugins: plugins do projeto LADSPA e DSSI.

ubuntustudio-controls: este de fato não é um meta-pacote, mas um programa mesmo. Trata-se de um configurador gráfico de opções internas de Áudio e Vídeo desenhado especificamente para o Ubuntu Studio.

ubuntustudio-default-settings: pacote com configurações padrão para o Ubuntu Studio e um tema gráfico personalizado para o Desktop (o Ubuntu Studio usa o Gnome por padrão, mas nada impede de utilizar o seu artwork no KDE, se desejado).

ubuntustudio-desktop: todos os aplicativos responsáveis pela parte gráfica do sistema, incluindo o gerenciador de janelas.

ubuntustudio-font-meta: algumas fontes para aprimorar sua experiência no uso dos programas gráficos.

ubuntustudio-gdm-theme: se você usa o Gnome e o GDM (Gnome Desktop Manager) para fazer login, talvez se interesse em instalar um tema personalizado do Ubuntu Studio para o GDM. Desculpe, não existe um equivalente para o KDM...

ubuntustudio-graphics: contém referências para toda a coleção de aplicativos para criação e edição gráfica em 2D e 3D do Ubuntu Studio.

ubuntustudio-icon-theme: contém o tema de ícones padrão do Ubuntu Studio.

ubuntustudio-look: contém referências a todos os pacotes de temas e perfumaria gráfica do Ubuntu Studio (inclusive o de sons ali embaixo). Serve como um atalho para não precisar explicitá-los um por um.

ubuntustudio-menu: instala um menu para o Ubuntu Studio, com submenus "Áudio" e "Vídeo".

ubuntustudio-screensaver: como o próprio nome diz, instala protetores de tela (oriundos do gnome-screensaver).

ubuntustudio-sounds: mais um item de perfumaria: sons personalizados para o Desktop do Ubuntu Studio.

ubuntustudio-theme: configurações do GTK e do Metacity para o visual do Ubuntu Studio.

ubuntustudio-video: contém referências para toda a coleção de aplicativos para criação e edição de vídeos do Ubuntu Studio, incluindo ripadores de DVD.

ubuntustudio-wallpapers: contém lindos panos de fundo para seu ambiente de trabalho do Ubuntu Studio!!


  • Finalmente, Instalando!!

Bom, tenha em mente que a instalação destes pacotes vai obrigar que se baixe e se instale uma enorme quantidade de dependências e que esta operação não é rápida, mesmo que sua conexão seja boa. Portanto, faça a instalação em um momento apropriado. Toda a instalação deve ser feita como root, evidentemente.

Uma sugestão para quem vai utilizar os programas de música e áudio:

apt-get install ubuntustudio-audio ubuntustudio-audio-plugins ubuntustudio-controls ubuntustudio-default-settings ubuntustudio-desktop ubuntustudio-look ubuntustudio-menu ubuntustudio-screensaver
apt-get clean

Uma sugestão para quem vai usar os programas de gráficos e vídeo:

apt-get install ubuntustudio-video ubuntustudio-font-meta ubuntustudio-controls ubuntustudio-default-settings ubuntustudio-desktop ubuntustudio-look ubuntustudio-menu ubuntustudio-screensaver
apt-get clean


Agora é só esperar o comando baixar e instalar tudo isso!! Boa sorte!!

quinta-feira, 3 de fevereiro de 2011

Wireless sem funcionar no Ubuntu 10.10

Neste post descrevo o que fiz para colocar minha rede sem fio para funcionar no Ubuntu 10.10.

O dispositivo de rede (Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)) era reconhecido via lspci, mas o networkmanager não mostrava redes para conectar.

Ao invés de usar o driver sta que vem no Ubuntu eu usei o do fabricante. Segui as instruções do próprio fabricante que resumo aqui:

1. Instalar as dependências necessárias:

sudo apt-get install build-essential linux-headers-generic
sudo apt-get build-dep linux

2. Baixar e descompactar o driver do fabricante (o meu é o de 32 bits)

3. Compilar o driver:
make

4. Remover possíveis módulos de drivers anteriores:

sudo rmmod b43
sudo rmmod ssb
sudo rmmod wl

5. Garantir que ssb e b43 não serão mais usados

sudo echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf
sudo echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf

6. Fazer backup do driver antigo (se é que ele serve para alguma
coisa). É bom confirmar o diretório dele. Na minha máquina estava em
/lib/modules/2.6.35-24-generic/updates/dkms/

mv /lib/modules/2.6.35-24-generic/updates/dkms/wl.ko /lib/modules/2.6.35-24-generic/updates/dkms/wl.ko.orig

7. Copiar o driver compilado para o local correto (verificar o local
em sua máquina):

sudo chown root.root wl.ko
cp wl.ko /lib/modules/2.6.35-24-generic/updates/dkms/

8. Fazer backup do ramfs e gerar um novo:

cp /boot/initrd.img-`uname -r` ~/
sudo update-initramfs -u
sudo reboot

Ao reiniciar a rede já voltou ao normal

quinta-feira, 27 de janeiro de 2011

Como Instalar o Pd-Extended no Debian e Ubuntu?

O Pd (ou Pure Data) é um programa de síntese e manipulação digital de áudio extremamente poderoso e vastamente utilizado por profissionais de áudio, pesquisadores, estudantes, compositores, dentre vários outros especialistas da área de áudio, som e música. A instalação normal do programa vem apenas com um pacote básico de recursos e apetrechos, mínimo para que o programa funcione. Entretanto, existem pacotes adicionais com milhares de novos objetos e algoritmos pré-implementados que se tornam facilmente uma mão na roda para quem trabalha com Pd.
Instalar estes pacotes adicionais não é complexo e pode ser feito pelo seu gerenciador de pacotes, se você usa Debian ou Ubuntu!! Basta seguir a dica abaixo:


  • Editando o /etc/apt/sources.list

Os pacotes adicionais foram reunidos todos em um grande pacote DEB. No entanto, este pacote não está nos repositórios padrões tradicionais. Assim, é preciso adicionar um repositório novo à seu banco de repositórios. Fazer isto é simplesmente editar o arquivo /etc/apt/sources.list (como root!!):

vi /etc/apt/sources.list

Agora acrescente a linha correspondente à sua distro e versão, de acordo com as opções abaixo (havendo dúvidas, estes endereços também estão dispostos no site oficial, clicando em http://puredata.info/docs/faq/debian):

Para Debian:
 # Debian/stable
deb http://apt.puredata.info/releases stable main
# Debian/testing
deb http://apt.puredata.info/releases testing main
# Debian/sarge
deb http://apt.puredata.info/releases sarge main
# Debian/etch
deb http://apt.puredata.info/releases etch main
# Debian/lenny
deb http://apt.puredata.info/releases lenny main
# Debian/squeeze
deb http://apt.puredata.info/releases squeeze main

Para Ubuntu:
# Ubuntu/dapper 06.04 LTS
deb http://apt.puredata.info/releases dapper main
# Ubuntu/edgy 06.10
deb http://apt.puredata.info/releases edgy main
# Ubuntu/feisty 07.04
deb http://apt.puredata.info/releases feisty main
# Ubuntu/gutsy 07.10
deb http://apt.puredata.info/releases gutsy main
# Ubuntu/hardy 08.04 LTS
deb http://apt.puredata.info/releases hardy main
# Ubuntu/intrepid 08.10
deb http://apt.puredata.info/releases intrepid main
# Ubuntu/jaunty 09.04
deb http://apt.puredata.info/releases jaunty main
# Ubuntu/karmic 09.10
deb http://apt.puredata.info/releases karmic main
# Ubuntu/lucid 10.04 LTS
deb http://apt.puredata.info/releases lucid main

Agora, salve o arquivo e atualize o repositório de pacotes local, digitando, como root:

apt-get update


  • Instalando o Pacote pd-extended

Agora é bem fácil: seu Linux já sabe como baixar o pacote DEB que você necessita, bastando apenas que você solicite a sua instalação, com o comando abaixo (como root!!). Responda "sim" para as perguntas que forem formuladas (não se preocupe com a mensagem de que o pacote não pôde ser verificado quanto à autenticação):

apt-get install pd-extended

Lendo listas de pacotes... Pronto
Construindo árvore de dependências
Lendo informação de estado... Pronto
Os pacotes extra a seguir serão instalados:
tcllib
Os NOVOS pacotes a seguir serão instalados:
pd-extended tcllib
0 pacotes atualizados, 2 pacotes novos instalados, 0 a serem removidos e 12 não atualizados.
É preciso baixar 26,9MB de arquivos.
Depois desta operação, 16,9MB adicionais de espaço em disco serão usados.
Você quer continuar [S/n]? S
AVISO: Os pacotes a seguir não podem ser autenticados!
pd-extended
Instalar estes pacotes sem verificação [s/N]? s

Em instantes seu Pd estará turbinado!! Se ele estiver aberto durante a instalação, convém que seja reiniciado. Salve seus trabalhos, feche e abra de novo o Pure Data. Bom proveito!!

segunda-feira, 20 de julho de 2009

Ativando e Desativando Serviços no Linux e no Ubuntu Com Upstart

  • Atenção!! - Acrescentado em 10/12/2009
Se você roda Ubuntu/Kubuntu 9.10, este artigo não vai te ajudar tanto, mas os comentários sim. Vá direto a eles. Para versões anteriores do Ubuntu e outras tantas distribuições, mesmo as mais recentes, o artigo mantém-se válido e certo.


  • Como desligar o modo gráfico nos sistemas Linux tradicionais??
"No início, não havia nada. Então, Deus carregou o INIT..."

Desligar o modo gráfico é uma das coisas mais antigas de sistemas linux e pode ser feito tradicionalmente no arquivo /etc/inittab. Ou podia... já que nas versões mais novas do Ubuntu a coisa mudou de figura!! Como é isso?? Bom, vamos aos poucos...
Primeiro, é preciso saber como isto tudo funciona. No Linux, o primeiro processo a rodar é um programa chamado INIT. O INIT é o responsável por carregar todo o sistema, roda com prioridade de root e é o primeiro a iniciar e o último a terminar. Se você tem dúvidas, digite:

ps -e | grep in


e veja quem é o processo de número "1". Isto mesmo, o INIT!! É Deus no céu e o INIT na Terra.
O INIT opera tradicionalmente em 7 diferentes modos, chamados runlevels, a saber:

0 - halt;
1 - Inicia normalmente, porém em monousuário. Usado para manutenção pesada na máquina;
2-5 - Multiusuário, sendo 3 = modo texto e 5 = modo gráfico;
6 - Encerra todos os aplicativos e reinicia a máquina.

Quando queremos mudar o modo em que o INIT está rodando, basta digitar "init [modo]". Assim, se queremos desligar a máquina, basta digitar "init 6", por exemplo!! Bem simples e fácil!!
Existe uma maneira de se selecionar um modo padrão para a inicialização do sistema. Basta irmos no arquivo /etc/inittab e vermos o que tem nele. Ali se encontram uma série de informações para configurar cada modo. É possível que se encontre uma linha parecida com esta:

# The default runlevel.
id:5:initdefault:

Isto indica que o padrão do sistema é iniciar em modo 5 (multiusuário e modo gráfico). Imagine que queremos configurar um servidor e, portanto, não precisamos do modo gráfico, mas apenas modo texto (o servidor vai ser acessado remotamente, sem necessidade da telinha bonitinha de login do KDM ou GDM). Basta trocar o modo de "5" para "3":

# The default runlevel.
id:3:initdefault:

Antigamente bastava isto e pumba: estamos em modo texto!! Mas observe que isto não funciona diretamente no Debian (ou distros baseadas nele)... por quê??


  • Onde Estão os Scripts do INIT?

O INIT tem, para cada modo, uma série de links simbólicos para os executáveis de serviços do sistema. Estes executáveis ficam todos amontoados no diretório:

/etc/init.d/


Mas cada modo (runlevel) do init tem um diretório a parte, contendo os seus links para suas configurações próprias dos executáveis de serviços do sistema. Estes diretórios são:

/etc/rc0.d/ /etc/rc1.d/ /etc/rc2.d/
/etc/rc3.d/ /etc/rc4.d/ /etc/rc5.d/
/etc/rc6.d/

Até aí, tudo certo. O problema é que, no Debian, estes links simbólicos dizem algo mais: se eles começam com a letra "S", significa "Start", ou seja, o serviço será forçosamente iniciado. Para pará-lo, é preciso renomear o arquivo do link simbólico de modo que ele inicie com a letra "K" (de "Kill").
Assim, simplesmente mudar para o modo 3 não retira o carregamento do KDM (ou GDM), por exemplo... é preciso, além disto, renomear o link simbólico respectivo (algo como "S30kdm") para "K30kdm".
Fazendo isto, você acaba de configurar seu sistema para iniciar em modo texto. Parabéns!!


  • O Ubuntu e Outros Com Upstart

A partir das novas versões do Ubuntu (e Kubuntu, etc.), o iniciador não é mais o nosso bom e velho conhecido e camarada, o INIT, mas sim o novo Upstart. Desenvolvido inicialmente para o Ubuntu, o Upstart se propõe a ser mais eficiente e seguro que o INIT. Isto muda algumas coisas... a primeira delas é que não há mais o arquivo /etc/inittab, obviamente, já que não temos INIT nenhum. Outro problema é como ativar ou desativar o carregamento automático de serviços durante o boot.
Para resolver estes problemas insanos, apresento um comando muito simples e amigo de todas as horas, o update-rc.d, que não é exclusivo destas distros e já existe mesmo no Debian.
O update-rc.d se propõe a ativar ou desativar serviços dos scripts de inicialização do sistema de maneira mais fácil e automática. Seu uso é feito da seguinte maneira:

update-rc.d -f [servico] remove


Imagine que instalamos o SSH no Debian. Por padrão, qualquer serviço instalado no Debian é ativado automaticamente para inicialização nos modos 2-5. Assim, para que ele não carregue no boot, precisamos digitar:

update-rc.d -f ssh remove


O parâmetro "-f" significa "force" e força a remoção do link simbólico, mesmo existindo seu alvo correspondente em /etc/init.d.
Para reativar o carregamento do serviço durante o boot, basta digitar:

update-rc.d ssh defaults


Simples, né?? Vamos complicar um pouquinho então... imagine que você agora quer reativar o serviço, mas quer definir exatamente o momento em que ele vai ser carregado. Isto é definido pelo número inteiro de 2 dígitos logo após a letra "S", no nome do link simbólico. Este número define a prioridade, ordem de carregamento dos serviços. Assim, se o nosso SSH deverá ser carregado na posição 20 (antes do item de posição 21 e após o de posição 19), basta digitar:

update-rc.d ssh defaults 20

Isto criará o arquivo "S20ssh" em todos os /etc/rcX.d, sendo X entre 2 e 5 (inclusive).
Nota: para o SSH, que não é um serviço tão essencial e usualmente pode necessitar de outros serviços, isto pode ser um número muito pequeno. Tente 40 ou 50. ;-)
É possível também se definir uma prioridade diferente para a ativação e desativação do serviço. Imagine que nosso serviço deverá ser ativado na posição 20, mas desativado na posição 70 (para desativação, é considerada a ordem inversa, ou seja, são desativados os itens dos números maiores para os menores). Assim, definimos:

update-rc.d ssh defaults 20 70

Podemos ainda definir quais modos (runlevels) terão nosso serviço ativo ou não, informando os números dos modos e a nossa opção de Start ou Kill, conforme a seguir:

update-rc.d ssh start 20 2 3 4 5 . kill 70 0 1 6 .


Ou ainda, mudando de prioridade (ordem) entre os modos:

update-rc.d ssh start 20 2 4 . start 50 3 5 . kill 70 0 1 . kill 90 6 .

Isto inicia o SSH nos modos 2 a 5 e o pára nos modos 0, 1 e 6. No segundo comando, a prioridade não é a mesma para todos os modos. Serão iniciados com maior prioridade (20) apenas os modos 2 e 4, enquanto o 3 e 5 serão iniciados na posição 50, ou seja, posteriormente. Pode ser que estes modos tenham mais serviços, e acabem "empurrando" o SSH mais para a frente. Analogamente, nos modos 0 e 1, o SSH morre com prioridade 70, enquanto que no modo 6, onde talvez mais serviços serão desativados, ele morre com prioridade 90.


  • Enfim, Como Desativar o Modo Gráfico no Linux?

Como o modo gráfico é um serviço, basta desativar este serviço. Se seu Gerenciador de Janelas é o KDE, o serviço é o KDM (K Desktop Manager). Se é o Gnome, então o serviço será o GDM (Gnome Desktop Manager). Se não é nenhum destes, então informe-se com sua distro qual é o seu gerenciador de janelas e qual o serviço que ele dispara... Mas, para desativá-lo, utilize, genericamente, o comando:

update-rc.d -f kdm remove [ou]
update-rc.d -f gdm remove


  • Conclusão

Ativar ou desativar o modo gráfico no Linux é apenas compreender que o modo gráfico é um serviço, e este pode ser cadastrado via links simbólicos nos diversos modos de carregamento do sistema, assim como todos os outros serviços (como o ssh, seu servidor de e-mail, de impressão, de som, banco de dados, firewall, DHCP, FTP, servidor HTTP, etc.). Se seu gerenciador de inicialização é o INIT, isto pode ser feito de duas maneiras: manualmente, ou com o comando update-rc.d. Se você usa o Upstart em lugar do INIT (que é opção padrão no Ubuntu 9.04), então o melhor e mais prático é usar o comando update-rc.d.
O Upstart é uma opção ao INIT, desenvolvida para o (e pelo pessoal do) Ubuntu. É mais moderno e seguro, de arquitetura orientada a eventos. Está presente desde o Ubuntu 6.10, Fedora 9, no Debian (como opção), dentre outras distros. Porém, é mais chatinho de configurar os serviços. Assim, a melhor opção é utilizar o comando update-rc.d.

O objetivo deste artigo é ajudar tanto a quem está configurando seus serviços pela primeira vez quanto àqueles que sempre o fizeram manualmente e, de repente, sentiram-se inseguros com o Upstart.
Espero ter ajudado a todos!! E, como sempre, não fique calado diante do Pajé!!!! COMENTE!!!!!