Executando o script na inicialização e após a troca de rede

0

Estou usando o Fedora 26 e estou tentando criar um script que mudará meu endereço MAC toda vez que eu reiniciar, e eu troco de rede / liga e desliga o gerenciador de rede. Eu tenho isso:

#!/bin/bash

sudo service NetworkManager stop

sudo ifconfig wlo1 down

for i in 1 2 3 4 5
do
  echo "wlo1"
  sudo macchanger -r wlo1
  echo " "
  echo "eno1"
  sudo macchanger -r eno1
  echo " "
  echo "============================="
  echo " "
done

echo "Final MAC "
echo "wlo1"
sudo macchanger -r wlo1
echo " "
echo "eno1"
sudo macchanger -r eno1

sudo service NetworkManager start
sudo ifconfig wlo1 up

E funciona bem, mas preciso executá-lo manualmente. Eu tentei executá-lo no login editando o arquivo .bash_profile, mas ele pede uma senha em segundo plano, atrás do gui. Eu vi quando desliguei a máquina com o botão de energia. Alguma idéia de como consertar isso?

Existe algum evento para o gerenciador de rede ser desativado para que eu possa ativá-lo automaticamente? + posso fazer com que me mostre uma notificação de que foi alterado?

    
por Alex Ironside 09.09.2017 / 20:03

2 respostas

2

Coloque seu script na pasta /etc/profile.d/ . Os scripts colocados lá são executados no login. Como o seu script tem sudo , você pode usar -S flag para fazer sudo aceitar senha da entrada padrão. Você pode usar:

echo "ur P@ssw0rd" | sudo -S UrCommand
    
por 09.09.2017 / 20:53
0

Se você quiser um MAC diferente por inicialização, eu prefiro

nmcli connection modify "$NAME" wifi.cloned-mac-address stable connection.stable-id '${BOOT}'

Veja também man nm-settings , link e link

    
por 10.09.2017 / 08:27