sexta-feira, 1 de dezembro de 2006

Como listar os maiores arquivos

Como encontrar os maiores arquivos de um diretório e seus subdiretórios, no Linux? Por exemplo, para listar os 50 maiores arquivos, use o comando abaixo:

find . -ls | sort -n -k 7 | tail -n 50

Veja que são três comandos, find, sort e tail.
"find -ls" encontra todos os arquivos deste diretório e dos seus subdiretórios, e exibe cada um como se fosse executado um "ls -dils" contra ele.
"sort -n -k 7" realiza a ordenação da listagem, baseando-se na 7ª coluna e tratando os valores como números.
"tail -n 50" exibe as 50 últimas linhas da listagem. Se for necessário exibir, por exemplo, os 100 maiores arquivos, é este comando que deverá ser ajustado.

Ok! Qualquer dúvida entre em contato.

Google inaugura nova sede no Brasil e aposta em crescimento

Fonte: Folha Online / Reuters, 01/12/06.

O Google inaugurou sua nova sede no Brasil nesta quinta-feira, passando a ocupar um andar inteiro de um edifício de alto padrão, localizado em um dos novos centros de tecnologia de São Paulo.

A companhia, com 60 funcionários em São Paulo, está ocupando um espaço de 1.700 m2 na avenida Faria Lima. O espaço é suficiente para outros 60 colaboradores e equipado com mesa de pebolim e vários televisores de tela plana.


Alexandre Hohagen, diretor da Google Brasil

Seguindo a filosofia da sua matriz, nos Estados Unidos, um grande espaço serve refeições aos funcionários, que possuem à disposição bombons, salgadinhos, refrigerantes e sucos.

A nova sede, apelidada de Googleplex, servirá para atender às necessidades do Google no Brasil, que planeja aumentar o seu faturamento em 200% em 2007, disse o diretor geral da companhia no país, Alexandre Hohagen. "Nosso resultado em 2006 foi cerca de 80% superior às previsões", afirmou, sem revelar cifras.

A companhia --que tem sido alvo de ações legais promovidas por autoridades brasileiras, por conta de crimes cometidos no site Orkut-- planeja lançar nos próximos três meses versões localizadas para o país dos serviços Click2Call e Google Maps, disse o executivo.

O primeiro é destinado a internautas para contatar empresas associadas por chamadas telefônicas via internet (VoIP). O segundo traz mapas detalhados de cidades, onde é possível traçar rotas, e que, nos EUA, serve para venda de publicidade de pequenas empresas.

Atualmente, o Google brasileiro vende espaços publicitários no YouTube para a fabricante nacional de eletroeletrônicos Gradiente e para o serviço de acesso rápido à internet Speedy, da Telefonica. "Faz sentido, em termos de negócios, possuirmos um parceiro de conteúdo para o YouTube no Brasil", afirmou o executivo, sem dar mais detalhes.

terça-feira, 28 de novembro de 2006

Comissão Européia convoca países europeus a combaterem spam

Fonte: Paul Meller, IDG Now!, 28/11/06

A Comissão Européia lançou aos países membros da comunidade européia o desafio de combater a disseminação spams, spywares e softwares maliciosos, que geraram perda de 39 bilhões de euros ao mundo em 2005 (segundo a Ferris Research) e representam entre 54% e 85% do total de mensagens enviadas, segundo consultorias como Symantec e MessageLabs.

A comissária para Sociedade da Informação e Mídia Viviane Reding ressaltou que a Holanda conseguiu reduzir em 85% o envio de spam no país com uma unidade formada por cinco funcionários trabalhando em tempo integral e 570 mil euros em equipamentos e afirmou que gostaria de ver outras nações assumindo a mesma postura.

A Finlândia é outro exemplo no combate às mensagens indevidas. Um filtro implementado pelo país permitiu reduzir o percentual de spam de 80% para 30%.

Segundo Reding, se no prazo de um ano os países não conseguirem reduzir a emissão de spam, a Comissão vai considerar a criação de novas medidas legislativas para coibir a prática.

A comissária ressaltou, no entanto, que a colaboração de países de fora da União Européia também é necessária para combater as mensagens indesejadas.

Segundo dados da Sophos, do início de novembro, os principais emissores de spams do mundo são os Estados Unidos, com 21,6% de participação. O Brasil aparece na sétima posição, enviando 4,7% das mensagens indesejadas do mundo.

terça-feira, 21 de novembro de 2006

Substituição de String em Vários Arquivos

Você já precisou alguma vez substituir uma string por outra em diversos arquivos ao mesmo tempo? Caso utilize Linux, uma forma de fazer isso é utilizando os comandos find e sed em conjunto.

Por exemplo, para trocar a string xyz pela string abc em todos os arquivos com a extensão txt neste diretório e abaixo, o seguinte comando (de uma linha) pode ser utilizado:

find . -name "*.txt" -exec sh -c "cp -a {} {}.tmp; sed 's/xyz/abc/g' {}.tmp > {}; rm {}.tmp" \;

O que ocorre?
O find busca, neste diretório e abaixo, por todos os arquivos terminados em '.txt'. Para cada arquivo encontrado, chama um shell (sh) e neste: copia o arquivo para um arquivo temporário; executa, contra o arquivo temporário, o comando sed - com o parâmetro 's/xyz/abc/g', que serve para ler o arquivo e jogá-lo na saída padrão, com todas as ocorrências da string xyz substituídas por abc; direciona a saída padrão para o arquivo original; e exclui o arquivo temporário. E assim por diante, para cada arquivo que o find encontrar.

Em caso de dúvidas quanto ao find, consulte sua página de manual (man find). Quanto ao sed, por ser um comand muito abrangente e flexível, sua página de manual não é tão útil quanto algumas outras documentações encontradas na internet. Uma boa: http://aurelio.net/sed/sed-HOWTO.

segunda-feira, 20 de novembro de 2006

Ubuntu & Pentium 4 HT

Se você utiliza Ubuntu e seu micro possui processador Pentium 4 HT, e você deseja fazer uso da tecnologia Hyper-Threading, deverá ter instalado um kernel com suporte a SMP – Symmetric Multi-processing, além de obviamente ter o HT habilitado na BIOS.

Caso seu micro possua 1 processador HT, o Ubuntu deverá reconhecer como sendo 2 processadores. Para verificar qual a situação atual abra uma janela de terminal e execute o comando cat /proc/cpuinfo. Verifique quantos processadores foram encontrados, o primeiro terá a identificação 'processor : 0' e assim por diante.

Se aparecer apenas um processador, execute o comando uname -v e verifique a ocorrência da string SMP. Caso encontrada, você já está utilizando um kernel com suporte a SMP, e o HT pode estar desativado na BIOS. Caso não apareça a string SMP, você não está utilizando um kernel com suporte a SMP.

Para instalar um kernel com suporte ao SMP do Pentium 4 HT, abra o Gerenciador de Pacotes Synaptic, procure por 'linux-686-smp' e instale este pacote. Será necessário reiniciar o micro.

Após reiniciar verifique novamente quantos processadores foram reconhecidos, executando o comando cat /proc/cpuinfo em uma janela de terminal.

Qualquer dúvida entre em contato.

domingo, 19 de novembro de 2006

Security is Broken

Interessante palestra de Rik Farrow falando sobre segurança de computadores na atualidade. Rik Farrow é consultor de segurança, instrutor e escritor, tendo publicado livros como Unix Administration Guide to System V (Prentice-Hall, 1989) e Unix System Security (Addison-Wesley, 1991).

A palestra foi ministrada no Google Tech Talks em 11 de outubro de 2006.

Resumo (tradução do original de Rik Farrow):
Nosso modelo de segurança de computadores está quebrado. Pior ainda, ele nunca funcionou de fato bem, e é ainda menos apropriado aos usos de hoje. Nesta apresentação, eu exploro a história por trás do design da segurança atual, tanto em hardware quanto em sistemas operacionais. Ao invés de criar um modelo mais seguro com o passar do tempo, projetistas de sistemas têm tornado as coisas piores, criando insegurança em profundidade. A maioria dos sistemas de hoje são máquinas monousuário: certamente desktops e laptops, mas também a maioria dos servidores. O modelo de segurança atual não foi projetado para protejer os usuários deles mesmos, e segue-se um longo caminho em direção à compreensão de porque a segurança é tão difícil. Eu finalizo vendo estratégias para melhorar a segurança - mas sem solução real. O ponto é começar a pensar diferente, enquanto adota-se hoje as melhores práticas. O que nós fizemos no passado não funcionou, e não pode funcionar. Nós precisamos olhar para o modelo de segurança de um jeito novo, e este é o ponto real desta apresentação.

Link para o vídeo (em inglês)

sábado, 18 de novembro de 2006

Synaptic & Conexão Ruim

Dica para utilização do Gerenciador de Pacotes Synaptic no Ubuntu com conexão instável a Internet

Aqui no Brasil possuimos hoje diversos problemas relacionados à qualidade das conexões ADSL domésticas, em alguns locais muito instáveis e com perdas. Em conexões assim pode se tornar difícil instalar softwares no Ubuntu utilizando o Gerenciador de Pacotes Synaptic, pois ocorre timeout no download dos pacotes .deb e a instalação falha, principalmente com pacotes grandes. O Synaptic exibe um erro parecido com este:


W: Falha ao obter (pacote .deb)
Conexão expirou

E com isso o Synaptic simplesmente desiste de baixar o pacote e você precisa novamente clicar em 'Aplicar' e torcer para que o pacote seja baixado.

Uma maneira de contornar esta tarefa é automatizar esta repetição de tentativas de download, preferencialmente utilizando um timeout pequeno e um número ilimitado de tentativas – assim que ocorre o timeout, tenta novamente – para conexões instáveis, é o jeito.

Isto pode ser feito da seguinte forma:
1. No Gerenciador de Pacotes Synaptic, após selecionar os pacotes que deseja instalar, abra o menu Arquivo -> 'Gerar script de pacotes baixados'; (A tradução do menu tá meio ruim...)
2. Insira um nome para o script, por exemplo download.sh, e clique em Salvar;
3. Abra uma janela de terminal (menu Aplicações -> Acessórios -> Terminal);
4. Abra como super-usuário o script para edição:
sudo gedit download.sh
5. Logo após o comando wget, em todas as linhas que o possuirem, insira os seguintes parâmetros:
-t 0 -c -T 30
6. Salve o documento e feche o editor;
7. Na janela de terminal, vá até o diretório /var/cache/apt:
cd /var/cache/apt/archives
8. Execute como super-usuário o script recém-editado:
sudo ~/download.sh
9. Após a conclusão do download dos pacotes, feche a janela do Terminal;
10. Retornando ao Gerenciador de Pacotes Synaptic, clique agora novamente em Aplicar. Como os pacotes já estarão baixados, ele irá rapidamente instalar.

Parâmetros utilizados no wget:
-t 0 Torna o número de tentativas ilimitado. Sem a especificação do parâmetro '-t' o número de tentativas é 20.
-c Continua o download de um arquivo já parcialmente baixado. Útil caso você queira executar novamente o script de download.
-T 30 Configura o timeout geral para 30 segundos. Ou seja, se alguma consulta DNS demorar mais de 30 segundos, ou se uma conexão TCP demorar mais de 30 segundos para ser estabelecida, ou se em algum ponto do download não forem recebidos dados por mais de 30 segundos, o Wget irá abortar a operação.

É isso. Qualquer dúvida estamos aí.