zapami

Zagadnienia dotyczące menadżerów okien, środowisk graficznych - X, KDE, GNOME, Fluxbox, XFCE., Compiz itp.
Andrzej70
Beginner
Posty: 118
Rejestracja: 03 października 2013, 18:36

zapamiętanie ustawienia jasności dla użytkownika w gnome - Debian 7 stable

Post autor: Andrzej70 »

Witam,
Jak w temacie mam wersję systemu 7 stable i gnome domyślnie zainstalowane bez żadnych zmian.
Ustawianie jasności jak głośności robię za pomocą klawiszy Fn-strzałka. Sęk w tym, że program zarządzający dźwiękiem jest skonfigurowany "per user session" - wiem bo ciągle podczas włączania/wyłączania mam ostrzeżenie na ten temat.

Sęk w tym, że chciałbym też skonfigurować jasność ekranu "per user session", ale nie wiem gdzie to ustawić i jak.

Na razie odkryłem, że jak zmieniam jasność ekranu to zmienia się wartość w pliku /sys/class/backlight/intel_backlight/actual_brightness. W sumie to nie wiem czy się zmienia, bo tak naprawdę to oglądam tę wartość za pomocą gedit, ale czas modyfikacji pliku nie ulega zmianie i jest cały czas taki jak czas włączenia systemu.
Niestety po wylogowaniu nie jest to pamiętane i po zalogowaniu znowu jest jasność na maksa.

Podpowiedzcie proszę jak to zrobić, żeby ustawienie jasności było pamiętane dla każdego usera osobno, podobnie jak jest to z dźwiękiem.
Awatar użytkownika
saturno
Junior Member
Posty: 741
Rejestracja: 08 lipca 2008, 20:04

Post autor: saturno »

Andrzej70 pisze:żeby ustawienie jasności było pamiętane dla każdego usera osobno,
Jeśli nie daje się tego gdzieś wyklikać, to może dodaj skrypt do autostartu.
Andrzej70
Beginner
Posty: 118
Rejestracja: 03 października 2013, 18:36

Post autor: Andrzej70 »

Sęk w tym, że nie mam pojęcia co miałoby się znaleźć w tym skrypcie. Chyba jakieś polecenie, ale jakie? Umiem zmienić jasność tylko za pomocą kombinacji klawiszy :(
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Znalezione w sieci: spróbuj edytować plik /etc/rc.local i przed wyrażeniem "exit 0" wstaw taką linijkę:

Kod: Zaznacz cały

echo wartosc > /sys/class/backlight/intel_backlight/brightness
Gdzie za wartość podstawiasz wartość podświetlenia, np:

Kod: Zaznacz cały

echo 600 > /sys/class/backlight/intel_backlight/brightness
Jeżeli chcesz to robić dla każdego użytkownika osobno, to musiałbyś napisać skrypt wykonujący powyższe polecenie i skorzystać z setuid, żeby nadać mu uprawnienia roota.
Andrzej70
Beginner
Posty: 118
Rejestracja: 03 października 2013, 18:36

Post autor: Andrzej70 »

Dzięki za podpowiedź. Polecenie działa dla root.
Muszę go wrzucić do profilu użytkownika, bo nie mogę psuć ustawień innym userom. Mógłbyś podpowiedzieć gdzie mam wpisać komendę ./moj_skrypt do odpalania skryptu? do .bashrc a może .profile ?
Jak wygląda sytuacja z tym setuid? Ustawię skryptowi właściciela root i prawo wykonywania dla wszystkich czyli

Kod: Zaznacz cały

chown root moj_skrypt
chmod 4711 moj_skrypt
Oczywiście zrobię to na konsoli z prawami root'a, bo na razie sudo nie używam gdyż nie działa :P (krzyczy, że user nie należy do grupy mogącej korzystać z sudo - kolejna sprawa o której trzeba poczytać :( )
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Tak, właścicielem pliku ma być root. Plikowi nadaj uprawnienia 4755.
Wywołanie skryptu umieść w ~/.profile, lub w ~/.bash_profile.

Sudo w Debianie nie jest skonfigurowane, musisz to zrobić samemu:
https://wiki.debian.org/sudo
http://dug.net.pl/tekst/63/przewodnik_po_sudo/
Andrzej70
Beginner
Posty: 118
Rejestracja: 03 października 2013, 18:36

Post autor: Andrzej70 »

Niestety skrypt nie działa.

Kod: Zaznacz cały

andrzej@Mama:~$ ls -la moje_ustawienia
-rwsr-xr-x 1 root rodzina 239 mar  6 15:23 moje_ustawienia

Kod: Zaznacz cały

andrzej@Mama:~$ cat moje_ustawienia
#!/bin/bash


#Ustawienia po zalogowaniu, do których trzeba mieć uprawnienia root'a


#Ustawienie jasności domyślnej - każdy user musi mieć swoje ustawienie chyba
echo 600 > /sys/class/backlight/intel_backlight/brightness > wynik.txt
# końcówkę polecenia czyli > wynik.txt dodałem dla uzyskania komunikatu o błędzie, ale plik nie został utworzony. 
# Wygląda na to, że plik nie jest uruchamiany w ogóle

andrzej@Mama:~$ 
Mam wrażenie, że gdzieś widziałem informację, że UID nie działa na skryptach ze względów bezpieczeństwa. Nie wiem czy instalacja sudo jest bezpieczna - w końcu to uprawnienie dla usera non-stop działa.
Kurczę to nie powinno być tak trudne - w końcu do wciśnięcia klawiszy od jasności nie trzeba uprawnień root'a. :(
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Andrzej70
Beginner
Posty: 118
Rejestracja: 03 października 2013, 18:36

Post autor: Andrzej70 »

Dzięki Rafal_F za pomoc. Zastanawiam się na ile bezpieczne jest stosowanie takiego programu uruchamiającego skrypt. W sumie jeśli zadbam, żeby program i skrypt mógł zmienić lub skasować tylko root, to powinno być bezpiecznie co? Bo gdyby udało się skasować userowi taki skrypt to mógłby zapisać dowolny inny pod tą nazwą i OMFG :P
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Tak, w ten sposób pliki powinny być nietykalne dla zwykłego użytkownika.

Ale ja się tak zasugerowałem tymi nazwami plików jakie wcześniej wkleiłeś, i przedstawiłem jedno z możliwych rozwiązań. Może spróbuj czegoś stąd: http://askubuntu.com/questions/149054/h ... via-script
W większości nie powinno być potrzeby używania root'a w tamtych rozwiązaniach.
ODPOWIEDZ