ifconfig up이 cron에서 실행되지 않습니다.

ifconfig up이 cron에서 실행되지 않습니다.

합치려고 하는데Scott Lowe의 네임스페이스 생성 가이드~와 함께두 인터페이스 간의 트래픽 전달에 대한 이 답변.

cron @reboot 지시문을 사용하여 재부팅할 때마다 실행되는 이 스크립트가 있습니다. (이러한 명령 중 어느 것도 재부팅 후에도 지속되지 않는 것 같기 때문에 이 스크립트를 사용하고 있습니다.)

# 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

을 사용하여 스크립트를 수동으로 실행하면 sudo정상적으로 실행됩니다. 그러나 cron으로 스크립트를 실행하면 네 번째 줄인 은(는 ip netns exec vpnspace ifconfig vpnopen 10.0.0.1/24 up) 실행되지 않습니다. 왜 이런 일이 발생합니까? 실행하려면 어떻게 해야 합니까?

요약: ifconfig vpnopen 10.0.0.1/24 up네임스페이스 내에서 cron이 호출하면 실행되지 않습니다.

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

설명:

  1. 내 크론 작업은@reboot /home/ubuntu/startupscripts/rootscripts.sh
  2. 위에 제공된 코드는 다음과 같은 쉘 스크립트의 첫 번째 부분입니다.
  3. sudo ip netns exec vpnspace ifconfig"실행하지 않음"이란 IP 주소가 표시되었는지 확인하기 위해 터미널에서 명령을 실행하면 터미널이 빈 출력을 반환한다는 의미입니다 . 을 추가하여 출력을 기록하려고 했지만 >>rootscripts.log아무 것도 기록되지 않고 오류 메시지도 반환되지 않았습니다.

답변1

cron 명령은 일반적으로 기본 PATH로 실행됩니다. ip는 일반적으로 /bin에 있지만 ifconfig는 /sbin에 가장 많이 있습니다. . . 그러니 명령줄에 /sbin/ifconfig를 넣어보세요.

관련 정보