ifconfig up não executa a partir do cron

ifconfig up não executa a partir do cron

Estou tentando combinarGuia de Scott Lowe para criar um namespacecomesta resposta sobre o encaminhamento de tráfego entre duas interfaces.

Eu tenho este script que é executado em cada reinicialização usando a diretiva cron @reboot: (estou usando o script porque nenhum desses comandos parece persistir durante as reinicializações).

# Setup VPN
ip netns add vpnspace
ip link add vpnopen type veth peer name vpnbind
ip link set vpnopen netns vpnspace
ip netns exec vpnspace ifconfig vpnopen 10.0.0.1/24 up

Quando executo o script manualmente usando sudo, ele funciona bem. No entanto, quando o script é executado pelo cron, a quarta linha, ip netns exec vpnspace ifconfig vpnopen 10.0.0.1/24 up, não é executada. Por que isso está acontecendo? Como faço para executá-lo?

DR: ifconfig vpnopen 10.0.0.1/24 upnão executa quando chamado pelo cron dentro de um namespace

=============

Esclarecimentos:

  1. Meu cron job é@reboot /home/ubuntu/startupscripts/rootscripts.sh
  2. O código fornecido acima é a primeira parte do script de shell chamado
  3. Por "não executa", quero dizer que se eu executar o comando sudo ip netns exec vpnspace ifconfigno terminal para verificar se o endereço IP foi acessado, o terminal retornará uma saída em branco. Tentei registrar a saída anexando >>rootscripts.log, mas nada foi registrado e nenhuma mensagem de erro foi retornada.

Responder1

Os comandos cron geralmente são executados com um PATH padrão. Embora ip normalmente esteja em /bin, ifconfig é mais frequentemente encontrado em /sbin . . . então tente colocar /sbin/ifconfig na sua linha de comando.

informação relacionada