Comment désactiver mon système pour qu'il s'endorme?

53

Je reçois une configuration de serveur Web à la maison sur un ancien ordinateur de bureau AMD 2400+. Ubuntu 11.04 est installé et fonctionne, mais après un certain temps, je ne peux plus naviguer sur le serveur. Quand je vais au clavier et appuie sur une touche, tout fonctionne à nouveau comme par magie.

J'ai parcouru le BIOS et je ne vois aucune fonctionnalité d'économie d'énergie activée. Y a-t-il quelque chose comme ça dans Ubuntu? Peut-il être désactivé?

Je n'ai aucune interface graphique installée. Ceci est la console seulement.

Mike Wills
la source

Réponses:

53

Sur Ubuntu 16.04 LTS, j’ai utilisé avec succès les éléments suivants pour désactiver la suspension:

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

Et ceci pour le réactiver:

sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target

De man systemctl:

mask NAME...  
           Mask one or more units, as specified on the command line. This
           will link these unit files to /dev/null, making it impossible to
           start them. This is a stronger version of disable, since it
           prohibits all kinds of activation of the unit, including
           enablement and manual activation. Use this option with care. This
           honors the --runtime option to only mask temporarily until the
           next reboot of the system. The --now option may be used to ensure
           that the units are also stopped. This command expects valid unit
           names only, it does not accept unit file paths.

 unmask NAME...
           Unmask one or more unit files, as specified on the command line.
           This will undo the effect of mask. This command expects valid
           unit names only, it does not accept unit file paths.
Dustin Kirkland
la source
Comment pourrais-je tester si elles sont ou ne sont pas déjà masquées? (Et que fait maskou unmaskfait de toute façon? Jamais entendu parler de ceux-là auparavant.)
ArtOfWarfare
@ArtOfWarfare From man systemctl"Masque une ou plusieurs unités, comme indiqué sur la ligne de commande. Ces fichiers d'unité seront liés à / dev / null, ce qui rendra impossible leur démarrage. Il s'agit d'une version plus puissante de la désactivation, car elle interdit toute sorte de fichiers. activation de l'unité, activation et activation manuelle comprises. Utilisez cette option avec précaution. Cette option permet à l'option --runtime de ne masquer que temporairement jusqu'au prochain redémarrage du système. L'option --now peut être utilisée pour s'assurer que les unités sont également arrêté. Cette commande attend uniquement les noms d’unités valides, elle n’accepte pas les chemins de fichiers d’unités. "
Centimane
@Centimane - Merci. Alors, comment pourrais-je vérifier s'ils étaient déjà maskédités ou non? Évidemment, je pourrais essayer de les lancer et voir ce qui se passe, mais cela pourrait potentiellement avoir l’effet secondaire de mettre mon ordinateur en veille (ce qui serait ... mauvais ... il a des problèmes à se réveiller, ce qui explique pourquoi je veux juste Assurez-vous qu'il ne dort jamais.)
ArtOfWarfare
@ArtOfWarfare vous pouvez simplement /etc/systemd/system/rechercher un lien vers/dev/null
Centimane
@ArtOfWarfare ou systemctl show -p FragmentPath [service]. La FragmentPathpropriété vous indique où systemdpense le fichier unité. Un service masqué dira/dev/null
Centimane
19

Interface graphique

Avez-vous regardé:

Système -> Préférences -> Gestion de l'alimentation

Dans l'onglet Alimentation, mettez l'ordinateur en veille lorsqu'il est inactif pendant: "Jamais".

Terminal

Pouvez-vous ouvrir "gconf-editor"?

Regarder dans: /apps/gnome-power-manager/timeout

Essayez de régler sleep_computer_acsur0

Je ne suis pas positif si quelque chose d'autre doit être changé aussi.

Jason Iverson
la source
Comment puis-je faire cela sur la console? Je n'ai pas de gui installé.
Mike Wills
@ Mike Wills Mis à jour depuis que vous n'avez pas de gui
Jason Iverson
1
Encore une fois, je n'ai pas de gnome ni aucun de ceux installés. C'est une pure console.
Mike Wills
5
Jusqu'à ce jour moyen de ligne de commande est:gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout '0' && gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout '0'
dess
2
@dess très utile. Merci! Vous devriez poster votre réponse dans une réponse à la vue des autres.
kalu
12

La bonne réponse pour cela se trouve ici :

Avez-vous essayé d'ajouter les options du noyau acpi=off apm=offà l' GRUB_CMDLINE_LINUX_DEFAULTin /etc/default/grub?

Ensuite, lancez sudo update-grubet redémarrez votre ordinateur.

Mike Wills
la source
3
Bien que l’ajout de ces options à ma configuration grub ait empêché ma machine de s’endormir, il convient de noter que ce paramètre acpi=offa de nombreux autres effets . La clé pour moi est que cela désactive également l'hyperthreading.
PicoutputCls le
@PicoutputCls l'article que vous liez indique que acpi=ht "Désactive presque complètement le système ACPI; seuls les composants nécessaires à l'hyper threading seront utilisés"
pzkpfw
Tout le système devient très lent si je mets acpi = off
GummyBear21
7

S'il vous plaît essayez de regarder dans ces liens - cyberciti.biz et Arch forum

Ceci est un extrait du lien cyberciti.biz :

Par défaut, le noyau Linux utilisera l'option de sauvegarde d'écran pour la désactiver. Pour ce faire, vous devez taper cette commande ( cette option désactive les fonctions de surveillance de VESA):

$ setterm -powersave off -blank 0

S'il vous renvoie une erreur qui se lit comme suit: impossible de (dé) paramétrer le mode d'économie d'énergie

Vous devez arrêter le système X Window et réexécuter la commande ci-dessus. Mieux, ajoutez les deux commandes suivantes à votre fichier ~ / .xinitrc:

setterm -blank 0 -powersave off -powerdown 0
xset s off
Nitin Venkatesh
la source
7

Aucune de ces solutions décrites n'a fonctionné pour moi. L'ordinateur portable allait encore dormir. L'utilisation de l'option de ligne de commande Grub Linux de acpi = off a empêché le démarrage de l'ordinateur portable. J'ai finalement trouvé cette solution.

sudo vi /etc/default/acpi-support # and then set SUSPEND_METHODS="none"
sudo /etc/init.d/acpid restart

Basé sur la solution originale de Stephan, ici: faire fonctionner Ubuntu Server sur un ordinateur portable avec le couvercle fermé?

Andrew Vian
la source
3

En plus des options systemctl mask / unmask, j’utilise également ce qui suit pour activer / désactiver la suspension pour le bureau Gnome.

gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'suspend'
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'suspend'

ou

gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'nothing'
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'

J'ai trouvé ceux-ci en explorant les paramètres révélés par les commandes répertoriées dans Comment vider TOUS les fichiers dconf / gsettings afin que je puisse les comparer entre deux machines différentes?

HankB
la source
0

J'ai trouvé Light Locker, car j'ai Ubuntu 14.04.2 avec LXDE (Lubuntu) Desktop; Si vous disposez de ce bureau, vous pouvez modifier les paramètres par défaut et gérer le moniteur par ce biais. Sinon, vous devrez peut-être installer gconf-editor via terminal si vous ne le possédez pas. Light Locker est dans peut être trouvé dans Préférences dans le menu principal.

Shane Horton
la source
gconf-editor nécessite une interface graphique.
Eric