quinta-feira, 27 de setembro de 2012

Programas da mozilla não abrem

Os programas da mozilla, thunderbird e firefox, vez ou outra  nos pregam uma peça. Não sei se isso ocorre em Windows também, mas no linux isso, normalmente, ocorre quando se desliga o computador sem fechar os programas como em caso de queda de energia.
Quando tentamos abrir eles acusam que já estão em execução e não abrem.
Pra resolver esse problema devemos localizar dentro da pasta do usuário em questão os arquivos lock e .parentlock dos respectivos programas. No thunderbird eles ficam no diretório .thunderbird/xxxxxxx.default e no firefox no diretório .mozilla/firefox/xxxxxxx.default (xxxxxxx é um número aleatório criado pelo sistema).
Existem várias formas de fazer isso, vou sugerir apenas uma:

$ find . -name "*lock*"

O resultado será a localização dos arquivos então remova-os utilizando o comando rm.

sábado, 22 de setembro de 2012

Remover lista longa de arquivos

Há momentos que vamos tentar remover uma quantidade muito grande de arquivos e recebemos a  mensagem "/bin/rm: Lista de argumentos muito longa". Eu ainda não procurei saber qual é o limite para o comando rm, creio que tenha haver com o sistema de arquivos utilizado.
Para forçar a remoção desses arquivos podemos utilizar vários métodos, um dos que acho mais simples, e por isso estou postando-o, é u uso do comando find com a opção -remove como no exemplo abaixo:

find . -name  "*.xxx" -delete

Onde:

find = Ótima ferramenta para pesquisa em disco;
. = Define que o diretório a ser pesquisado é o atual, pode ser substituído pelo caminho de início da pesquisa.
-name = Determina que o parâmetro que será pesquisado é o nome do arquivo.
-delete = É a "mágica" dessa dica, determina que os arquivos localizados serão apagados.
"*.xxxx" = São os arquivos que serão afetados, com as aspas.


domingo, 2 de setembro de 2012

Prioridade para usuários através do PAM

Entre as várias utilidades do PAM (Pluggable Authentication Module) está a possibilidade de definir a prioridade que os programas executados por determinado usuário.
Isso é muito útil em sistemas de servidores de terminais, por exemplo, em momentos onde se faz necessário dar prioridade para que um determinado usuário efetue tarefas essenciais. 

Para isso devemos adicionar a linha abaixo ao arquivo /etc/security/limits.conf:

usuário            hard    priority        -15


Onde:

usuário = É o login do usuário que terá privilégios.
hard     = Determina que esse parâmetro será respeitado sempre, em detrimento de qualquer outro.
priority = É o parâmetro que define o que está sendo alterado, nesse caso a prioridade dos processos.
-15      = É um valor de exemplo, que deve ser definido com um valor entre 20 e "-20". O padrão é 20 e quanto menor o número maior será a prioridade do processo sobre os outros.

Ps. Se você colocar todos os usuários com prioridade alta não adiantará nada, aliás, pode dar alguns problemas.