Сделать программу исполняемой пользователями

Я установил hddtemp в свою Arch Linux, но его нужно запускать с правами root. Я хочу выполнить его как обычного пользователя без использования sudo . Как я могу это сделать?

Можно назначить пользователям в группе разрешение на запуск исполняемого файла с помощью механизма /etc/sudoers . Например, чтобы разрешить всем пользователям в группе users запускать hddtemp с root запустите visudo как root и добавьте:

 %users ALL = (root) NOPASSWD: /path/to/hddtemp 

Вы можете сделать программу SUID. Это НЕ очень безопасный способ делать что-то, поскольку программы SUID часто могут непреднамеренно открывать способы эскалации привилегий, особенно если программа не предназначена для запуска SUID. Если по какой-либо причине решение sudo неприемлемо (оно жестко закодировано в скрипт / программу, которую вы не можете изменить), вы должны пойти с этим. Вы даже можете сделать скрипт, чтобы скрыть тот факт, что sudo используется, если необходимо.