Desabilitando o bluetooth no começo não funciona

1

A minha pergunta está relacionada com esta questão .

Gostaria de desativar o bluetooth no arranque, infelizmente a solução proposta para adicionar:

rfkill block bluetooth

para /etc/rc.local antes de exit 0 não funcionar no meu Acer aspire 1810TZ executando o Ubuntu 13.10 com um avançado wifilink N-6235 da Intel.

Nem a solução sugerida para laptops Thinkpad.

O que funciona é adicionar:

/etc/init.d/bluetooth stop

para /etc/rc.local , mas isso desativa o miniaplicativo bluetooth, que eu preciso ativar o bluetooth facilmente quando eu quiser usar o bluetooth.

Então, a questão é por que o rfkill block bluetooth não funciona e como faço isso funcionar de novo?

Obrigado!

    
por Minos 05.11.2013 / 08:09

1 resposta

0

Como fazer com que o /etc/rc.local funcione como esperado

Como o upstart inicia seu serviço de forma assíncrona, é muito comum que nem todos os serviços estejam prontos quando o /etc/rc.local é iniciado. Então você precisa adicionar sleep 3 (ou outro número, você precisa descobrir a si mesmo) no início do seu script.

Você precisa cuidar para que o script não seja interrompido por um programa que retorna um erro. Exemplo: posso alternar entre duas placas gráficas no meu laptop (pré-placa gráfica híbrida) e, dependendo de qual delas está ativada, devo usar um arquivo /sys/class/backlight/... diferente para definir seu brilho. O mais fácil é definir os dois. Mas, para garantir que o não existente não interrompa o /etc/rc.local -script, acrescento || true no final de cada comando.

Então, é assim que meu rc.local -script parece agora (sem os comentários no começo):

sleep 3

echo 2 > /sys/class/backlight/sony/brightness || true
echo 2 > /sys/class/backlight/nv_backlight/brightness || true
rfkill block bluetooth

exit 0
    
por MadMike 15.11.2013 / 20:21