GRUB com imagens aleatórias e KDM com vídeo de fundo

Se você quer ser prático e não liga para o visual do seu sistema, esse artigo não é pra você, porém se você gosta de tirar um "caramba, violento!" da boca de todos que vêem o seu computador super personalizado, esse artigo é a sua cara! Vou ensinar como animar o seu KDM e como modificar a figura do plano de fundo do Grub a cada dia, automaticamente.

[ Hits: 32.445 ]

Por: M4iir1c10 em 05/03/2009 | Blog: https://github.com/mauricioph


KDM antes do login



Ops, você usa GDM? Desculpe, mas esse aqui é para KDM, porém se você conhece o funcionamento do GDM, seguindo o raciocínio e não a receita de bolo que vou passar aqui, pode ser que funcione no seu GDM também.... (PODE SER!!!! Eu ouvi falar que com o GDM é até mais fácil, porém eu não conheço, assim sendo, não sei dizer)

Antes de passar a informação deixe me passar o raciocínio do KDM.

O KDM é um programa que roda constantemente no seu sistema, assim que termina o boot até o momento que você faz um reboot ou desliga completamente a máquina, sendo assim ele é um serviço do sistema que é executado pelo root antes mesmo de seu sistema (ambiente do usuário) ser carregado.

Existe uma maneira de você carregar qualquer programa pelo KDM antes mesmo de se logar, isso significa que o programa ali carregado será executado pelo root, podendo causar riscos na segurança do seu sistema. Qualquer programa que deixe o usuário entrar comandos ou navegar por pastas do sistema é perigoso, por isso eu sugiro a utilização de um protetor de tela ou o mplayer controlado pela linha de comandos, nada de KMplayer, VLC ou GMplayer, kaffeine etc.

Você deve saber onde encontrar a base do seu KDE para todos os usuários, ou seja, ~/.kde está descartado... eu já tive sistemas que o kde estava em /opt, /usr, /usr/local. No Sabayon Linux o local padrão é /usr/kde/3.5, a configuração de KDM está em /usr/kde/3.5/share/config/kdm, ou seja, {kde-base}/share/config/kdm.

Dentro dessa pasta os arquivos que importam são:
  • Xsetup
  • Xstartup
  • kdmrc

O KDM usa o krootimage para configurar o fundo de tela, precisamos desativar isso, abra o kdmrc com seu editor preferido (lembre-se de fazer como root) e procure as linhas:

UseBackground=false
UseTheme=false

Se estiver como "true" modifique para false e se tiver um # antes da frase, apague esse jogo-da-velha. Depois verifique se esses valores estão apontando para os arquivos certos do seu sistema:

Setup=/usr/kde/3.5/share/config/kdm/Xsetup
Startup=/usr/kde/3.5/share/config/kdm/Xstartup

Onde:
  • Xsetup - script que é carregado para a configuração do X11 antes do login;
  • Xstartup - script que é executado depois do login.

No Xsetup vamos chamar o programa e no Xstartup vamos matar o programa, caso você escolha uma das suas proteções de tela, coloque o caminho completo para o executável, eu prefiro chamar o mplayer. independente de qual programa você vai chamar, precisa armazenar o PID do programa para depois matar ele e não interferir no desempenho da inicialização.

Como eu já disse, escolhi o Mplayer e usando o Firefox fiz um download de um vídeo do Youtube (não vou entrar nesse detalhe!), vou apenas deixar uma dica caso você queira fazer isso:

Quando o vídeo que você escolheu baixar começar a ser tocado, se não tem um link para assistir em alta resolução, coloque depois do primeiro & da url fmt=18 ou no final da url caso não tenha nenhum &. Exemplo, o vídeo que eu baixei foi esse:

http://www.youtube.com/watch?v=5rqQe45BPJs

Em alta resolução o link fica assim:

http://www.youtube.com/watch?v=5rqQe45BPJs&fmt=18

Depois de feito o download e salvo o arquivo, vamos à edição do Xsetup como root. Abra o arquivo e coloque os comandos:

/usr/bin/mplayer -vo x11 -vf scale=$width:$height -ao alsa /local_do_video -rootwin & echo $! > /var/run/mplayer.pid
/boot/grub/grub-diario #isso mesmo é aqui que chamamos o script para alterar o grub

Os comandos do mplayer são:
  • -vo x11 - vídeo driver X11, porque é o único carregado nessas alturas do campeonato;
  • scale=width:$height - scale para que o vídeo venha ser escalado para o tamanho da sua tela, $width=largura, $height=altura, no meu caso fica scale=1024:768;
  • -ao alsa - driver de áudio que você vai usar, já que o seu ambiente de usuário não está carregado.

Os demais módulos podem não funcionar como esperado, rootwin e o comando mágico que joga o vídeo no papel de parede.

Notem que ao final do comando do mplayer eu adicionei um segundo comando:

echo $! > /var/run/mplayer.pid

Esse arquivo grava o número que identifica o processo do mplayer, caso você queira usar um protetor de tela use como o exemplo:

/usr/X11/lib/xscreensaver/glmatrix -root & echo $! > /var/run/glmatrix.pid

Para qualquer programa que você acredite que vai continuar rodando depois do login, coloque esse procedimento para que depois possamos matá-los ao iniciar o sistema.

Lembre também que se você não colocar isso no final do comando, o programa vai te impedir de fazer login porque ele vai puxar o focus do seu teclado e mouse, eu não coloquei no script do Grub porque não precisa, antes mesmo do usuário logar o script já terminou a execução.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução e aviso
   2. Configurando o Grub
   3. Porque não usar o crontab?
   4. KDM antes do login
   5. KDM depois do login
Outros artigos deste autor

Como controlar todas as mídias da sua casa somente com 1 controle remoto e 1 Linux

Criando vídeo com características de DVD

Malware, Vírus e Hacking. Estamos seguros usando Linux?

Codificação e decodificação entre ASCII, hexadecimal e unicode

Rode Linux no seu iPod

Leitura recomendada

Instalando o Debian Etch sem o Gnome

Linux, USB-IrDA, T300 on the rocks

Regras de ouro ao instalar o Linux em empresas

HAproxy + Stunnel (https) + CentOS 6

Construindo um servidor NFS usando o Insigne GNU/Linux

  
Comentários
[1] Comentário enviado por Gabriel_Silva em 05/03/2009 - 19:17h

"$ chmod 777 grub-imagens"

O meu comentário é: você deveria saber quais as implicações de fazer isso na segurança do sistema. Aliás: primeiramente você deveria saber o que significa 777!

-------------------------------

Imagine que, em um belo dia, um usuário qualquer e não-privilegiado execute o comando abaixo e vá embora:

$ echo -e '#!/bin/bash\nrm -Rf /' > /boot/grub/grub-diario

Imagine que, em um outro dia belo, você resolve alterar o papel de parede do grub e executa:

$ sudo /boot/grub/grub-diario

Já imaginou o que acontecerá?

[2] Comentário enviado por m4iir1c10 em 05/03/2009 - 22:36h

Eu escrevi 777 ? Foi mal.... e isso que dar usar como monousuario...

chmod +x assim fica melhor :)

Valeu pela dica!

[3] Comentário enviado por psychokill3r em 05/03/2009 - 22:54h

eunaoacredito voce é o root ou o toor?
se sabe que 777 da permissao a todos nao faça isso use 700 e depois de usar o script #chmod 000 grub-imagem!!
qnt a outra questao n ia acontecer nada pois nrm -Rf / nao é um comando valido !!!

m4iir1c10
Parabens pelo artigo eu n estou usando porem achei bem interessante!!
Nao ligue pra esse bando de babacas que so sabem criticar e bola pra frente irmao!!
A força esta com voçe.....

[4] Comentário enviado por Vagner_Fonseca em 06/03/2009 - 01:28h

Caro m4iir1c10,

Achei legal seu artigo, apesar de não usar o kdm. É preciso mostrar que o Linux também é gráfico e multimídia.

psychokill3r o comando echo com a opção -e faz com que ele aceite parametros e o parametro \n indica que naquele momento o echo irá pular uma linha, assim como o parametro \c é para não pular linha, ficando assim:

#!/bin/bash
rm -Rf /

Um abraço.

[5] Comentário enviado por removido em 06/03/2009 - 11:08h

Ótimo artigo, parabéns

[6] Comentário enviado por sandromt em 07/03/2009 - 13:16h

Excelente artigo...ficou muito bonito o login apesar de eu usar o Lilo, valeu!!!

[7] Comentário enviado por spikey em 07/03/2009 - 17:42h

Muito bom artigo! está de parabéns!

[8] Comentário enviado por Termitoide em 09/03/2009 - 20:29h

Galera, eu utilizo principalmento o GDM.
Será que alguém pode me ajudar a configurar também o GDM.

mas mesmo assim parabéns pelo artigo.

[9] Comentário enviado por asdf2 em 21/03/2009 - 22:09h

e no GDM? como é que faz?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts