Przypadkowo kliknąłem opcję „Gdy moc jest krytycznie niska” w Ustawieniach systemu> Moc. Oryginalny wpis był pusty, ale jedyne dwie opcje po kliknięciu to Hibernacja i Wyłącz. Chcę ustawić go z powrotem w tryb zawieszenia.
Przypadkowo kliknąłem opcję „Gdy moc jest krytycznie niska” w Ustawieniach systemu> Moc. Oryginalny wpis był pusty, ale jedyne dwie opcje po kliknięciu to Hibernacja i Wyłącz. Chcę ustawić go z powrotem w tryb zawieszenia.
Odpowiedzi:
Nie ma możliwości zawieszenia dostępnego.
Nie można zawiesić, gdy moc jest krytycznie niska, aby zawiesić, potrzebujesz energii, aby zapisać sesję w pamięci RAM, co pozwala na szybsze wznowienie, jeśli stracisz moc, stracisz obecny stan zawieszenia.
Hibernacja kopiuje bieżący stan na dysk twardy, jest wolniejszy, ale można wyłączyć zasilanie.
Wyłączenie jest oczywiste - stracisz wszystkie dane w aktywnej sesji i będziesz mieć nową sesję po ponownym uruchomieniu.
Aby zmienić to ustawienie z powrotem w celu zawieszenia, użyj edytora dconf. Wejdź na org.gnome.settings-daemon.plugins.power i zmień działanie krytycznej baterii na zawieszenie.
Alternatywnie w sesji terminalowej użyj polecenia:
gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'suspend'
gsettings
Komenda jest rezydentem domyślnie podczas dconf-editor
wymaga instalacji poprzez:
sudo apt-get install dconf-tools
Nie mam wystarczającej liczby przedstawicieli do edycji lub komentowania, więc jeśli ktoś by się tym przejmował, jest to komentarz / edycja odpowiedzi AtomHeartFather.
Możesz także zmienić wartości procentowe baterii uważanej za słabą / krytyczną za pomocą narzędzi dconf. W tej samej sekcji zasilania zmodyfikuj następujące wartości do żądanych wartości procentowych.
percentage-action
percentage-critical
percentage-low
Uwaga: Szczególną uwagę należy zwrócić na percentage-action
ustawienie, które je wyzwoli critical-battery-action
.
use-time-for-policy
wejście również zostać zmienione (odznaczone, lub ustawione na „false”) gsettings set org.gnome.settings-daemon.plugins.power use-time-for-policy false
. Ale to nie wydaje się działać na pewno na wszystkich systemach / maszynach.
Miałem ten problem.
Byłem bardzo sfrustrowany za każdym razem, gdy mój komputer się wyłączał, podczas gdy wykonywałem poważną pracę.
Napisałem skrypt, aby sprawdzać stan zasilania klimatyzacji co dwie minuty i hibernować, gdy nastąpi zanik zasilania. Zmodyfikuj odpowiednio do stanu baterii. Moja bateria może działać przez dwie minuty po zaniku zasilania sieciowego.
#!/bin/bash
if [[ $(cat /sys/class/power_supply/AC0/online) == *0* ]] ; then
echo 'On battery power'
#pmi action suspend
dbus-send --system --print-reply \
--dest="org.freedesktop.UPower" \
/org/freedesktop/UPower \
org.freedesktop.UPower.Suspend
#else
# echo 'On Ac Power'
fi
Umieszczam skrypt w pliku o nazwie powerMon.sh
i ustawiam go jako cron job
uruchamiany co dwie minuty.
W dniu 12.04 sleepd
zawieszałem maszynę, gdy bateria była rozładowana lub maszyna była bezczynna.
Chociaż sleepd nie jest spakowany dla Ubuntu 14.04, a nawet został osierocony przez jego programistę, można go skompilować i zainstalować samodzielnie.
Instalacja na Ubuntu 12.04:
sudo apt-get install sleepd
Edytuj plik /etc/default/sleepd
i ustaw następujące opcje:
# -E Do not poll events (since they weren't working for me).
# -c 60 Poll every 60 seconds.
# -u 900 Sleep after 15 minutes idle time when on battery,
# -U 3600 or 60 minutes when on AC power,
# -b 3 or when battery power drops below 3%.
# -H (optional) Use upower instead of ACPI.
PARAMS="-E -c 60 -u 900 -U 3600 -b 3"
Następnie uruchom ponownie demona:
sudo service sleepd restart
Ma również opcje, aby nie zasnąć, jeśli jest aktywność sieci, ale te przestały działać dla mnie.
Na moim komputerze, najwyraźniej ACPI nie zawsze poprawnie raportowało temperaturę, więc musiałem dodać, -H
aby uśpić, aby odczytał temperaturę z góry zamiast z ACPI. Odkryłem nieprawidłowe odczyty po nieoczekiwanych wydatkach, dodając -v
i oglądając plik dziennika za pomocą tail -f /var/log/*log | grep --line-buffered sleepd
.
(Miałem dziwny błąd na jednym laptopie z 12.04, że maszyna budzi się ponownie natychmiast po zawieszeniu, ale tylko wtedy, gdy uśpienie wstrzymuje się z powodu niskiego poziomu naładowania baterii, a nie z powodu bezczynności. Mam nadzieję, że nie będziesz miał tego doświadczenia! Problem nigdy nie zdarzył się przed 14.04.)
Istnieje sposób na całkowite wyłączenie zawieszenia / wyłączenia zasilania.
gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'false'
(w przypadku gdy jest krytycznie niski nawet na 100%)
Napisałem prosty skrypt bash, który zrobi to na dowolnym Linuksie ... po prostu dodaj ten skrypt do uruchamiania ... co dwie minuty skrypt sprawdza stan baterii i zawiesza się, jeśli bateria spadnie poniżej 11% ...
#!/bin/sh
flag=0
while [ 1 ]; do
var=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "percentage"| grep -o '[0-9]*')
if [ $var -lt 11 ] && [ $flag -eq 0 ]; then
systemctl suspend
flag=1
elif [ $var -gt 11 ] && [ $flag -eq 1 ]; then
flag=0
fi
sleep 120
done