Я хотел бы знать, что мне нужно сделать, чтобы позволить пользователю изменять значения в /sys
. Поскольку это sysfs, изменение прав доступа к файлам не вариант (и я не люблю делать это при каждой загрузке).
Необходимо использовать sudo. Если Вы только хотите дать им разрешение изменить определенное значение без общего sudo доступа, то можно записать сценарий, который обновляет то конкретное значение, и настройте sudoers файл, чтобы позволить полномочиям пользователя ТОЛЬКО запускать тот скрипт как корень.
Я нашел простой пример python / dbus / polkit в Ubuntuforums и изменил значения по умолчанию для файла политики PolicyKit с
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>auth_admin_keep</allow_active>
</defaults>
на
<defaults>
<allow_any>no</allow_any>
<allow_inactive>no</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
это изменение, непривилегированный пользователь теперь может общаться со службой (работает от имени пользователя root и, следовательно, может писать в /sys
) без необходимости вводить пароль (возможные риски?).
Вы должны уточнить, что вы хотите получить. Может быть, вы хотите изменить /etc/sysctl.conf
, см. man sysctl
и man sysctl.conf