O script rc.local sai se algum erro ocorrer durante a execução de qualquer um dos seus comandos (mencione o -e flag em #!/bin/sh -e ).
É possível que alguns pré-requisitos não sejam atendidos quando você tenta executar seus comandos quando a rc.local execução ocorre, portanto, a execução do comando falha.
Encontrei a mesma coisa enquanto definia manualmente o cpu governor e não o fiz em rc.local . Aqui está minha solução personalizada, que usa update-rc.d para fazer seus comandos serem executados na inicialização:
- Crie um arquivo
myscript.shno diretório/etc/init.dcom um cabeçalho:#!/bin/sh - Coloque seus comandos personalizados como o conteúdo
- Torne-o executável:
sudo chmod +x /etc/init.d/myscript.sh - Crie links simbólicos para o seu script para vários runlevels:
sudo update-rc.d myscript.sh defaults
Além disso, você pode verificar os scripts /etc/network/if-up.d e ver se você pode acionar seus comandos quando a rede for iniciada.