Я пытаюсь сделать так, чтобы программа на C запускалась всегда как root, независимо от того, кто ее вызывает.
В принципе, я хочу, чтобы он вызывал "mkdir /test" в качестве примера.
Поэтому я создал программу на Си следующим образом:
#include <stdio.h>
int main()
{
system("mkdir /test");
printf("bye...n");
return 0;
}
теперь, я просто скомпилировал его:
тест ССЗ.c-o тест
и теперь я попытался установить разрешения:
chmod +s test
однако работает как обычный пользователь, я получаю разрешение отказано в ошибке. Таким образом, он выполняет файл, но не с правами root.
Я также попытался установить разрешения как:
chmod a+s test
chmod o+s test
но у меня всегда одна и та же проблема.
кто-нибудь может мне в этом помочь?
Кстати, файл test.c создается root, и он также компилируется как root.
bash-3.2# ls -al | grep test
-rwxr-xr-x 1 root staff 8796 5 Ago 19:07 test
bash-3.2# chmod +s test
bash-3.2# ls -al | grep test
-rwsr-sr-x 1 root staff 8796 5 Ago 19:07 test
bash-3.2# whoami
root
bash-3.2#
спасибо заранее!
Cheerz!