Acasă
» LINUX
»
Cum se verifică bateria unui laptop în Linux din linia de comandă
Cum se verifică bateria unui laptop în Linux din linia de comandă
Folosește-l upowerpentru a verifica nivelul de încărcare și starea de încărcare a unui laptop Linux de la un terminal. Execută comanda upower -epentru a găsi dispozitivul bateriei, apoi inspectează-l cu upower -i. Pentru a estima uzura bateriei, compară energia raportată la încărcare completă cu energia inițială proiectată. Procentul de încărcare îți spune câtă energie a mai rămas în acest moment; nu este un procent de stare a bateriei.
Verificați bateria cu UPower
1. Găsiți dispozitivul bateriei
Deschideți un terminal și listați dispozitivele de alimentare pe care UPower le poate vedea:
upower -e
Căutați o cale care conține battery_, cum ar fi /org/freedesktop/UPower/devices/battery_BAT0. Sufixul poate diferi în funcție de laptop. Documentele de referință pentru comenzile UPower-e prezintă enumerarea dispozitivelor și -iafișarea detaliilor unui dispozitiv.
Exemplu de cale de dispozitiv UPower; numele bateriei de pe sistemul dvs. poate fi diferit.
2. Citiți încărcarea și starea curentă
Copiați calea bateriei din ieșirea dvs. în această comandă. Înlocuiți calea exemplu dacă a dvs. este diferită:
Căutați percentageși state. Procentul reprezintă nivelul actual de încărcare; starea indică de obicei în curs de încărcare, descărcare sau încărcare completă. În funcție de baterie și firmware, raportul poate include și energia rămasă, timpul estimat până la descărcare sau încărcare completă și capacitatea de încărcare completă. Estimările de timp pot lipsi atunci când laptopul este conectat la priză, citirile se modifică sau hardware-ul nu raportează suficiente date. Referința dispozitivului UPower definește aceste câmpuri.
Valorile de ieșire exemplificative sunt cu titlu ilustrativ; citirile dumneavoastră vor fi diferite.
În mod normal, nu aveți nevoie de o shell root pentru aceste verificări doar în citire. Rularea sudo -sprimă nu este necesară și oferă terminalului privilegii mai largi decât necesită această sarcină.
Verificați bateria fără UPower
Linux expune citirile acceptate ale surselor de alimentare prin /sys/class/power_supply/. Mai întâi, găsiți directorul care se identifică ca baterie:
for d in /sys/class/power_supply/*; do
[ -r "$d/type" ] && [ "$(cat "$d/type")" = "Battery" ] && printf '%s
' "$d"
done
Folosește calea pe care o imprimă în locul celei de /sys/class/power_supply/BAT0mai jos. Multe laptopuri folosesc BAT0, dar numele nu este garantat. Pentru a citi starea de bază:
capacityeste nivelul curent de încărcare de la 0 la 100, în timp ce statusindică dacă bateria se încarcă, se descarcă, este completă sau nu se încarcă. Documentația sursei de alimentare a kernelului Linux descrie aceste atribute și citirile suplimentare privind energia, încărcarea, starea de funcționare și numărul de cicluri pe care le pot expune driverele.
Directorul bateriei sysfs oferă un procent de încărcare rapidă și starea de încărcare.
Estimați starea bateriei din datele privind capacitatea
O baterie poate fi încărcată la 100% și totuși să aibă mai puțină energie decât atunci când era nouă. Dacă UPower raportează ambele energy-fullși energy-full-design, comparați-le pentru a estima cât de mult a mai rămas din capacitatea completă inițială:
upower -i /org/freedesktop/UPower/devices/battery_BAT0 | awk '
/energy-full:/ { full = $2 }
/energy-full-design:/ { design = $2 }
END {
if (full > 0 && design > 0)
printf "Estimated full-capacity health: %.1f%%
", 100 * full / design
else
print "Energy capacity data is unavailable"
}'
De exemplu, o capacitate curentă completă de 45 Wh împărțită la o capacitate proiectată de 60 Wh oferă o estimare de 75%. Înlocuiți calea dispozitivului găsită anterior. Dacă lipsesc câmpurile de energie, verificați în schimb valorile charge-fullși corespondente charge-full-design; comparați o pereche cu aceleași unități. Nu împărțiți încărcarea sau energyvaloarea curentă la capacitatea proiectată și nu o numiți stare de funcționare - aceasta ar amesteca încărcarea rămasă cu uzura bateriei.
Cifra de 75% este un exemplu de calcul, nu o citire de pe un laptop real.
Unele combinații mai noi de kernel și firmware expun, de asemenea state_of_health, . Dacă fișierul respectiv există, îl puteți citi direct, dar documentația kernelului menționează că calculul său poate fi specific furnizorului. Citirile de capacitate sunt estimări de la controlerul bateriei; calibrarea, firmware-ul și suportul hardware afectează acuratețea acestora, așa că folosiți-le ca o tendință, mai degrabă decât ca o măsurătoare de laborator.
Opțional: folosiți Battop pentru o vizualizare live a terminalului
Dacă doriți afișajul interactiv prezentat în ghidul original, Battop este un vizualizator separat de baterii pentru terminale. Proiectul său README descrie instalarea Arch printr-un helper AUR, versiuni precompilate și compilarea din sursă. Dacă instrumentul Git și Cargo al lui Rust sunt deja instalate, ruta de compilare a sursei este:
git clone https://github.com/svartalf/rust-battop.git
cd rust-battop
cargo build --release
./target/release/battop
Instalați Rust și Cargo prin intermediul sursei de pachete de încredere a distribuției dvs. sau prin intermediul programului oficial de instalare Rustup . Battop este opțional: UPower sau sysfs pot răspunde la întrebările de bază despre baterii fără a adăuga un alt program. Consultați battop -hopțiunile disponibile în versiunea pe care ați instalat-o.
Dacă Linux nu afișează o baterie
Dacă upowerlipsește, instalați upowerpachetul din repozitoriile de software ale distribuției dvs., apoi rulați din nou upower -e.
Dacă comanda listează dispozitivele, dar nu și bateria, verificați numele directoarelor sysfs și confirmați că firmware-ul laptopului expune o baterie la Linux.
Dacă un câmp de capacitate sau de sănătate lipsește, este posibil ca driverul kernelului să nu îl furnizeze. Lipsa datelor nu înseamnă că bateria este sănătoasă sau că este defectă; înseamnă că metoda respectivă nu poate raporta valoarea.
Pentru a urmări modificarea citirilor, porniți upower --monitor-detailși deconectați sau reconectați alimentarea. Apăsați Ctrl+Cpentru a opri monitorizarea.