
У меня есть некоторые проблемы с высоким потреблением энергии, когда мой компьютер приостановлен. Наблюдается значительный расход энергии из дня в день, и батарея полностью разряжается за три-четыре дня, когда компьютер остается приостановленным без подключения к источнику питания. В настоящее время я использую Ubuntu 20.04, и это никогда не было проблемой до обновления или пока я все еще использовал Windows. Моя батарея сломалась несколько месяцев назад, и ИТ-отдел моего рабочего места сказал, что они никогда не сталкивались с поломкой батареи ноутбука после такого короткого времени (~2 года использования), что указывает на некоторые проблемы с тем, как Ubuntu управляет использованием батареи.
Я полагаю, что проблема с разрядкой батареи началась, когда я попытался исправить другую проблему, возникшую при обновлении до версии 20.04, когда мой компьютер не перешел в режим ожидания.Эта страницапредставил исправление, где строка intel_idle.max_cstate=1 i915.enable_dc=0
добавлена GRUB_CMDLINE_LINUX=
в /etc/sysconfig/grub
. В то время это на самом деле не предотвратило сбой перехода моего компьютера в режим ожидания, но я все равно оставил параметры там, так как это, как мне показалось, уменьшило количество случаев сбоя приостановки. Позже проблема с приостановкой, похоже, была исправлена, хотя мой компьютер все еще потребляет много энергии в режиме ожидания, поэтому я пытался восстановить настройки в исходное состояние. Я считаю, что проблема заключается в том, intel_idle.max_cstate=1
что предотвращает переход процессора в состояние глубокого сна. i915.enable_dc=0
отключает управление питанием графического процессора. Я не уверен, повлияет ли это на что-либо, так как мой ноутбук, по-видимому, использует только мой графический процессор nvidia.
Однако у меня здесь есть два вопроса:
- Я не могу найти файл с именем : В named
/etc/sysconfig/grub
нет папки и нет файла с именем . Однако, выполнив поиск, я нашел файл , который содержит строку/etc
sysconfig
grub
/boot/grub/grub.cfg
linux /boot/vmlinuz-5.4.0-77-generic root=UUID=901ebf90-3de9-4271-b1a3-c6ab7dec86c4 ro
intel_idle.max_cstate=1 i915.enable_dc=0
quiet splash $vt_handoff
. Это те параметры, которые мне следует изменить? Если нет, где я могу найти правильный файл конфигурации? - Я уже не помню первоначальные настройки. Какие параметры должны быть установлены?
Или может ли быть другая проблема, вызывающая разрядку батареи в режиме ожидания?
решение1
Вы можете изменить режим приостановки с «s2idle» на «deep».
Сначала проверьте текущий режим:cat /sys/power/mem_sleep
Затем измените его на «deep»:
sudo -i
echo 'deep' > /sys/power/mem_sleep
Я узнал об этом здесь:https://www.reddit.com/r/Ubuntu/comments/k24okb/battery_drain_on_laptop_while_suspended/
Мне это помогло. Раньше батарея держала 15 часов в режиме ожидания. Теперь она может работать несколько дней.
решение2
Давайте сначала ответим на ваши конкретные вопросы о еде
- В Ubuntu файл настроек grub — это
/etc/default/grub
- Если вы не изменяли указанный выше файл (что вполне вероятно, поскольку вы не смогли его найти), вы можете повторно создать новое
grub
развертывание, которое будет основано на этих файлах по умолчанию черезsudo update-grub
.
S0ix, вероятный виновник плохой работы сна
Первое, что нужно определить, — это использует ли ваш ноутбук так называемое «устаревшее» состояние сна S3 или так называемое «современное» состояние сна S0ix.
Это можно определить через настройки BIOS (если они доступны; некоторые ноутбуки не позволяют настраивать), S0ix иногда называют "Windows 10", а S3 иногда называют "Linux-совместимым". Обычно он находится в разделе "питание" в BIOS.
Название настроек BIOS дает подсказку: S0ix (пока) не (очень) хорошо поддерживается в Linux. Даже на моем ноутбуке 2021 года, на котором установлена 21.04, реализация недостаточна с точки зрения производительности питания.
Ниже ссылкатакже предоставляет быстрый скрипт Bash, позволяющий проверить, какой режим сна использует ваш ноутбук (вам это понадобится sudo apt install acpidump
в первую очередь).
Если на вашем ноутбуке предусмотрен переключатель BIOS в режим сна S3/legacy/Linux, лучше всего использовать его (вероятно, вы увидитерадикальныйулучшения, при условии, что прошивка вашего ноутбука не глючит; у меня глючит!). В противном случае, вы можете попытать счастья с Intelруководство по устранению неполадоки, наконец, немного поиска в Google, указав конкретную модель вашего ноутбука и «Linux S0ix», возможно, вы получите некоторые полезные советы.
S0ix — это путь в будущее
Редактировать (спустя год после первого поста): если относительно новый ноутбук имеет недостатки в этом отношении, вероятно, лучше всего попросить производителя исправить прошивку, в идеале предоставив полезную информацию изS0ixSelftestTool. Некоторые производители (Lenovo — один из них, о котором я знаю; надеюсь, есть и другие) заслуживают похвалы за активноевзаимодействие с клиентами Linux, для устранения таких проблем, среди прочего. Если производитель не предоставляет адекватную поддержку Linux, голосуйте ногами при следующей покупке ноутбука ;-)
Использованная литература: