Команды не выполняются с ходу - PullRequest
0 голосов
/ 30 октября 2019

Я пытаюсь выполнить следующие системные команды из моего кода Go:

/usr/sbin/ip route del default dev enp0s31f6

/usr/sbin/route add default gw 10.0.100.1 enp0s31f6

Это код, который я должен выполнитькоманды:

cmd := exec.Command("ifconfig",""+ob.Name,item.Address,"netmask",item.Mask,"up")
cmd.Run()
// Delete default gateway
delCommand := exec.Command("ip","route","del","default","dev",ob.Name)
out,delerr := delCommand.Output()
fmt.Println(out,delCommand)
fmt.Println("del err",delerr)
//Add gateway
addCommand := exec.Command("route","add","default","gw",item.GW,ob.Name)
addOut,addErr := addCommand.Output()
fmt.Println(addCommand)
fmt.Println("addCommand ",addOut,addErr)

Однако, когда я запускаю вышеупомянутые команды из терминала, все работает

Я запускаю свой код с помощью sudo.

Вот ошибки, которые я получаю:

/usr/sbin/ip route del default dev enp0s31f6 exit status 2

/usr/sbin/route add default gw 10.0.100.1 enp0s31f6 exit status 7

Итак, после использования комбинированного вывода вот что я получаю

RTNETLINK answers: No such process


SIOCADDRT: Network is unreachable
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...