Попытка выполнить ifup и ifdown использование поддержки Linux

Я хочу выполнить ifup eth0 и ifdown eth0 без sudo при помощи поддержки Linux.

Для той же проблемы я написал код для того же main.c

int main
{
FILE ,*fp;
fp  = popen("ifdown eth0","r");
if(fp==NULL)
{
printf("popen falied\n");
}
pclose(fp);
}

Если я установил возможности на двоичный файл как следующее -

sudo   setcap -v cap_chown,cap_dac_override,cap_fowner,cap_dac_read_search,cap_net_admin+epi main

Все возможности установлены. Это проверяется при помощи команды getcap

getcap main
main = cap_chown,cap_dac_override,cap_dac_read_search,cap_fowner,cap_net_admin+eip

если выполнено выше кода я получаю следующий ответ

./main

ifdown: failed to open lockfile /run/network/ifstate.eth0: Permission denied 

хотя я установил возможности разрешения все еще, я добираюсь, разрешение отклонило ошибку.

Кто-то может помочь мне на этом?

0
задан 5 September 2017 в 04:11

0 ответов

Другие вопросы по тегам:

Похожие вопросы: