Come prevenire la sospensione / ibernazione di Ubuntu Server


12

Sto eseguendo l'ultimo Ubuntu Server (letteralmente scaricato e installato ieri) su una scatola sotto la mia scrivania. Ho installato trac e OpenSSH. A intermittenza entrambi diventano non disponibili, come se il server fosse andato in sospensione, il che sembra strano perché per me l'idea di un server è che sia sempre acceso / disponibile.

Il server è utilizzato solo sulla LAN.

Ho provato ad aggiungere acpi=offa / etc / default / grub, eseguendo l'aggiornamento e il riavvio, nessuna differenza.

Al momento, ho SSH aperto e se lo lascio per un po 'di tempo, rimarrà connesso, ma torno orribilmente quando torno a usarlo. L'ultima volta che si è verificato questo problema di sospensione / ibernazione, ho dovuto collegare una tastiera e monitorare per ripristinarlo.

Qualche idea o suggerimento?


Non sono sicuro che funzionerà o no. Impostare sleep_computer_acsu 0 usando gconftool-2 --set --type int /apps/gnome-power-manager/timeout/sleep_computer_ac 0`
g_p

controlla le impostazioni di hdparm. qual è l'output disudo hdparm -B /dev/sda
mchid

il motivo per cui lo chiedo è perché a volte potrebbero volerci un paio di minuti prima che il sistema inizi a rispondere correttamente dopo che il disco si è spento.
mchid

Risposte:


7

Capisco che questo è un vecchio post, ma ho avuto lo stesso problema e ho avuto difficoltà a trovare una risposta decente.

Il mio laptop con Ubuntu Server andrebbe in un salvaschermo bianco e subito dopo tutto perderebbe la connessione al server. Non appena sono uscito dallo screen saver con la tastiera del laptop, tutto è stato in grado di connettersi ancora una volta. Acpi = off, setterm -blank 0 e altre opzioni descritte su domande simili non hanno mai funzionato, fino a quando non ho trovato una risposta funzionante da Unix e Linux SE.

Dopo questa soluzione, il mio laptop passa ancora al salvaschermo bianco, tuttavia non perdo più la connessione a nessuno dei servizi in esecuzione (SSH, SFTP, HTTP).

Questo comando disabilita la sospensione:

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

e questo comando lo riporta:

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

1

Prova a usare

setterm -blank 0

Deve essere inserito dopo ogni avvio, ma mantiene le cose in esecuzione.


puoi darci qualche informazione in più per favore
Pantera

Il setterm è il comando, -blank è ciò che regola il comando e 0 è il valore del tempo usato dal comando.

Cosa vorresti sapere in particolare?

Questo ha risolto il problema?


1

Potresti provare la caffeina. Puoi usare il comando 'caffeinato' per impedire che il tuo server dorma durante un determinato comando (vedi http://www.webupd8.org/2015/01/caffeine-app-gets-its-indicator-back.html per la sintassi ) o semplicemente impostarlo per evitare inattività tutto il tempo.


1
Sebbene la tua risposta sia corretta al 100%, potrebbe anche diventare inutile al 100% se quel link viene spostato, modificato, unito in un altro o il sito principale scompare ... :-( Pertanto, modifica la tua risposta e copia il relativo passi dal link alla tua risposta, garantendo così la tua risposta per il 100% della vita di questo sito! ;-) Puoi sempre lasciare il link in fondo alla tua risposta come fonte per il tuo materiale ...
Fabby

Perché installare un software di terze parti per fare ciò che setterm -blank 0 fa già?
Rodrigo,

-1

setterm -blank 0aggiunto al comando di avvio di GRUB in genere viene ignorato dal kernel e mi ritrovo a dover usare la funzione freccia su per digitarlo rapidamente più volte. Sembra funzionare dopo aver inserito il comando 15 o 20 volte da un terminale di root. Lo inserisco il più rapidamente possibile premendo i 2 tasti necessari (ovvero, freccia su seguita dal tasto Invio) e di solito riesco a far aprire un terminale.

Si informa che la chiusura di un terminale tenuto artificialmente aperto tramite il setterm -blank 0 comando` sembra essere interpretato dal kernel come una "indicazione" totalmente errata che ha i permessi per andare autonomamente in modalità sleep / ibernazione. Ti consiglio di avviare un terminale di root in, diciamo, tty2 o tty3 e lasciarlo in esecuzione. Finché il programma terminale rimane attivo, almeno sul mio sistema, sembra che mi possa essere permesso di mantenere il monitor della mia console attivo e funzionante.

setterm -blank 0non non affrontare il problema di chi ha dato le autorizzazioni di sistema per andare in modo indipendente in modalità sleep / ibernazione e come posso ottenere il controllo della mia schiena sistema. Per me è importante che il mio file server sia online e disponibile in ogni momento. Per mantenere il mio server, sto riscrivendo personalmente alcuni moduli del kernel. Dopo aver messo in atto quelle mod disabiliterò permanentemente gli aggiornamenti del software e il mio problema sarà risolto, almeno fino a quando non avrò acquistato un hardware più recente che richiede un kernel più recente, e quindi, al fine di mantenere il mio server in esecuzione, sarò costretto a riscrivere nuovamente parti del kernel.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.