Posso spostare hiberfil.sys su un'altra unità?


76

Sto esaurendo lo spazio sul mio% SYSTEMDRIVE% su Windows. Esiste un hiberfil.sysfile con dimensioni pari a quasi 3 GB.

Capisco che hiberfil.sysviene utilizzato per la funzionalità di ibernazione di Windows. https://support.microsoft.com/en-us/help/13770/windows-shut-down-sleep-hibernate-your-pc

Il file di sistema nascosto Hiberfil.sys si trova nella cartella principale dell'unità in cui è installato il sistema operativo. Windows Kernel Power Manager riserva questo file quando si installa Windows. La dimensione di questo file è approssimativamente uguale alla quantità di memoria ad accesso casuale (RAM) installata sul computer.

Il computer utilizza il file Hiberfil.sys per archiviare una copia della memoria di sistema sul disco rigido quando è attivata l'impostazione di sospensione ibrida. Se questo file non è presente, il computer non può ibernare.

Non desidero disabilitare la funzione di ibernazione.

Esiste un modo per passare hiberfil.sysa un'altra unità diversa da %SYSTEMDRIVE%?


2
No, non puoi, semplicemente non c'è modo.
HackToHell


1
Questo deve essere un inganno. . .
surfasb,

2
Anche il tag "unità esterna" è preoccupante. Ai computer non piace quando la loro memoria può andare via.
MSalters,

Risposte:


24

Non penso che sia possibile "reindirizzare" il percorso del tuo hiberfil.sys da "C: \ hiberfil.sys" a "D: \ hiberfil.sys" per esempio.

Ho fatto qualche ricerca su Google e nel registro di Windows e non ho trovato altro che l'opzione per disabilitarlo (e di conseguenza eliminare il file hiberfil.sys):

  1. Fare clic su Start, quindi digitare cmd nella casella Inizia ricerca.
  2. Nell'elenco dei risultati della ricerca, fare clic con il pulsante destro del mouse su Prompt dei comandi e quindi fare clic su Esegui come amministratore.
  3. Quando richiesto dal controllo dell'account utente, fare clic su Continua.
  4. Al prompt dei comandi, digitare powercfg.exe /hibernate off, quindi premere ENTER.
  5. Digitare exit, quindi premere ENTERper chiudere la finestra del prompt dei comandi.

12
Questa non è la risposta, l'OP non vuole disabilitare l'ibernazione.
cjb110,

1
Grazie, una volta eseguito il commento, hiberfil.sys si rimuove automaticamente. Grazie, ora ho 32 GB aggiuntivi sul mio SSD
Valamas il

2
@ cjb110 Sì. Ma comunque utile
FindOutIslamNow

non è possibile spostare il file ma è possibile ridimensionare il file
phuclv,

19

Invece di disabilitare l'ibernazione, è possibile ridurre la dimensione del file di ibernazione a un massimo del 50% della memoria fisica totale:

  1. Fare clic su Start, quindi digitare cmd nella casella Inizia ricerca.
  2. Nell'elenco dei risultati della ricerca, fare clic con il pulsante destro del mouse su Prompt dei comandi e quindi fare clic su Esegui come amministratore.
  3. Quando richiesto dal controllo dell'account utente, fare clic su Continua.
  4. Al prompt dei comandi, digitare powercfg.exe /hibernate /size 50, quindi premere ENTER.
  5. Digitare exite quindi premere ENTERper chiudere la finestra del prompt dei comandi.

La dimensione di hiberfil.syssarà ridotta immediatamente.

Aggiornamento : tieni presente che se la RAM di sistema non può essere compressa al 50% delle sue dimensioni durante l'ibernazione, potresti ottenere una schermata blu con INTERNAL_POWER_ERROR simile a questa, che potrebbe essere difficile da diagnosticare:

BSOD "INTERNAL_POWER_ERROR" in Windows 7 in ibernazione


Diogo ha pubblicato esattamente la stessa soluzione prima e con attribuzione. -1
Joris Groosman,

9
@JorisGroosman Questa non è la stessa soluzione. Notare la differenza nel passaggio 4. L'OP non ha voluto disabilitare l'ibernazione come fa la soluzione di Diogo. La soluzione sopra taglia a metà le dimensioni utilizzate dal letargo.
mhu,

Sì, solo per confermare, sono qualcuno che è arrivato a questo post con una domanda simile - ha funzionato qui. Ha ridotto le dimensioni del mio file di ibernazione da oltre 6 a poco più di 4 gigabyte. Non mi permetterebbe di ridurre a meno del 50% di RAM, quindi potrebbe essere il più basso possibile: ho provato il 25% ma il file è rimasto della stessa dimensione del 50%. Ho 8 concerti di RAM installata
Robert Walker,

16

A differenza della modalità SLEEP , in cui tutto ciò che è in esecuzione sul sistema è archiviato nella RAM, (che è alimentato), HIBERNATION copia l'intero stato della RAM in un file chiamato HIBERFIL.sys . Ecco perché quel file deve essere grande almeno quanto la dimensione della tua RAM. Il computer si spegne del tutto, poiché non è necessario che i componenti siano costantemente sotto tensione.

MA, la prossima volta che vuoi riavviare la tua macchina dallo stato di ibernazione, per trovarla nello stesso punto in cui l'hai lasciata, ha bisogno di quel settore di avvio del tuo disco di sistema ...

Sfortunatamente non c'è modo di spostare HIBERFIL.sys sugli altri HDD o partizioni.

Questo è diverso da PAGEFILE.sys , che PUOI riposizionare su qualche altro disco o partizione fisica, quindi il tuo disco di sistema non deve gestire il Pagefile.


3
Questo articolo mi ha aiutato a decidere che non voglio l'ibernazione e a salvarlo per poter rimuovere il file da 32 GB dal mio SSD. verdiem.com/blog/2011-11-15/put-them-sleep-dont-hibernate
Valamas

1
@Valamas Verdiem è stato acquistato da un'altra società e il sito è stato disattivato. Ecco una versione archiviata di quel link: web.archive.org/web/20150317121812/http://verdiem.com/blog/… Le informazioni elencate qui sono fondamentalmente che il sonno non consuma molta più energia di Hibernatio, ma si avvia Più veloce.
sp00n,

5

Puoi solo disabilitarlo, non spostarlo perché, quando presente, hiberfil.sys è necessario molto prima nella sequenza di avvio del sistema operativo.

A quel punto nella sequenza di avvio, il sistema operativo non è in grado di comprendere i collegamenti simbolici,

Quindi l'unico posto dove cercare hiberfil.sys è nell'unità root del sistema operativo. Altre informazioni su Relocate hiberfil.sys


Grazie per la spiegazione ragionevole sul perché questo non può essere spostato!
glenviewjeff,

0

Dovrebbe essere sullo stesso disco di Booloader (NTLDR / BOOTMGR) in modo che il bootloader possa prenderlo in anticipo e copiarlo nella RAM.

Prova a spostare il bootloader.


Dopo aver spostato il bootloader, come posso reindirizzare il percorso di hiberfil.sys?
salutò il

Sarà sulla stessa partizione del bootloader, nella cartella principale.
Mikhail Kupchik,

5
Il mio bootloader è su un'altra unità, ero sospettato. Penso che non sia correlato al bootloader. Correlava la partizione di Windows.
salutò il

1
Questa è in realtà la più vicina a una risposta, penso, non puoi dire a Windows di cercare altrove. Ma dipende da Windows guardare la radice di dove è installato o la radice dell'unità di avvio ?? (questi per impostazione predefinita sono gli stessi, ma non devono assolutamente esserlo). Se è quest'ultimo, allora questa risposta funzionerà (se faticosamente da raggiungere).
cjb110,

6
Falsa risposta In Windows Vista e versioni successive, il bootloader si trova su una partizione nascosta mentre hiberfil.syssi trova in C:

-1

Per interrompere il servizio di ibernazione in Windows Vista o 7:

  1. Fare clic sul pulsante Start e nel tipo di campo Cerca cmd
  2. Quando viene visualizzato il prompt dei comandi, digitare powercfg.exe -h off
  3. Esci dal prompt dei comandi

A questo punto alcune cose importanti avranno avuto luogo in Windows:

  1. hiberfil.sys non esiste più in Explorer (ovvero viene eliminato, liberando così molto spazio su disco),
  2. "Sospensione" non è più disponibile dalle opzioni di Arresto nel menu Start e
  3. ovviamente, non sarai più in grado di mettere Windows in uno stato di ibernazione (S4).

6
Nella domanda viene esplicitamente dichiarato "Non voglio disabilitare l'ibernazione". Quindi il tuo non è utile in questo caso.
Robert,

Likey - coz Non mi faccio più il letargo - Uso il sonno
killjoy il
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.