È stata ripristinata l'opzione Ibernazione, ma non è possibile riprendere da Ibernazione


10

Nel mio Ubuntu 12.04, l'opzione di ibernazione funzionava bene. Tuttavia, di recente ho installato Debian su un'altra partizione e quando ho provato di nuovo ad avviare Ubuntu, ho ricevuto un messaggio nella schermata di avvio che diceva:

L'unità disco per / non è ancora pronta o non presente. Continua ad aspettare; oppure premere s per saltare il montaggio o M per il ripristino manuale.

Dopo aver effettuato l'accesso a Ubuntu, ho scoperto che la mia opzione di ibernazione è scomparsa.

Esiste un modo per ripristinare l'opzione di ibernazione?

EDIT: ho risolto il problema dell'unità disco e ho ripristinato l'opzione di ibernazione. Quando ho fatto "sudo pm-hibernate", il mio sistema è andato in letargo. Tuttavia, quando si riaccende, si è avviato normalmente e quindi non vi è stato alcun effetto di ibernazione.

Come può essere corretto?

EDIT1: Sistema - Lenovo ideapad s10-2.

inserisci qui la descrizione dell'immagine

EDIT2: / etc / fstab

inserisci qui la descrizione dell'immagine

EDIT3: Screenshot del mio disco rigido.

inserisci qui la descrizione dell'immagine

Risposte:


12

Suppongo che tu abbia installato Debian in modo che utilizzi la sua partizione di swap separata. In caso contrario, suggerirei di farlo (creare un'altra partizione di swap e modificare i /etc/fstabfile di conseguenza), poiché sistemi operativi troppo diversi che scrivono nella stessa partizione di swap potrebbero scartare i dati di ibernazione memorizzati sulla partizione dall'altro sistema operativo.

Quindi è necessario assicurarsi che il sistema operativo su cui si desidera utilizzare l'ibernazione (di solito entrambi), scriva nella partizione corretta. Questo è configurato nel /etc/initramfs-tools/conf.d/resumefile. Devi inserire l'UUID della partizione di swap corretta (usa sudo blkid /dev/$device_nameper ottenere l'UUID). Infine è necessario aggiornare il ramdisk iniziale:

sudo update-initramfs -u -k all

Questo dovrebbe risolverlo.


1
Questo ha funzionato perfettamente. Grazie, ho riavuto il mio letargo. :)
harisibrahimkv,

1
Anch'io ho avuto problemi a riprendere il letargo. Dopo aver in qualche modo modificato l'UUID della mia partizione di swap, il mio sistema non riprendeva, qualunque cosa io sembrassi fare. Risolvere il mio /etc/initramfs-tools/conf.d/resume , copiando e incollando l'UUID da sudo blkidsembra aver risolto il problema.
TSJNachos117,

2

Sfortunatamente, l'ibernazione non funziona in molti casi, il che può causare la perdita di dati se si prevede che i documenti e le applicazioni si riaprano quando si riaccende il computer. Pertanto, l'ibernazione è disabilitata per impostazione predefinita.

Verifica se l'ibernazione funziona

Nota : salvare sempre il lavoro prima del letargo
È necessario salvare tutto il lavoro prima del letargo del computer, nel caso in cui qualcosa vada storto e le applicazioni e i documenti aperti non possano essere recuperati quando si riaccende il computer.

È possibile utilizzare la riga di comando per verificare se l'ibernazione funziona sul computer.

  1. Apri il Terminale premendo Ctrl+ Alt+ To cercando il terminale nella Dash.

  2. Digitare sudo pm-hibernatenel terminale e premere Enter.
    Inserisci la tua password quando richiesto.

  3. Dopo lo spegnimento del computer, riaccenderlo. Le tue applicazioni aperte sono state riaperte?

Se l'ibernazione non funziona, controlla se la partizione di swap è almeno grande quanto la RAM disponibile.

Abilita ibernazione

Se il test di ibernazione funziona, è possibile continuare a utilizzare il sudo pm-hibernatecomando quando si desidera ibernare.

È inoltre possibile abilitare l'opzione di ibernazione nei menu. Per farlo, usa il tuo editor di testo preferito per creare /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla. Aggiungi quanto segue al file e salva:

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate; org.freedesktop.login1.hibernate-multiple-sessions
ResultActive=yes

Il riavvio e l'ibernazione sono tornati!

Oppure corri killall unity-panel-serviceper ripristinare il menu.

Alcuni utenti dovranno quindi eseguire sudo update-grubper rendere disponibile l'opzione di ibernazione nel menu di accensione. Alcuni utenti potrebbero anche dover almeno disconnettersi e poi accedere per farlo apparire nel menu di accensione (in alto a destra).

Fonte : Ubuntu Docs - Power Hibernate

Fonte : Ubuntu Wiki - Debugging Kernel Hibernate


0

Prova ad aggiungere nobootwaitun'opzione a /etc/fstab, qualcosa del genere:

/dev/sda1 / ext4 rw,nobootwait 0 1


Potresti chiarirlo? Il mio / etc / fstab ha la seguente voce per la mia partizione di swap: # swap era on / dev / sda8 durante l'installazione UUID = 08a07061-165b-4f0a-87c3-470a02d1ea4c nessuno swap sw 0 0 Devo cambiare "sw" in "rw, nobootwait "?
harisibrahimkv,

Devi aggiungerlo al mountpoint di root, non allo swap. Pubblica il tuo fstab completo e ti posterò la versione aggiornata.
Frantique,

L'ho aggiunto alla domanda.
harisibrahimkv,

1
errori = remount-ro, nobootwait
Frantique,

0

Quando vai in letargo, un'immagine completa della tua RAM viene copiata per lo scambio. Quindi la maggior parte delle volte le persone hanno problemi con l'ibernazione che non funziona, il loro scambio è troppo piccolo.

È necessario almeno lo swap di una RAM. Se hai molta RAM, imposta swappiness = 0 . Quindi, se si dispone di 8 GB di RAM, utilizzare 8,5 o 9 GB di scambio. Se hai 4 GB di RAM, 6 GB di swap sono un buon numero.


Ho 1 GB di RAM e ho 1,95 GB di spazio di scambio. Domanda aggiornata con uno screenshot del mio disco rigido.
harisibrahimkv,

0

Per quanto ne so, Linux, incluso Ubuntu, dovrebbe avere uno spazio di scambio 2x di ram installato.

Alcuni come la mia configurazione personalizzata del computer non è in grado di utilizzare l'ibernazione, anche se ho più di abbastanza spazio di scambio. Immagine

Se pensi che lo swap ti stia rallentando, puoi usare questo script che ho trovato su Internet. Pulisce lo scambio.

#!/bin/bash

free_data="$(free)"
mem_data="$(echo "$free_data" | grep 'Mem:')"
free_mem="$(echo "$mem_data" | awk '{print $4}')"
buffers="$(echo "$mem_data" | awk '{print $6}')"
cache="$(echo "$mem_data" | awk '{print $7}')"
total_free=$((free_mem + buffers + cache))
used_swap="$(echo "$free_data" | grep 'Swap:' | awk '{print $3}')"

echo -e "Free memory:\t$total_free kB ($((total_free / 1024)) MB)\nUsed swap:\t$used_swap kB ($((used_swap / 1024)) MB)"
if [[ $used_swap -eq 0 ]]; then
    echo "Congratulations! No swap is in use."
elif [[ $used_swap -lt $total_free ]]; then
    echo "Freeing swap..."
    swapoff -a
    swapon -a
else
    echo "Not enough free memory. Exiting."
    exit 1
fi

Ho uno spazio di scambio 2x disponibile. Grazie per il suggerimento
harisibrahimkv,
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.