Os scripts python serão executados quando adicionados a /etc/network/if-up.d?

4

Para conectar meu sistema à internet, eu tenho que fazer o login manualmente através da página web do meu provedor. Isso não é muito conveniente. Eu encontrei um script python online que automatiza isso. leva o login / senha e imita o que eu teria que fazer manualmente. Funciona bem. Eu abro um terminal e corro o script toda vez. Eu tento colocar o script em /etc/network/if-up.d para que ele seja executado automaticamente quando a interface estiver ativa. Mas ele não é executado e não registra nada onde normalmente é registrado. O script é executável e tem sha bang #!/usr/bin/python Qual poderia ser o possível motivo pelo qual não é executado? Existe alguma outra pasta que eu tenha que colocar?

    
por balki 21.07.2012 / 17:40

2 respostas

6

Sim, deveria.

Tem um ponto no nome do arquivo? run-parts (8) ignora arquivos com pontos em seus nomes.

    
por tumbleweed 23.07.2012 / 22:04
0

Para responder à sua pergunta, criei o seguinte em /etc/network/if-up.d/python:

 #!/usr/bin/python
 f = open('/tmp/aaaaa','w')
 f.write('')
 f.close()

Então eu executei:

 chmod +x /etc/network/if-up.d/python

para torná-lo executável.

Eu verifiquei novamente que / tmp / aaaaa ainda não existia.

Quando eu peguei meu wifi e o trouxe de novo, / tmp / aaaaa apareceu - então funcionou. Eu fiz o mesmo, removendo o arquivo e, em seguida, conectando minha Ethernet e que funcionou também.

Talvez você possa começar com isso, reproduzi-lo e, em seguida, alterar o programa python para aquele que deseja usar. Observe também as informações úteis do tumbleweed sobre peças de execução e pontuação no hist answer. Melhor manter o nome do arquivo simples letras e números.

    
por John S Gruber 22.07.2012 / 01:49