LINUX.ORG.RU

Изменение работы СО при запуске <name>.

 , , ,


0

1

Я даже не знаю куда писать, но я в 0 разочаровался в работе СО на макбуках, ибо после 10 минут игры в Xonotic система валится в троттлинг, задача у меня вот какая: Я могу менять минимальные обороты куллера (путем правки одного файла), но делать это руками не вариант, каким велосипедом можно изменять файл, например при запуске определенного процесса (в данном случае это Xonotic), т.е. если процесс запущен - записывать в файл «х», если процесс не запущен - записывать «у», приветствуются все варианты, желательно самый менее велосипедный.

★★★★
Ответ на: комментарий от roman77

Этот вариант я знаю, но мне бы хотелось что-то вроде «мониторинга», т.е. если процесс есть - значение х, если процесса нет - значение у, такое возможно реализовать?

Jefail ★★★★
() автор топика
Ответ на: комментарий от Jefail

Можно, но тогда надо будет либо держать запущенный скрипт с циклической проверкой, либо кроном раз в n секунд запускать проверку.

Вариант выше, имхо, простой и 100%.

roman77 ★★★★★
()
Ответ на: комментарий от Jefail

не уверен, можно ли запускать в bash скрипте бинарник от имени другого юзера, но можно сделать так.

2 скрипта, один делает echo x, другой echo y, сделать их владельцем рута, и установить suid флаги. В итоге при запуске скриптов от простого юзера они будут исполняться с правами рута, и смогут писать в sys. Метод немного не безопасный, потому скрипты лучше запрятать в /usr/bin/

А скрипт для запуска игры будет таким

#!/bin/bash
/usr/bin/первый_скрипт.sh
/bin/xonotic
/usr/bin/второй_скрипт.sh

roman77 ★★★★★
()
Ответ на: комментарий от Extraterrestrial

А я ведь тоже подумал, что это угарный газ.

a1batross ★★★★★
()
Ответ на: комментарий от roman77

Идея прекрасная, но я с suid флагом разобраться не могу, если я его вешаю на файл, я не могу запускать его от обычного пользователя? (chmod u+s / chmod 4750).

Jefail ★★★★
() автор топика
Ответ на: комментарий от Jefail

я не могу запускать его от обычного пользователя?

Если 755 права поставишь, то сможешь запускать.

ping тоже работает от рута, хотя запускается простым юзером.

-rwsr-xr-x 1 root root 46672 фев 2 01:18 /bin/ping

roman77 ★★★★★
()
Ответ на: комментарий от roman77

Чего-то я не понимаю или делаю не так. ls -al

 -rwsr-xr-x.  1 root     vsulimov   57 Feb  9 20:49 fan.sh
При запуске
./fan.sh: line 1: /sys/devices/platform/applesmc.768/fan1_min: Permission denied 

Jefail ★★★★
() автор топика
Ответ на: комментарий от exception13

Что-то мне подсказывает что suid надо было на бинарник (в моем случае на echo вешать) или я не прав?

Jefail ★★★★
() автор топика
Ответ на: комментарий от roman77

Таже шляпа, права как в вашем сообщении (-rwsr-xr-x. 1 root root)

Jefail ★★★★
() автор топика
Ответ на: комментарий от Jefail

Что-то мне подсказывает что suid надо было на бинарник (в моем случае на echo вешать) или я не прав?

прав. ибо suid на скрипте вообще ничего не делает т.к. ядро просто запускает интерпретатор и передает в параметре путь до скрипта.

как вариант прописать в sudoers разрешение на исполнение скрипта без запроса пароля.

exception13 ★★★★★
()
Ответ на: комментарий от exception13

Похоже только это мне и остается, спасибо.

Jefail ★★★★
() автор топика
Ответ на: комментарий от exception13

Думал что все, что будет исполняться внутри скрипта, будет исполняться от рута. Ошибся.

roman77 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.