LINUX.ORG.RU

Регулировка яркости экрана с помощью скрипта


0

2

Debian Jessie, что на fglrx, что на radeon яркость экрана кнопками не регулируется. Но зато хорошо регулируется так:

echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness
Но туда нужны права рута. Как правильно запилить скриптец, который, запускаясь от пользователя мог бы писать туда? Или может лучше права на ту папку сменить, и если да, то какие лучше выставить?

★★★★

Файл в $HOME куда скриптом от пользовалетя писать цифорки + Inotify который следит за файлом и в случае его изменения incron читает файлик и отправляет цифорку в /sys/class/backlight/acpi_video0/brightness

http://habrahabr.ru/post/66569/

Dron ★★★★★
()
Последнее исправление: Dron (всего исправлений: 1)
Ответ на: комментарий от Dron

incron читает файлик и отправляет цифорку в /sys/class/backlight/acpi_video0/brightness

sudo все-равно понадобится или incron root'овский должен будет следить

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

Я где то читал, что для работы с vgaswithceroo меняют права на папку. Можно ли тут сделать так же?

WRG ★★★★
() автор топика

xbacklight и привязать к хоткеям

PoMbl4
()
Ответ на: комментарий от sdio

Да, так как привилегии рута нужны, у тебя два компонента будет файлик в который ты пишешь значение и демон incron который следит за файликом и выполняет заданную в incrontab -e работу.

При этом incrontab хорош тем что у одного пользователя одни правила у второго другие и у рута третьи и всё работает раздельно.

vim /etc/incron.allow

впиши root, теперь ему можно будет добавлять работу

потом incrontab -e

и гляди примеры с хабра эксперементируй ::)

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

Я тебя не совсем понял, но incron это как обычный cron только выполняет он что-то не по заданному времени, а по событиям в файловой системе. Вот и вся разница. А если тебе надо менять права то ничего сложного следишь за каталогом если в нём что-то появилось то оно по правилам которые задашь ты сделает chmod на каталог. Штука гибкая.

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

Я incron давно использую

Ну я то не экстрасенс, думал не знаешь.

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

Тьфу ты блин я тебя с TC перепутал. И воспринял твоё сообщение как вопрос. Гыы.

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

попробовал запилить такое, incrontab от рута, вроде отрабатывает тестовая команда, смотрел в syslog

Dec  4 16:46:03 NP355V4C incrond[9267]: (root) CMD (cat /home/user/.bin/backlight.txt > /home/user/backlight.txt)

а по факту файл /home/user/backlight.txt не появляется.

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

Нет конечно. Пишешь скрипт (для удобства кидаешь в /usr/local/bin) и добавляешь его туда. А потом sudo brighntess-script 123 без пароля.

anonymous
()
Ответ на: комментарий от WRG

Между блоками <путь> <событие> <скрипт> использовать только 1 пробел. <скрипт> я не случайно написал, так как там трабла с переменными окружения (не знаю как фиксить) выноси дейтвия в скрипт и записывай полный путь до него. Одиночные значения вроде IN_OPEN не пашут комбинируй например IN_OPEN,IN_MODIFY,IN_CLOSE_WRITE. s.sh

#! /bin/bash 
echo  hello > /home/dron/test2txt

incrontab -e

/home/dron/test.txt IN_OPEN,IN_MODIFY,IN_CLOSE_WRITE /home/dron/s.sh

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

Запилил вспомогательный скрипт, он 100% выполняется, я проверил. Причем выполняется от рута, т.к. может создать файл в /. Но яркость не меняется. В то же время просто запустить этот скрипт от рута то яркость меняется.

Как то странно всё это работает)

WRG ★★★★
() автор топика
Последнее исправление: WRG (всего исправлений: 1)
Ответ на: комментарий от anonymous

Сделал. запускается с sudo без пароля, но при запуске из другого скрипта просит пароль.

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

все разобрялся, но через incrontab по-прежнему работает.

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

Пробовал его, он не меняет яркость.

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