Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Песочница (https://forum.antichat.xyz/forumdisplay.php?f=189)
-   -   Ляликсы и дебугга. (https://forum.antichat.xyz/showthread.php?t=478248)

DartPhoenix 25.07.2020 23:23

Вопрос сформулировать не так просто, поэтому не обессудьте. Выглядит как-то так:

Допустим я в xresources куда-нибудь добавил "xset -dpms". Чтобы монитор не отключался.

Но он вот назло взял и отключился.

Я такой не долго думая проверяю отключен он или нет - оказывается, например, нет. Он опять включен. Где-то в жопе мира в каком-то из скриптов (где угодно, вообще говоря, хоть при запуске миднайткоммандер) он включается обратно.

Возникает вопрос: где-то в Линухе есть нечто, что позволит мне поставить какую-то бряку или каким-либо иным образом узнать, где мать его это происходит ? Где в скрипте включается этот dpms ?

DartPhoenix 25.07.2020 23:25

Если нужно подключить gdb чтобы узнать - это тоже подойдет. Вопрос глобальный. Можно-ли это сделать вообще (вообще конечно можно, сам знаю) и как ? Желательно малой кровью.

altblitz 26.07.2020 11:58

That depends.

Если изначально не запускать X-Windows, закомментировав exec-[Desktop Environment] и остаться в голой command line + midnight commander,

то и в этом случае, монитор станет отключаться спустя 10-15 минут. Как и где это правится на иное - не интересовался.

Код:

Code:
blitz@inode ~ % cat .xinitrc
#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

...

numlockx &
exec cinnamon-session

#export XDG_CURRENT_DESKTOP=Budgie:GNOME
#exec budgie-desktop
#exec gnome-session
#exec graphene-session
#exec mutter --wayland --display-server -r
#exec openbox-session
#exec start-lumina-desktop
#exec startlxqt
#exec i3 -V >> ~/i3log-$(date +'%F-%k-%M-%S') 2>&1
#exec vos-session
#exec weston-launch

В [Desktop Environment], как-то Cinnamon, для этого есть скрипт /usr/share/cinnamon/cinnamon-settings/cinnamon-settings.py с опцией power.

Решение в лоб - отключить time-outs. В иных [Desktop Environment] полагается, что должно присутствовать аналогичной бледной тенью того, чем силён Cinnamon.

https://i.imgur.com/ymh8z8d.png

В целях эксперимента, дозволяется открыть ctrl-alt-F2 ещё одну сессию, с чистой command line и увидеть, как погаснет монитор.

DartPhoenix 26.07.2020 13:11

Цитата:

Сообщение от altblitz
altblitz said:

That depends.
Если изначально не запускать X-Windows, закомментировав exec-[Desktop Environment] и остаться в голой command line + midnight commander,
то и в этом случае, монитор станет отключаться спустя 10-15 минут. Как и где это правится на иное - не интересовался.
Код:

Code:
blitz@inode ~ % cat .xinitrc
#!/bin/sh

userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap

...

numlockx &
exec cinnamon-session

#export XDG_CURRENT_DESKTOP=Budgie:GNOME
#exec budgie-desktop
#exec gnome-session
#exec graphene-session
#exec mutter --wayland --display-server -r
#exec openbox-session
#exec start-lumina-desktop
#exec startlxqt
#exec i3 -V >> ~/i3log-$(date +'%F-%k-%M-%S') 2>&1
#exec vos-session
#exec weston-launch

В [Desktop Environment], как-то Cinnamon, для этого есть скрипт /usr/share/cinnamon/cinnamon-settings/cinnamon-settings.py с опцией power.
Решение в лоб - отключить time-outs. В иных [Desktop Environment] полагается, что должно присутствовать аналогичной бледной тенью того, чем силён Cinnamon.
https://i.imgur.com/ymh8z8d.png
В целях эксперимента, дозволяется открыть ctrl-alt-F2 ещё одну сессию, с чистой command line и увидеть, как погаснет монитор.

Дык в том - то и дело что хер поймешь.

Делаю "xset q" - пишет что заставка и dpms отключены.

Через 15 минут экран потухает.

Делаю последовательно

xset -dpms

xset s off

Все работает как положено.

Вывод xset q - выдает то же самое что и было.

Странно...

====================

Но вопрос даже не в этом. Тоесть есть некие негласные предписания что допустим эти настройки я должен делать в xresources. Но ничто же мне не мешает сделать их где угодно, хоть при загрузке фаерфокса.

Но если я так сделаю и забуду - хер потом найдешь ! И собссно вопрос в том, можно-ли в ляликсе как-то найти тот скрипт, который производит некие изменения в системе ?

Если я правильно понимаю - админскими методами никак. Если я правильно понимаю - можно впарить юзеру набор скриптов, каждый из которых по отдельности ничего особого не делает но все вместе - они могут просто сформировать не то что бэкдор, оно еще будет бекконнектиться и умолять злоумышленника принять рутовые привилегии

altblitz 26.07.2020 15:23

Цитата:

Сообщение от DartPhoenix
DartPhoenix said:

Если я правильно понимаю - админскими методами никак. Если я правильно понимаю - можно впарить юзеру набор скриптов, каждый из которых по отдельности ничего особого не делает но все вместе - они могут просто сформировать не то что бэкдор, оно еще будет бекконнектиться и умолять злоумышленника принять рутовые привилегии

В принципе, управление монитором происходит непосредственно в user space.

Пример тому - световая температура монитора, разная.

С восходом до захода Солнца, и с заходом до рассвета в данной геолокации - температура световая монитора - разная она.

Так удобно и эргономично глазам, в длительной работе у экрана.

Код:

Code:
blitz@inode ~/.config/redshift % cat redshift.conf
; Global settings for redshift
[redshift]
; Set the day and night screen temperatures
temp-day=6000
temp-night=4500

; Disable the smooth fade between temperatures when Redshift starts and stops.
; 0 will cause an immediate change between screen temperatures.
; 1 will gradually apply the new screen temperature over a couple of seconds.
fade=1
...

; Set the adjustment-method: 'randr', 'vidmode'
; type 'redshift -m list' to see all possible values.
; 'randr' is the preferred method, 'vidmode' is an older API.
; but works in some cases when 'randr' does not.
; The adjustment method settings are in a different section.
; adjustment-method=drm
adjustment-method=randr

blitz@inode ~/.config/redshift % cat randr.conf
screen=0

И теперь, исполнение комманд xset +/- dpms с проверкой статуса xset -q, ясно показывает, что оное - не оказывает по сути никакого влияния на требуемую функциональность DPMS.

Код:

Code:
blitz@inode ~/.config/redshift % xset -dpms
blitz@inode ~/.config/redshift % xset -q
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
Colors:
  default colormap:  0x22    BlackPixel:  0x0    WhitePixel:  0xffffff
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Disabled

blitz@inode ~/.config/redshift % xset +dpms
blitz@inode ~/.config/redshift % xset -q
Screen Saver:
  prefer blanking:  yes    allow exposures:  yes
  timeout:  0    cycle:  0
Colors:
  default colormap:  0x22    BlackPixel:  0x0    WhitePixel:  0xffffff
DPMS (Energy Star):
  Standby: 0    Suspend: 0    Off: 0
  DPMS is Enabled
  Monitor is On

Either DPMS is enabled or disabled, in any case:

Standby: 0 Suspend: 0 Off: 0

DartPhoenix 26.07.2020 20:14

Я шаманил с gtk - оказалось Лис Огненный подхватывает системные настройки. Шаманил я прямо в ~/.config/gtk3.0 поэтому хрен его отучишь так делать.

Вследствие этого если кто использует стили по умолчанию говно получается...

Я ушь думал опечалиться - но такая херня редко вылезает, быстро фиксится - зато

все остальное - прямо шикарно. Все сайты так и норовят выглядеть как Adwaita:dark. Менюшки чОрные, скроллы тонкие. Весьма премило получайцо.

Вот думаю так и оставить...

DartPhoenix 26.07.2020 20:18

Кстати с цветовой температурой х/з.

Мне 4500 чот. не очень заходит. Достаточно темной темы.

ЭЙ !!! Я вообще не об этом кстати ! Я грю это... можно как-то врубить дебугга и отладить/получить трейс скриптов, которые выполняются ?

fandor9 26.07.2020 20:19

Цитата:

Сообщение от DartPhoenix
DartPhoenix said:

Дык в том - то и дело что хер поймешь.
Делаю "xset q" - пишет что заставка и dpms отключены.
Через 15 минут экран потухает.
Делаю последовательно
xset -dpms
xset s off
Все работает как положено.
Вывод xset q - выдает то же самое что и было.
Странно...
====================
Но вопрос даже не в этом. Тоесть есть некие негласные предписания что допустим эти настройки я должен делать в xresources. Но ничто же мне не мешает сделать их где угодно, хоть при загрузке фаерфокса.
Но если я так сделаю и забуду - хер потом найдешь !
И собссно вопрос в том, можно-ли в ляликсе как-то найти тот скрипт, который производит некие изменения в системе ?
Если я правильно понимаю - админскими методами никак. Если я правильно понимаю - можно впарить юзеру набор скриптов, каждый из которых по отдельности ничего особого не делает но все вместе - они могут просто сформировать не то что бэкдор, оно еще будет бекконнектиться и умолять злоумышленника принять рутовые привилегии

я сам не пробовал, но возможно как идея, вот способ отслеживать системные вызовы. Можно сначала с помощью

Код:

Code:
strace xset q

посмотреть вызовы и потом уже поставить бряк на вызов.

DartPhoenix 26.07.2020 20:21

Цитата:

Сообщение от fandor9
fandor9 said:

я сам не пробовал, но возможно как идея,
вот
способ отслеживать системные вызовы. Можно сначала с помощью
Код:

Code:
strace xset q

посмотреть вызовы и потом уже поставить бряк на вызов.

Ну это не совсем легальный механизм сисадминов... но да. Видимо так и придется делать (если так уже не сделано до нас).

fandor9 26.07.2020 20:25

Цитата:

Сообщение от DartPhoenix
DartPhoenix said:

Ну это не совсем легальный механизм сисадминов... но да. Видимо так и придется делать (если так уже не сделано до нас).

а что надо ещё что-бы легально было?


Время: 00:19