Jak mogę zawiesić lub hibernować laptopa za pomocą wiersza poleceń, bez instalowania dodatkowego oprogramowania?
command-line
suspend
power-management
hibernate
użytkownik1034
źródło
źródło
systemctl suspend
Odpowiedzi:
Tradycyjnie ubuntu wspierało dość tępą metodę zawieszenia i hibernacji. Żaden z nich nie integrowałby się dobrze z innymi aplikacjami i czasami nawet nie działał na niektórych komputerach. Nowa metoda nie wymaga rootowania i powiadamia wszystkie aplikacje nasłuchujące zdarzeń zasilania.
Metoda systemowa
Począwszy od Ubuntu 16.04,
systemctl
należy użyć wywołania (patrz Polecenie zawieszenia w Ubuntu 16.04 )i
Nowa metoda
Zobacz odpowiedź tutaj na tej stronie Adama Paetznicka dotyczącą korzystania z dbus . Idealnie byłoby stworzyć
~/bin/suspend
skrót / skrypt, który ułatwi korzystanie z tej akcji.Aby korzystać z ssh, powinieneś zmodyfikować reguły zestawu zasad zgodnie z opisem Petera V. Mørcha
Stara metoda
Zgodnie z forum Ubuntu możesz użyć następujących poleceń:
i
Wymaga to zainstalowania pakietu powermanagement-interface (nie przetestowano).
sudo apt-get install powermanagement-interface
Znalazłem też polecenia
sudo pm-suspend
isudo pm-hibernate
do pracy na moim netbooku.źródło
apt-get install powermanagement-interface
uruchomić pmi.apt-get install powermanagement-interface
Sposobem przyjaznym dla gnomów jest użycie dbus.
Są dwie zalety tego polecenia
pm-suspend
.Spowoduje to zablokowanie ekranu (po wznowieniu), jeśli masz tę opcję wybraną w gnome.
Nie wymaga uprawnień roota, więc łatwo jest na przykład dodać go jako skrót klawiaturowy.
Jak wspomniano w komentarzach, wymiana
Suspend
w ostatnim wierszu w celuHibernate
utworzenia polecenia hibernacji:Jeśli nastąpi hibernacja,
Error org.freedesktop.UPower.GeneralError: not authorized
użytkownik może nie uzyskać hibernacji. Edytuj lub utwórz,/etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
aby zawierał następującą sekcję: (źródło)Zostało to przetestowane na UbuntuGnome 14.04 .
Uwaga: Jest to w zasadzie to samo co odpowiedź qbi, ale zaktualizowane do pracy z nowszymi wersjami Ubuntu, a także z hibernacją.
źródło
Hibernate
po prostu zamienić ostatnią linię naorg.freedesktop.UPower.Hibernate
język angielski
Jeśli chcesz, aby komputer zawiesił się w ciągu godziny, ponieważ chcesz iść spać i słuchać ulubionej stacji radiowej, otwórz terminal i wpisz:
a twój komputer zaśnie za 1 godzinę. Po przebudzeniu zachowasz otwarte zdjęcia i wszystkie inne rzeczy.
Możesz zastąpić
1h
to, co chcesz:h
godzinami,m
minutami,s
sekundami,d
dniami.Dobranoc!
Français
Si vous voulez juste que votre ordinateur se mette en veille dans uure heure parce que vous voulez vous endormir en ecoutant votre radio preférée, ouvrez Terminal et tapez:
et votre ordinateur s'endormira dans une heure. Quand vous vous réveillerez, aura conservé en mémoire vos apps ouvertes.
Vous pouvez remplacer
1h
par ce que vous voulez:h
wlać heures,m
wlać kilka minut,s
wlać sekundę,d
wlać jutro.Bonne nuit!
Español
Sie quieres suspender tu computadora en una hora porque quieres ir dormir escuchando tu estación de radio favourita, tan solo abre el terminal y escribe:
y tu computadora se quedará dormida pl 1 hora. Cuando despiertes, allí habrán quedado abiertas tus imágenes y todas tus cosas.
Puedes reemplazar
1h
por lo que desees:h
para horas ,m
para minutos,s
para segundos,d
para días.¡Buenas noches!
źródło
Dla Ubuntu 12.04 LTS i Ubuntu 13.04
Aby uzyskać hibernację:
Aby uzyskać Zawieszenie:
źródło
Możesz użyć do tego pliku
/sys/power/state
. Najpierw dowiedz się, jakie stany są obsługiwane:lub przez dbus:
# Zawieś dbus-send --session --dest = org.gnome.PowerManager \ --type = method_call --print-reply --reply-timeout = 2000 \ / org / gnome / PowerManager org.gnome.PowerManager.Suspend # Hibernacja dbus-send --session --dest = org.gnome.PowerManager \ --type = method_call --print-reply --reply-timeout = 2000 \ / org / gnome / PowerManager org.gnome.PowerManager.HibernateZgodnie z tym wpisem w starterze powyższy interfejs został usunięty. Więc nie będzie już działać w Ubuntu.
źródło
/sys/power/state
. Ponadto metoda dbus została usunięta z Ubuntu, więc nie będzie już działać.$ sudo echo -n mem > /sys/power/state
-bash: /sys/power/state: Permission denied
sudo -i
Najpierw musisz użyć fajkisudo tee
:echo mem | sudo tee /sys/power/state
Aby zamknąć system (14.04) z wiersza poleceń (lub skrótu klawiaturowego) użyj:
Dowiedziałem się tego, grając z gdbus, który może wyświetlić listę dostępnych interfejsów:
Aby wyświetlić listę usług dostępnych w autobusie:
Aby znaleźć metody:
źródło
ponieważ 15.04 systemD jest standardowym systemem inicjującym, dlatego dostępne jest nowe polecenie:
źródło
systemctl suspend
powoduje zawieszenie komputera, ale nie powoduje zablokowania ekranu, mimo że zaznaczyłem pole wyboru „Blokuj ekran, gdy system przechodzi w tryb uśpienia” w Ustawieniach -> Menedżer zasilania -> Bezpieczeństwo. Czy ktoś ma pojęcie dlaczego?systemctl suspend
nadal zawiesza komputer. Teraz powoduje to również zablokowanie ekranu, tylko wtedy, gdy pole wyboru „Blokuj ekran, gdy system przechodzi w tryb uśpienia” w Ustawieniach -> Menedżer zasilania -> Bezpieczeństwo jest zaznaczone.Odpowiedź Adama Paetznicka dbus-send nie działała tak, jak rzekomo dla mnie świadome; maszyna obudziła się odblokowana, mimo że gnome-power-manager jest ustawiony na blokowanie ekranu podczas budzenia. Chcę, aby ekran był zablokowany podczas budzenia i stwierdził, że:
Wyobrażam sobie, że to nie zależy od konfiguracji gnoma, ale tego nie testowałem.
źródło
xscreensaver-command --lock
w zależności od przypadku.Nowy interfejs
… Który działa w wersji 15.10 Wily, a być może utopiczny i żywy.
Na szczęście nie wymaga sudo, w przeciwieństwie do
pm-suspend
polecenia.źródło
Oto jak wprowadzić zdalną maszynę w tryb gotowości przez ssh:
/ sys / power / state działa w systemie Ubuntu 13.10. pmi podaje błąd Dbus.
źródło
Osobiście eksperymentowałem z metodą pmi. Jednakże, gdy próbowałem to dostałem komunikat o błędzie:
Error org.freedesktop.DBus.Error.Spawn.ChildExited: Launch helper exited with unknown return code 1
. Istnieje jednak obejście w trzecim komentarzu do tego raportu o błędzie , który wydaje się, że zadziałał dla mnie (używam Ubuntu 13.03).źródło
Aktualizacja dla tych, którzy podobnie jak ja nadal pracują na systemach KDE / Ubuntu 14.04. Aby zablokować użycie
qdbus
i zawiesić korzystaniedbus
. Pełna komenda:Aby hibernować, tzn. Zawiesić dysk twardy zamiast pamięci RAM, zamień „Wstrzymaj” na końcu polecenia na „Hibernuj”.
Aby tylko zablokować ekran bez zawieszania,
xscreensaver-command -lock
zadziała, JEŚLI wpiszesz tylko 1 łącznik dla opcji „-lock” i tylko jeśli wygaszacz ekranu jest uruchomiony. Właściwie niezbyt przydatne polecenie. Używaniei3lock
jest łatwiejsze, ale wtedy nie pojawi się schludne okno dialogowe logowania, aby wrócić do pracy, tak jak podczas korzystaniaqdbus
.źródło
Poniższe działa dla mnie 16.04 (z komputerem Gnome):
gnome-screensaver-command --lock && compsleep
Zainstalowałem go również jako niestandardowy skrót klawiaturowy z panelu ustawień Gnome jako klawisze „Shift-Super-X”.
źródło