LinuxForum.Fans
Тема

Настройка Debian 13. Ноутбук

Автор: survordie 1 сообщений 449 просмотров
14.08.2026 14:37 · отредактировано #440258

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

  • Установка tlp

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

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

    text
    sudo aptitude install tlp

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

    text
    sudo powertop

    У меня ноутбук уже настроен, так что потребление относительно(того что было раньше) небольшое:

    Для начала проверим саму батарею:

    text
    sudo tlp-stat -b


    На что нужно обратить внимание на этом скрине.
    Во-первых, батарея называется 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. Команда выводит их все с учётом переопределённых:

    text
    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. Строки закомментированы символом #:

    text
    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
    Перед длительным НЕиспользованием ноутбука желательно использовать команду:
    text
    sudo tlp setcharge 40 50 BAT1

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

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

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

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

    text
    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 (несколько устройств добавляются в кавычках через пробел)

    text
    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 для их применения:

    text
    sudo systemctl restart tlp

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

    text
    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
    Возможен вариант, когда у мыши не будет в названии этих слов. Точное название мыши можно получить из команды ниже.
    Теперь нужно узнать название тачпада. Делается это с помощью команды просмотра всего, что есть устройств ввода:
    text
    xinput list


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

    text
    
    #!/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

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

    text
    chmod +x ~/touchpad-toggle.sh

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

    Можно сразу же запустить скрипт, чтобы проверить его работоспособность:

    text
    bash ~/touchpad-toggle.sh &

  • Настройки тачпада в Xfce

    Зайти в настройки тачпада Пуск->Диспетчер настроек->Мышь и тачпад. На вкладке Устройство, выбрать свой тачпад, затем на подвкладках выбрать подвкладку Тачпад и в ней проставить галочку напротив Нажатие на тачпад для щелчка.

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

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

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

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

    text
    __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxgears

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

    text
    nvidia-smi

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

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

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


    К сожалению, лаунчер Steam пока не поддерживает глобальную настройку для всех игр.
    Для проверки запуска игры на дискретной видеокарте использовать команду, описанную выше nvidia-smi

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


    настройка Blender
    text
    env __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia blender %f

    запуск на AMD

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

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

    text
    radeontop

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

    text
    rocm-smi

утилиты для ноутбуков
Asus
MUX

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

Для этого у Asus есть утилита supergfxctl.
Установим инструменты для сборки утилиты:
text
sudo aptitude install curl git build-essential 

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

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

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

text
cd supergfxctl

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

text
make

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

text
sudo make install

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

text
sudo systemctl enable --now supergfxd.service

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

text
supergfxctl

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

text
supergfxctl -g

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

text
supergfxctl -s

[Integrated, Hybrid, AsusMuxDgpu]

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

text
supergfxctl -m AsusMuxDgpu

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

text
supergfxctl -m Hybrid

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

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

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

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

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

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

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

с содержимым

text

[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:

text
sudo systemctl daemon-reload

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

text
sudo systemctl enable --now backlight.service

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

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

Войдите или зарегистрируйтесь, чтобы ответить.