Могу ли я переместить hiberfil.sys на другой диск?


76

На моем% SYSTEMDRIVE% в Windows заканчивается свободное место. Существует hiberfil.sysфайл, размер которого составляет почти 3 ГБ.

Я понимаю, что hiberfil.sysиспользуется для функции гибернации Windows. https://support.microsoft.com/en-us/help/13770/windows-shut-down-sleep-hibernate-your-pc

Скрытый системный файл Hiberfil.sys находится в корневой папке диска, на котором установлена ​​операционная система. Диспетчер питания ядра Windows резервирует этот файл при установке Windows. Размер этого файла примерно равен объему оперативной памяти (ОЗУ), установленной на компьютере.

Компьютер использует файл Hiberfil.sys для хранения копии системной памяти на жестком диске, когда включен гибридный спящий режим. Если этот файл отсутствует, компьютер не может перейти в спящий режим.

Я не хочу отключать функцию гибернации.

Есть ли способ перейти hiberfil.sysна другой диск, кроме %SYSTEMDRIVE%?


2
Нет, ты не можешь, просто нет пути.
HackToHell


1
Это должно быть обманом. , ,
Surfasb

2
Тег "external-drive" также вызывает беспокойство. Компьютерам не нравится, когда их память может уходить.
MSalters

Ответы:


24

Я не думаю, что возможно «перенаправить» путь вашего hiberfil.sys из «C: \ hiberfil.sys» в «D: \ hiberfil.sys», например.

Я провел некоторые исследования в Google и в реестре Windows, и не нашел ничего, кроме возможности отключить его (и, следовательно, удалить файл hiberfil.sys):

  1. Нажмите Пуск, а затем введите cmd в поле Начать поиск.
  2. В списке результатов поиска щелкните правой кнопкой мыши Командная строка и выберите Запуск от имени администратора.
  3. Когда вас попросит Контроль учетных записей, нажмите Продолжить.
  4. В командной строке введите powercfg.exe /hibernate off, а затем нажмите ENTER.
  5. Введите ENTERкоманду exit и нажмите, чтобы закрыть окно командной строки.

12
Это не ответ, ОП не хочет отключать спящий режим.
cjb110

1
Спасибо, как только я запустил комментарий, hiberfil.sys автоматически удаляется. Спасибо, теперь у меня есть дополнительные 32 ГБ на моем SSD
Valamas

2
@ cjb110 Да. Но в любом случае это полезно
FindOutIslamNow

невозможно переместить файл, но можно изменить размер файла
phuclv

19

Вместо отключения режима гибернации вы можете уменьшить размер файла гибернации до 50% от общей физической памяти:

  1. Нажмите Пуск, а затем введите cmd в поле Начать поиск.
  2. В списке результатов поиска щелкните правой кнопкой мыши Командная строка и выберите Запуск от имени администратора.
  3. Когда вас попросит Контроль учетных записей, нажмите Продолжить.
  4. В командной строке введите powercfg.exe /hibernate /size 50, а затем нажмите ENTER.
  5. Введите, exitа затем нажмите, ENTERчтобы закрыть окно командной строки.

Размер hiberfil.sysбудет уменьшен немедленно.

Обновление . Имейте в виду, что, если ваша системная память не может быть сжата до 50% от ее размера при переходе в спящий режим, вы можете получить синий экран с INTERNAL_POWER_ERROR, подобный этому, который может быть трудно диагностировать:

BSOD "INTERNAL_POWER_ERROR" в Windows 7 в спящем режиме


Диого выложил точно такое же решение раньше и с атрибуцией. -1
Йорис Гроусман

9
@JorisGroosman Это не то же самое решение. Обратите внимание на разницу в шаге 4. ОП не хотел отключать спящий режим, как это делает решение Диого. Решение выше сокращает размер, используемый гибернацией в два раза.
Чт

Да просто чтобы подтвердить, я тот, кто пришел на этот пост с похожим вопросом - он работал здесь. Благодаря этому размер файла гибернации уменьшился с 6 до 4 гигабайт. Это не позволило бы мне сократить оперативную память менее чем до 50%, так что она может быть настолько низкой, насколько это возможно - я пробовал 25%, но файл остался того же размера, что и для 50%. У меня 8 гигабайт установленной оперативной памяти
Роберт Уокер

16

В отличие от режима SLEEP , где все, что работает в вашей системе, хранится в вашей оперативной памяти (которая работает под напряжением), HIBERNATION копирует все состояние вашей оперативной памяти в файл с именем HIBERFIL.sys . Вот почему этот файл должен быть не меньше размера вашей оперативной памяти. Ваш компьютер полностью выключается, так как он не должен иметь какие-либо из ваших компонентов при постоянной мощности.

НО, в следующий раз, когда вы захотите разбудить вашу машину из состояния гибернации, чтобы найти ее в той же точке, где вы ее оставили, нужен загрузочный сектор вашего системного диска ...

К сожалению, нет способа перенести этот файл HIBERFIL.sys на другие ваши жесткие диски или разделы.

Это не похоже на PAGEFILE.sys , который вы МОЖЕТЕ переместить на какой-либо другой физический диск или раздел, поэтому ваш системный диск не должен обрабатывать файл подкачки.


3
Эта статья помогла мне решить, что я не хочу гибернацию, и сохранить возможность удаления файла 32 ГБ из моего SSD. verdiem.com/blog/2011-11-15/put-them-sleep-dont-hibernate
Валамас

1
@Valamas Verdiem был куплен другой компанией, и сайт был отключен. Вот заархивированная версия этой ссылки: web.archive.org/web/20150317121812/http://verdiem.com/blog/… Приведенная здесь информация в основном заключается в том, что Sleep не потребляет намного больше энергии, чем Hibernatio, но загружается Быстрее.
sp00n

5

Вы можете только отключить его, но не перемещать, потому что, если он есть, hiberfil.sys необходим намного раньше в последовательности загрузки ОС.

На этом этапе в последовательности загрузки ОС не в состоянии понять символические ссылки,

Таким образом, единственное место, где он будет искать hiberfil.sys, находится на корневом диске ОС. Подробнее о перемещении hiberfil.sys


Спасибо за разумное объяснение того, почему это не может быть перемещено!
glenviewjeff

0

Он должен находиться на том же диске, что и загрузчик (NTLDR / BOOTMGR), чтобы загрузчик мог забрать его заранее и скопировать в ОЗУ.

Попробуйте переместить загрузчик.


После перемещения загрузчика, Как я мог перенаправить путь hiberfil.sys?
Хамед

Он будет находиться в том же разделе, что и загрузчик, в корневой папке.
Михаил Купчик

5
Мой загрузчик находится на другом диске, я подозревал. Я думаю, что это не связано с загрузчиком. Это связано с разделом Windows.
Хамед

1
Это на самом деле самый близкий к ответу, я думаю, вы не можете сказать окнам смотреть куда-то еще. Но это зависит от того, Windows смотрит на корень, где он установлен, или корень загрузочного диска ?? (они по умолчанию одинаковы, но ни в коем случае не должны быть). Если это последнее, то этот ответ будет работать (если трудно достичь).
cjb110

6
Ложный ответ. В Windows Vista и более поздних версиях загрузчик находится в скрытом разделе, а hiberfil.sysв C:

-1

Чтобы остановить службу гибернации в Windows Vista или 7:

  1. Нажмите на кнопку Пуск и в поле поиска типа cmd
  2. Когда откроется командная строка, введите powercfg.exe -h off
  3. Выход из командной строки

На данный момент в Windows произойдет несколько важных вещей:

  1. hiberfil.sys больше не существует в Проводнике (т.е. удаляется, освобождая, таким образом, много места на диске),
  2. «Спящий режим» больше не доступен в параметрах выключения в меню «Пуск» и
  3. очевидно, вы больше не сможете переводить Windows в режим гибернации (S4).

6
В вопросе прямо сказано: «Я не хочу отключать спящий режим». Следовательно, ваш не поможет в этом случае.
Роберт

Likey - потому что я больше не
впадаю в
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.