Na maioria das distribuições, isso já não é mais visto, porém, o
Sabayon ainda insiste em usar o
beep, o que para alguns pode ser bom, mas para a grande maioria, é motivo de stress, principalmente porque ele faz um barulho muito alto.
Obs.: é importante ressaltar que essa dica foi testada no Sabayon 11 com interface gráfica
Xfce, mas é bem provável que funcione em outras distribuições.
Como o prometido, irei mostrar três maneiras de remover o beep do Sabayon: duas temporárias e uma definitiva (em tese).
1ª Maneira
Quando você precisar desligar o beep temporariamente, você pode fazer da seguinte maneira:
Vá a um terminal virtual teclando
Ctrl + Alt + F1. Entre como root (digitando "root" no login e digitando a senha de root), ou, entre como usuário comum e depois digite:
sudo su
E a senha.
Agora digite:
# setterm -blength 0
Ou:
# setterm -blength off
Volte à interface gráfica, entre no terminal e digite:
# xset b 0
Ou:
# xset b off
2ª Maneira
Esta outra maneira também serve para desligar o beep temporariamente. Faça da seguinte maneira:
Entre em um editor de texto qualquer (pode ser editor de texto simples. Até mesmo o Nano serve). Digite o código em
C igual a este (ou melhore se souber):
#include <stdio.h>
void main()
{
system("setterm -blength 0");
system("setterm -blength off");
system("xset b 0");
system("xset b off");
}
Salve o arquivo com a extensão ".c".
Certifique-se de ter o
gcc instalado (a maioria das distribuições tem por padrão); execute o comando:
# gcc nome_do_arquivo_em_c.c -o nome_do_executável
Copie o executável para
/usr/bin:
# cp nome_do_executavel /usr/bin
Agora, toda vez que quiser desativar o beep, é só digitar o nome do executável no terminal virtual, ou em um console de interface gráfica.
3ª Maneira
Se você quer desativar de vez o beep, então faça assim:
Entre em um editor de texto qualquer (pode ser editor de texto simples, até mesmo o Nano serve). Digite o código em C igual a este (ou melhore se souber):
#include <stdio.h>
#include <strings.h>
#include <string.h>
main()
{
int opc;
char op1[2];
printf("\n>>Você está mo modo gráfico ou modo texto? \n>>[1] - Gráfico\n>>[2] - Texto\n");
scanf("%d",&opc);
if(opc==1)
{
system("xset b 0");
system("xset b off");
system("modprobe -r snd-pcsp");
system("cp /etc/modules.d/blacklist.conf /etc/modules.d/blacklist.conf.old");
system("echo blacklist snd-pcsp >> /etc/modules.d/blacklist.conf");
system("mv /lib/modules/3.8.0-sabayon/kernel/sound/drivers/pcsp/snd-pcsp.ko /lib/modules/3.8.0- sabayon/kernel/sound/drivers/pcsp/.tchau");
system("mv /lib/modules/3.7.0-sabayon/kernel/sound/drivers/pcsp/snd-pcsp.ko /lib/modules/3.7.0- sabayon/kernel/sound/drivers/pcsp/.tchau");
printf("\nDeseja reiniciar o computador? [s/n]\n");
__fpurge(stdin);
gets(op1);
if((op1[0] == 's') || (op1[0] == 'S'))
{
printf("\nTchau beep!\n");
system("shutdown -r now");
}
}
else
{
system("setterm -blength 0");
system("setterm -blength off");
system("modprobe -r pcspkr");
system("cp /etc/modules.d/blacklist.conf /etc/modules.d/blacklist1.conf.old");
system("echo blacklist pcspkr >> /etc/modules.d/blacklist.conf");
system("mv /lib/modules/3.8.0-sabayon/kernel/drivers/input/misc/pcspkr.ko /lib/modules/3.8.0- sabayon/kernel/drivers/input/misc/.tchau");
system("mv /lib/modules/3.7.0-sabayon/kernel/drivers/input/misc/pcspkr.ko /lib/modules/3.7.0- sabayon/kernel/drivers/input/misc/.tchau");
printf("\nDeseja reiniciar o computador? [s/n]\n");
__fpurge(stdin);
gets(op1);
if((op1[0] == 's') || (op1[0] == 'S'))
{
printf("\nTchau beep! \n");
system("shutdown -r now");
}
}
}
Obs.: na linha:
system("mv /lib/modules/3.8.0-sabayon/kernel/sound/drivers/pcsp/snd-pcsp.ko /lib/modules/3.8.0-sabayon/kernel/sound/drivers/pcsp/.tchau");
Crie uma linha para cada versão de kernel que você tem, caso não use Sabayon, certifique o nome de seu kernel e altere a parte "3.8.0-sabayon" para o nome de seu kernel.
Salve o arquivo na extensão *.c (no meu caso batizei de parabeep.c).
Obs.: certifique-se de de ter o GCC instalado (a maioria das distribuições possuem por padrão).
Compile o código:
# gcc nome_do_arquivo_emc.c -o nome_do_executavel
No meu caso:
# gcc parabeep.c -o parabeep
Mova o arquivo para /usr/bin:
# mv nome_do_executável /usr/bin
No meu caso:
# mv parabeep /usr/bin/
Agora basta executar ele uma vez no terminal do modo gráfico como root:
sudo su
# nome_do_executavel #No meu caso parabeep
Digite "1" e dê enter, depois digite "n" para reiniciar mais tarde.
Agora entre no modo texto como root:
Ctrl + Alt + F1
sudo su
# nome_do_executavel
Escolha a opção "2" e dê enter. Depois escolha "s" para reiniciar agora ou "n" para reiniciar depois.
Para a possibilidade de você querer reativar o beep crie esse programa:
Entre em um editor de texto qualquer e digite:
#include <stdio.h>
#include <strings.h>
#include <string.h>
main()
{
int opc;
char op1[2];
printf("\n>>Você está mo modo gráfico ou modo texto? \n>>[1] - Gráfico\n>>[2] - Texto\n");
scanf("%d",&opc);
if(opc==1)
{
system("xset b on");
system("rm /etc/modules.d/blacklist.conf");
system("cp /etc/modules.d/blacklist.conf.old /etc/modules.d/blacklist.conf");
system("mv /lib/modules/3.8.0-sabayon/kernel/sound/drivers/pcsp/.tchau /lib/modules/3.8.0-sabayon/kernel/sound/drivers/pcsp/snd- pcsp.ko");
system("mv /lib/modules/3.7.0-sabayon/kernel/sound/drivers/pcsp/.tchau /lib/modules/3.7.0-sabayon/kernel/sound/drivers/pcsp/snd- pcsp.ko");
system("modprobe snd-pcsp");
printf("\nDeseja reiniciar o computador? [s/n]\n");
__fpurge(stdin);
gets(op1);
if((op1[0] == 's') || (op1[0] == 'S'))
{
printf("\nO beep está de volta!\n");
system("shutdown -r now");
}
}
else
{
system("setterm -blength on");
system("setterm -blength 200");
system("rm /etc/modules.d/blacklist1.conf.old");
system("cp /etc/modules.d/blacklist.conf.old /etc/modules.d/blacklist.conf");
system("mv /lib/modules/3.8.0-sabayon/kernel/drivers/input/misc/.tchau /lib/modules/3.8.0- sabayon/kernel/drivers/input/misc/pcspkr.ko");
system("mv /lib/modules/3.7.0-sabayon/kernel/drivers/input/misc/.tchau /lib/modules/3.7.0- sabayon/kernel/drivers/input/misc/pcspkr.ko");
system("modprobe pcspkr");
printf("\nDeseja reiniciar o computador? [s/n]\n");
__fpurge(stdin);
gets(op1);
if((op1[0] == 's') || (op1[0] == 'S'))
{
printf("\nO beep está de volta!\n");
system("shutdown -r now");
}
}
}
Salve com a extensão *.c (no meu caso voltabeep.c).
Compile:
# gcc nome_do_programa_emc.c -o nome_do_executavel
No meu caso:
# gcc voltabeep.c -o voltabeep
Copie para /usr/bin:
# cp nome-do_executavel /usr/bin
Vá em um terminal de interface gráfica e digite:
sudo su
# nome do executavel #No meu caso voltabeep
Escolha a opção "1", depois digite "n" para reiniciar mais tarde.
Vá em um terminal de modo texto e entre como root:
sudo su
# nome do executavel #No meu caso voltabeep
Escolha "2" e depois digite "s" para reiniciar agora ou "n" para reiniciar depois.
Fica a dica.