1 (21.09.2026 19:07:11 отредактировано survordie)

Предыдущая часть руководства по настройке Xfce тут.
Что характеризует ноутбук? Правильно, мобильность. А мобильность достигается за счёт того, что ноутбук таскает с собой автономный источник питания, то бишь батарею. Естественное желание, чтобы ноутбук выполнял свои функции как можно дольше. Соответственно, нужно настроить Debian таким образом, чтобы деградация батареи на ноутбуке происходила как можно медленнее, а это зависит от характера использования ноутбука - от батареи или от розетки.
Итого, у нас есть две крайности. Первая - это выжать из автономности ноутбука как можно больше. Вторая - ноутбук нужен лишь для того, чтобы заменить стационарный компьютер и поэтому он почти всегда подключён к розетке. У любого нормального ноутбука (попадаются и ненормальные, как у меня, например, с недоделанным BIOS, где у ACPI нет нижнего порога) есть два параметра, которые управляют зарядкой - нижний порог заряда, при достижении которого батарея начинает заряжаться и верхний порог заряда, при достижении которого батарея прекращает заряжаться.
Считается, что щадящим режимом для батареи считается режим 40-60. Т.е. при достижении 40% заряда батареи, начинается её зарядка. А при достижении 60% батареи зарядка прекращается. Совершенно очевидно, что автономность при этом околонулевая и поэтому режим лучше всего подходит для ноутбуков, почти постоянно подключённых к розетке.
Соответственно, когда нужна максимальная автономность, следует использовать режим 20-80 или даже 20-95. В этом случае батарея деградирует быстрее, но автономность работы будет сильно выше. Батарея деградирует с космической скоростью при заряде ниже 20%, поэтому лучше не доводить до такой ситуации.
Итого, для постоянного подключения к розетке используем режим 40-60, а для максимальной автономной работы режим 60-95 или даже 75-95. Нижний порог 60 во втором случае для того, чтобы батарея начала заряжаться при первом же подключении к розетке, т.к. при работе от батареи, порог в 20% заряда можно отследить лишь глазами (ну и уведомлениями).

  • + Установка tlp

    Устанавливаем утилиту, которая показывает потребление батареи:

    sudo aptitude install powertop

    Устанавливаем утилиту управления энергопотреблением:

    sudo aptitude install tlp

    Посмотрим сколько пожирает энергии ноутбук, работающий от батареи. Для этого вводим команду:

    sudo powertop

    У меня ноутбук уже настроен, так что потребление относительно(того что было раньше) небольшое:
    https://i.gyazo.com/thumb/400/107b348eef213ed0587f2835afd00dfe
    Для начала проверим саму батарею:

    sudo tlp-stat -b

    https://i.gyazo.com/thumb/400/eae225f4b85af95d32f0426fae2e4a84
    На что нужно обратить внимание на этом скрине.
    Во-первых, батарея называется BAT1
    Во-вторых, её расчётная остаточная ёмкость - 97,4% от номинала.
    В-третьих, то, о чём я говорил - конкретно у меня контроллер батареи поддерживает лишь верхний порог заряда (вывод /sys/class/power_supply/BAT1/charge_control_end_threshold ), нижнего нет. Я очень сильно надеюсь на то, что производитель в будущих версиях BIOS исправит свой косяк, но надежды мало.
    Нижний порог заряда вывелся бы как /sys/class/power_supply/BAT1/charge_control_start_threshold
    Ну что ж, настроим нашу батарею. Т.е. мой ноутбук очень тяжёлый и не предполагает работы от батареи, то я его настраиваю на стратегию 40-60.

    Просмотр всех параметров tlp. Параметры по умолчанию находятся в файле /usr/share/tlp/defaults.conf, пользовательские(переопределённые) параметры находятся в файле /etc/tlp.conf. Команда выводит их все с учётом переопределённых:

    sudo tlp-stat -c

    Кусок вывода:
    /etc/tlp.conf L0038: TLP_ENABLE="1"
    defaults.conf L0007: TLP_WARN_LEVEL="3"

    /etc/tlp.conf L0038 указывает на то, что параметр был переопределён пользователем (в файле /etc/tlp.conf)
    defaults.conf указывает, что параметр взят из файла с настройками по умолчанию /usr/share/tlp/defaults.conf.

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

    Для внесения настроек нужно отредактировать файл /etc/tlp.conf. Строки закомментированы символом #:

    sudo nano /etc/tlp.conf

    Первый параметр, который мы видим
    TLP_ENABLE=1
    По умолчанию он равен 1 и означает, что tlp управляет энергосбережением.

    + Настройка батареи

    Мотаем вниз до значения:
    RESTORE_THRESHOLDS_ON_BAT=1
    Восстанавливает значения для параметров START_CHARGE_THRESH_BAT1 и STOP_CHARGE_THRESH_BAT1 после событий, которые сбрасывают пороги на значения по умолчанию (например, команда tlp recalibrate)
    Устанавливаем значения для начала зарядки батареи и конца, в процентах:
    START_CHARGE_THRESH_BAT1=40
    STOP_CHARGE_THRESH_BAT1=60
    Перед длительным НЕиспользованием ноутбука желательно использовать команду:

    sudo tlp setcharge 40 50 BAT1

    а потом зарядить ноутбук до 50%. После перезагрузки пороговые значения восстановятся до заданных (40-60 в моём случае).
    Включаем экономию в режиме подключения к сети (устройства могут отключаться):
    RUNTIME_PM_ON_AC="auto"
    Включаем экономию в режиме работы от батареи:
    RUNTIME_PM_ON_BAT="auto"

    + Включение управления электропитанием дисткреной видеокарты для гибридной графики

    При работе от встроенной видеокарты, дискретная видеокарта всё равно потребляет энергию, тем самым разряжая батарею. Необходимо включить управление электропитанием для дискретной видеокарты. Для этого сначала нужно выяснить номер устройства на шине PCI, а затем внести его в список устройств, для которых tlp будет принудительно включать управление питанием (переводить в режим auto).
    Вывод всех устройств на шине PCI:

    lspci

    Примерный вывод:

    00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Root Complex
    00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Phoenix IOMMU
    00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Host Bridge
    00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix GPP Bridge
    00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix GPP Bridge
    00:01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix GPP Bridge
    00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Host Bridge
    00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix GPP Bridge
    00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix GPP Bridge
    00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Host Bridge
    00:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 19h USB4/Thunderbolt PCIe tunnel
    00:04.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Host Bridge
    00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Host Bridge
    00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Internal GPP Bridge to Bus [C:A]
    00:08.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Internal GPP Bridge to Bus [C:A]
    00:08.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Internal GPP Bridge to Bus [C:A]
    00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 71)
    00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
    00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 0
    00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 1
    00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 2
    00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 3
    00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 4
    00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 5
    00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 6
    00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Phoenix Data Fabric; Function 7
    01:00.0 VGA compatible controller: NVIDIA Corporation GB206M [GeForce RTX 5060 Max-Q / Mobile] (rev a1)
    01:00.1 Audio device: NVIDIA Corporation Device 22eb (rev a1)
    02:00.0 Non-Volatile memory controller: Sandisk Corp WD PC SN5000S M.2 2280 NVMe SSD (DRAM-less)
    03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller (rev 15)
    04:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8852CE PCIe 802.11ax Wireless Network Controller (rev 01)
    05:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9C1a (DRAM-less)
    66:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix3 (rev b6)
    66:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Radeon High Definition Audio Controller [Rembrandt/Strix]
    66:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Phoenix CCP/PSP 3.0 Device
    66:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Device 15b9
    66:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Device 15ba
    66:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] Audio Coprocessor (rev 63)
    66:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h/1ah HD Audio Controller
    67:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Function
    67:00.1 Signal processing controller: Advanced Micro Devices, Inc. [AMD] AMD IPU Device
    68:00.0 Non-Essential Instrumentation [1300]: Advanced Micro Devices, Inc. [AMD] Phoenix Dummy Function
    68:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Device 15c0
    68:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Device 15c1
    68:00.5 USB controller: Advanced Micro Devices, Inc. [AMD] Pink Sardine USB4/Thunderbolt NHI controller #1

    Из вывода видно, что искомая видеокарта это
    01:00.0 VGA compatible controller: NVIDIA Corporation GB206M [GeForce RTX 5060 Max-Q / Mobile] (rev a1)

    Встроенная видеокарта:
    66:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix3 (rev b6)
    Для того, чтобы позволить tlp управлять электропитанием дискретной видеокарты(отключать, когда на неё нет нагрузки), нужно добавить её номер в параметр RUNTIME_PM_ENABLE (несколько устройств добавляются в кавычках через пробел)

    RUNTIME_PM_ENABLE="01:00.0"

    Есть обратный параметр RUNTIME_PM_DISABLE, который отключает управление электропитанием для критичных устройств (указываются PCI-адреса).
    Для драйверов существует отдельный параметр RUNTIME_PM_DRIVER_DENYLIST. По умолчанию в него уже внесены mei_me, nouveau, radeon, xhci_hcd.
    xhci_hcd – это драйвер USB 3.0-контроллеров. Все USB-устройства (мыши, клавиатуры, веб-камеры, внешние диски) подключены к контроллеру, который работает через этот драйвер. Таким образом, TLP никогда не будет пытаться перевести в спящий режим сам USB-контроллер, и мышь и клавиатура всегда будут работать.
    nouveau и radeon – это открытые драйверы для видеокарт NVIDIA и AMD. Они включены в чёрный список, чтобы предотвратить случайное отключение дискретной графики.
    mei_me – это драйвер для Intel Management Engine (системная служба). Его отключение может привести к нестабильности.

    AMDGPU_ABM_LEVEL_ON_AC=0 - Адаптивная подсветка экрана (ABM) — функция, которая автоматически затемняет тёмные участки изображения, чтобы сэкономить энергию. 0 означает отключено.

    AMDGPU_ABM_LEVEL_ON_BAT=0 - То же самое, но при работе от батареи

    + Настройка процессора

    CPU_SCALING_GOVERNOR_ON_AC=powersave - Политика управления частотой процессора при работе от сети. powersave предпочитает минимальную частоту, но при нагрузке повышает её. Это стандартный энергосберегающий режим, рекомендуемый для большинства систем.

    CPU_SCALING_GOVERNOR_ON_BAT=powersave - то же самое, что и CPU_SCALING_GOVERNOR_ON_AC, только от батареи.

    CPU_ENERGY_PERF_POLICY_ON_AC=balance_performance - Управляет энергоэффективностью процессора Intel/AMD (HWP — Hardware‑controlled Performance States). balance_performance даёт хорошую производительность с умеренным энергопотреблением. Другие варианты: performance, balance_power, power.

    CPU_ENERGY_PERF_POLICY_ON_BAT=balance_power - При работе от батареи смещает баланс в сторону экономии энергии.

    CPU_MIN_PERF_ON_AC=0 - Минимально допустимая производительность (0–100) при питании от сети. 0 означает, что система может снижать частоту до самого низкого возможного уровня.

    CPU_MAX_PERF_ON_AC=100 - Максимальная производительность (0–100) при питании от сети. 100 — разрешено использовать полную частоту.

    CPU_MIN_PERF_ON_BAT=0 - Минимальная производительность при работе от батареи.

    CPU_MAX_PERF_ON_BAT=50 - Максимальная производительность от батареи ограничена 50% — это ограничивает максимальную частоту процессора, продлевая время работы.

    CPU_BOOST_ON_AC=1 - Разрешает технологию Turbo Boost (автоматическое повышение частоты выше номинала) при питании от сети. 1 = включено.

    CPU_BOOST_ON_BAT=0 - Отключает Turbo Boost при работе от батареи — экономит энергию и уменьшает нагрев.

    + Настройка дисков

    DISK_IDLE_SECS_ON_AC=0 - Время бездействия диска (в секундах), после которого включается «laptop mode» — режим, когда данные копятся в памяти и реже пишутся на диск. 0 означает, что этот режим отключён — диск работает в обычном режиме.

    DISK_IDLE_SECS_ON_BAT=2 - Включает «laptop mode» через 2 секунды простоя диска (экономия энергии).

    MAX_LOST_WORK_SECS_ON_AC=15 - Это время (в секундах), в течение которого система может откладывать запись данных на диск.

    MAX_LOST_WORK_SECS_ON_BAT=60 - При работе от батареи система может ждать до 60 секунд, прежде чем записать данные на диск. Это снижает количество обращений к диску и экономит заряд. При этом данные временно хранятся в памяти, что безопасно — при выключении они всё равно будут записаны.

    + Настройка общих параметров

    NMI_WATCHDOG=0 - отключает механизм мониторинга (NMI watchdog) для обнаружения зависаний ядра. 1 - для отладки ядра.

    TLP_DEFAULT_MODE=AC - Если TLP не может сам определить, подключён ли ноутбук к розетке (случается редко), он будет считать, что он работает от сети (AC), и применит настройки для этого режима.

    USB_AUTOSUSPEND=1 - Включает автоматическое отключение USB-устройств (мышь, клавиатура, флешка), когда они не используются. Это экономит энергию. Но если мышь будет засыпать и не сразу реагировать на движение, то нужно будет отключить.

    После внесения настроек, необходимо перезапустить службу tlp для их применения:

    sudo systemctl restart tlp

    Посмотреть итоговый список устройств с их статусом управления через tlp:

    sudo tlp-stat -e

    напротив устройств, которые tlp не трогает, будет стоять on, а не auto

    На всякий случай все мои настройки для tlp для гибридной графики, где встроенная видеокарта это АМД(драйвер amdgpu), а дискретная это NVidia

    + все мои настройки tlp

    TLP_ENABLE=1
    TLP_DEFAULT_MODE=AC
    DISK_IDLE_SECS_ON_AC=0
    DISK_IDLE_SECS_ON_BAT=2
    MAX_LOST_WORK_SECS_ON_AC=15
    MAX_LOST_WORK_SECS_ON_BAT=60
    CPU_SCALING_GOVERNOR_ON_AC=powersave
    CPU_SCALING_GOVERNOR_ON_BAT=powersave
    CPU_ENERGY_PERF_POLICY_ON_AC=balance_performance
    CPU_ENERGY_PERF_POLICY_ON_BAT=balance_power
    CPU_MIN_PERF_ON_AC=0
    CPU_MAX_PERF_ON_AC=100
    CPU_MIN_PERF_ON_BAT=0
    CPU_MAX_PERF_ON_BAT=50
    CPU_BOOST_ON_AC=1
    CPU_BOOST_ON_BAT=0
    NMI_WATCHDOG=1
    AMDGPU_ABM_LEVEL_ON_AC=0
    AMDGPU_ABM_LEVEL_ON_BAT=0
    RUNTIME_PM_ON_AC=auto
    RUNTIME_PM_ON_BAT=auto
    RUNTIME_PM_DRIVER_DENYLIST="mei_me amdgpu"
    RUNTIME_PM_ENABLE="01:00.0"
    RUNTIME_PM_DISABLE="04:00.0 05:00.0"
    USB_AUTOSUSPEND=1
    START_CHARGE_THRESH_BAT1=40
    STOP_CHARGE_THRESH_BAT1=60
    RESTORE_THRESHOLDS_ON_BAT=1

  • + Отключение тачпада при подключенной мышке

    К сожалению, данный функционал в Крысе не реализован, поэтому придётся писать скрипт, который потом нужно подключать в автозагрузку. Сам скрипт несложный, но не учитывает всех возможных конфигураций (точнее, наименований мыши). Я исхожу из того, что подключается оптическая мышь, у которой в наименовании обязательно будет указано Optical Mouse
    Возможен вариант, когда у мыши не будет в названии этих слов. Точное название мыши можно получить из команды ниже.
    Теперь нужно узнать название тачпада. Делается это с помощью команды просмотра всего, что есть устройств ввода:

    xinput list

    https://i.gyazo.com/thumb/400/ba2b95ad3e3a47b4fcc969293c201505
    В моём случае это устройство под названием ASCP1201:00 093A:3017 Touchpad
    Создаём файл с названием, например, touchpad-toggle.sh куда вставляем следующие строки:

    #!/bin/bash
    
    #Имена устройств (точные строки из 'xinput list')
    TOUCHPAD_NAME="ASCP1201:00 093A:3017 Touchpad"
    
    while true; do
    
    #Проверяем, активно ли устройство мыши (id=10)
    if xinput list --name-only | grep -qi "Optical Mouse"; then
    
    #Мышь найдена - отключаем тачпад
    xinput disable "$TOUCHPAD_NAME"
    else
    
    #Мышь не найдена - включаем тачпад
    xinput enable "$TOUCHPAD_NAME"
    fi
    sleep 5 # Пауза 5 секунд перед следующей проверкой
    done

    где значение для TOUCHPAD_NAME совпадает с именем тачпада, которое до этого вывела команда xinput list

    Делаем скрипт исполняемым:

    chmod +x ~/touchpad-toggle.sh

    Теперь нам нужно добавить скрипт в автозагрузку.
    Меню->Диспетчер настроек->Сеансы и запуск->Автозапуск приложений. Нажимаем кнопку Добавить, вставляем Имя, Описание (любые) и команду
    /home/lionet/touchpad-toggle.sh где lionet это ник(login) пользователя
    Запуск: при входе в систему.
    https://i.gyazo.com/thumb/400/1300090df55387f81f53c64bd78e2a91
    Можно сразу же запустить скрипт, чтобы проверить его работоспособность:

    bash ~/touchpad-toggle.sh &
  • + Настройки тачпада в Xfce

    Зайти в настройки тачпада Пуск->Диспетчер настроек->Мышь и тачпад. На вкладке Устройство, выбрать свой тачпад, затем на подвкладках выбрать подвкладку Тачпад и в ней проставить галочку напротив Нажатие на тачпад для щелчка.
    https://i.gyazo.com/thumb/400/079503984379c6e66c0f9f441958af59

  • +  запуск приложений через дискретную видеокарту

    В Линукс нет возможности автоматического переключения между встроенной видеокартой и дискретной в зависимости от нагрузки. Поэтому приложения, которые требуют дискретной видеокарты, необходимо запускать на ней явно.

    + запуск на Nvidia

    Свободный драйвер nouveau не обеспечивает должной производительности, поэтому приведённая ниже информация касается исключительно проприетарных драйверов Nvidia.
    Для запуска приложений напрямую через терминал используется следующий шаблон:

    __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia <путь_до_приложения>

    Например, для демонстрации работы дискретной видеокарты можно использовать команду:

    __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxgears

    Для мониторинга процессов, запущенных через дискретную видеокарту используется команда:

    nvidia-smi

    При запущенной команде выше для демонстрации работы дискретной выдеокарты nvidia-smi выведет в Processes glxgears
    Если запуск приложения идёт через ярлыки (.desktop файлы), то потребуется добавить env
    Например, для DaVinci команда запуска будет выглядеть так:

    env __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia /opt/resolve/bin/resolve
    + настройки игр для Steam

    Система запуска игр в Steam не наследует процессы от лаунчера, поэтому его значок запуска модифицировать не нужно (самому лаунчеру дискретная видеокарта не требуется).
    Для запуска игр на дискретной видеокарте через лаунчер Steam нужно для каждой игры зайти в её свойства, перейти на вкладку Общие и модифицировать параметры запуска следующим образом

    __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia %command%

    https://i.gyazo.com/thumb/400/4037c86754dbd381298d0e585bfa469c
    К сожалению, лаунчер Steam пока не поддерживает глобальную настройку для всех игр.
    Для проверки запуска игры на дискретной видеокарте использовать команду, описанную выше nvidia-smi

    + настройка DaVinci
    env __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia /opt/resolve/bin/resolve

    https://i.gyazo.com/thumb/400/dcc72aaec8182cf59f9aa2c5d971b4ac

    +  настройка Blender
    env __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia blender %f
    +  запуск на AMD

    К сожалению, у меня нет гибридной графики с AMD. Но согласно технической информации, к запуску приложений достаточно добавить установку переменной DRI_PRIME=1
    Например, для запуска Blender использовать команду:

    DRI_PRIME=1 blender

    Мониторинг запущенных процессов осуществляется с помощью команд:
    ...для старых видеокарт:

    radeontop

    ...для новых видеокарт, у которых есть поддержка технологии ROCm:

    rocm-smi
+ утилиты для ноутбуков
+ Asus
+ MUX

У некоторых моделей Asus существует аппаратное переключение между гибридной графикой (когда обработка ведётся на дискретной видеокарте, а вывод видео на экран осуществляет встроенная видеокарта) и дискретной видеокартой (когда вывод на экран, а также обработка данных, осуществляется только дискретной видеокартой). Это позволяет убрать накладные расходы и повысить быстродействие графической подсистемы примерно на 10-15%

Для этого у Asus есть утилита supergfxctl.
Установим инструменты для сборки утилиты:

sudo aptitude install curl git build-essential 

Установим исходники из которых будем собирать утилиту:

git clone https://gitlab.com/asus-linux/supergfxctl.git

Перейдём в созданный каталог:

cd supergfxctl

Запустим сборку утилиты:

make

...и её установку в систему:

sudo make install

После установки в систему запустим сервис, который будет выполнять вывод информации, а также переключение режимов:

sudo systemctl enable --now supergfxd.service

Выводим справку по командам утилиты:

supergfxctl

Узнаём текущий режим:

supergfxctl -g

Посмотреть список доступных режимов:

supergfxctl -s

[Integrated, Hybrid, AsusMuxDgpu]

Переключить в режим дискретной графики:

supergfxctl -m AsusMuxDgpu

Переключить в гибрид:

supergfxctl -m Hybrid

При переключении в/из гибридного режима перезагрузка не требуется. Достаточно завершить сеанс и зайти снова для применения изменений.

+ включение подсветки клавиатуры

Мерзкий Asus отдаёт предпочтение Винде, поэтому вместо универсального управления подсветкой ограничивает её управлению Виндой. Для того, чтобы включить нормальный режим управления подсветкой нужно установить утилиту hidapitester
Скачиваем отсюда https://github.com/todbot/hidapitester/releases файлик для линукс
hidapitester-linux-x86_64.zip
Распаковываем и даём команду:

sudo ./hidapitester --vidpid 0B05/19B6 --open --send-feature 70,1

Эту команду нужно сделать постоянной, чтобы каждый раз не запускать вручную.
Создадим символическую ссылку:

sudo ln -s ~/hidapitester /usr/local/bin/hidapitester

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

sudo nano /etc/systemd/system/backlight.service

с содержимым

[Unit]
Description=Enable keyboard backlight via hidapitester
After=multi-user.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/hidapitester --vidpid 0B05/19B6 --open --send-feature 70,1
User=root
# Небольшая задержка на случай, если устройство появляется не сразу:
# ExecStartPre=/bin/sleep 2

[Install]
WantedBy=multi-user.target

Перегрузить systemd:

sudo systemctl daemon-reload

...и включить сервис:

sudo systemctl enable --now backlight.service

На ноутбуке ASUS FA808UM-S8050 увеличение и уменьшение яркости подсветки управляется клавишами FN+F2, FN+F3

В следующий раз будем устанавливать базовые программы.

Debian 13 + xfce