Состояние батареи Lenovo T440s неизвестно, но заряжается?

Если существует только один раздел, сделайте это:

  • fdisk /dev/<drive>
    • p - наблюдайте текущие разделы.
    • d - удалите цельный раздел.
    • n - сделайте новый основной раздел № 1. Удостоверьтесь, что это охватывает целый диск (я смог просто принять все значения по умолчанию),
    • a - сделайте тот раздел загрузочным снова.
    • p - удостоверьтесь, что это похоже на вывод первой печати.
    • В случае необходимости использовать t изменить тип раздела для соответствия первой печати.
    • Если все выглядит правильным, w записать изменения.
  • resize2fs /dev/<drive>1.

Эти шаги работали на меня каждый раз для VMs на моем кластере XenServer.

Как всегда, если существуют какие-либо действительно важные данные, удостоверьтесь, что у Вас есть недавнее резервное копирование.

13
16.05.2015, 09:20
3 ответа

Находясь в Arch, вы можете попробовать установить пакетtpacpi-bat(Perl-скрипт с вызовами ACPI для последних моделей ThinkPad (, таких как T420 и W520 ), чьи пороги заряда батареи не поддерживаются tp _smapi )с

pacman -S tpacpi-bat

Это могло бы помочь исправить это. См. информацию о конфигурации здесь .

0
27.01.2020, 19:54

Это распространенная проблема ноутбуков Thinkpad с двумя батареями.

Когда вы подключаете ноутбук к сети, он начинает заряжаться с батареи BAT0, в то время как батарея BAT1 сообщает о неизвестном состоянии. BAT1 сообщит о состоянии зарядки, когда BAT0 заполнится и BAT1 действительно начнет заряжаться.

Вы должны принять это во внимание в своем скрипте и объединить значения для BAT0 и BAT1, чтобы получить что-то полезное:

battery_level=$(("$battery_level_0 + $battery_level_1"))
battery_max=$(("$battery_max_0 + $battery_max_1"))

battery_percent=$(("$battery_level * 100"))
battery_percent=$(("$battery_percent / $battery_max"))

Вот полный пример:

#!/bin/sh

path_ac="/sys/class/power_supply/AC"
path_battery_0="/sys/class/power_supply/BAT0"
path_battery_1="/sys/class/power_supply/BAT1"

ac=0
battery_level_0=0
battery_level_1=0
battery_max_0=0
battery_max_1=0

if [ -f "$path_ac/online" ]; then
    ac=$(cat "$path_ac/online")
fi

if [ -f "$path_battery_0/energy_now" ]; then
    battery_level_0=$(cat "$path_battery_0/energy_now")
fi

if [ -f "$path_battery_0/energy_full" ]; then
    battery_max_0=$(cat "$path_battery_0/energy_full")
fi

if [ -f "$path_battery_1/energy_now" ]; then
    battery_level_1=$(cat "$path_battery_1/energy_now")
fi

if [ -f "$path_battery_1/energy_full" ]; then
    battery_max_1=$(cat "$path_battery_1/energy_full")
fi

battery_level=$(("$battery_level_0 + $battery_level_1"))
battery_max=$(("$battery_max_0 + $battery_max_1"))

battery_percent=$(("$battery_level * 100"))
battery_percent=$(("$battery_percent / $battery_max"))

if [ "$ac" -eq 1 ]; then
    plug=""

    echo "$plug $battery_percent %"
else
    if [ "$battery_percent" -gt 95 ]; then
        echo ""
    elif [ "$battery_percent" -gt 85 ]; then
        icon=""
    elif [ "$battery_percent" -gt 60 ]; then
        icon=""
    elif [ "$battery_percent" -gt 35 ]; then
        icon=""
    elif [ "$battery_percent" -gt 10 ]; then
        icon=""
    else
        icon=""
    fi

    echo "$icon $battery_percent %"
fi
1
27.01.2020, 19:54

Иногда неизвестные сбои могут препятствовать зарядке аккумулятора. Простой способ исправить это — выключить компьютер, удерживать кнопку питания в течение 15–30 секунд, подключить адаптер переменного тока, а затем запустить компьютер.

-1
19.04.2020, 12:43

Теги

Похожие вопросы