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

101432
hamed

На моем% 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%?

66
Нет, ты не можешь, просто нет пути. HackToHell 9 лет назад 2
Обязательный Рэймонд Чен: [Конфиденциальная информация Windows: парадокс файловой системы] (http://technet.microsoft.com/en-us/magazine/2007.11.windowsconfidential.aspx) grawity 9 лет назад 21
Это должно быть обманом. , , surfasb 9 лет назад 1
Тег "external-drive" также вызывает беспокойство. Компьютерам не нравится, когда их память может уходить. MSalters 9 лет назад 2
Как насчет символической ссылки? Ahmed 6 лет назад 0
Возможный дубликат [Как изменить расположение файла гибернации в Windows 7?] (Http://superuser.com/questions/85369/how-to-change-location-of-hibernation-file-in-windows-7) PJTraill 5 лет назад 5
Я заметил, что у спящего режима есть запись в BCD, когда я использовал `bcdedit.exe / enum all` 4 года назад 0

6 ответов на вопрос

19
Diogo

Я не думаю, что возможно «перенаправить» путь вашего 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 и нажмите, чтобы закрыть окно командной строки.
Это не ответ, ОП не хочет отключать спящий режим. cjb110 8 лет назад 9
Спасибо, как только я запустил комментарий, hiberfil.sys автоматически удаляется. Спасибо, теперь у меня есть дополнительные 32 ГБ на моем SSD Valamas 7 лет назад 1
@ cjb110 Да. Но в любом случае это полезно FindOutIslamNow 3 года назад 1
невозможно переместить файл, но можно [изменить размер файла] (https://superuser.com/q/508771/241386) phuclv 3 года назад 0
17
mhu

Вместо отключения режима гибернации вы можете уменьшить размер файла гибернации до 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 Joris Groosman 5 лет назад 0
@JorisGroosman Это не то же самое решение. Обратите внимание на разницу в шаге 4. ОП не хотел отключать спящий режим, как это делает решение Диого. Решение выше сокращает размер, используемый гибернацией в два раза. mhu 5 лет назад 9
Да просто чтобы подтвердить, я тот, кто пришел на этот пост с похожим вопросом - он работал здесь. Благодаря этому размер файла гибернации уменьшился с 6 до 4 гигабайт. Это не позволило бы мне сократить менее 50% оперативной памяти, так что она может быть настолько низкой, насколько она есть - я пробовал 25%, но файл остался того же размера, что и для 50%. У меня 8 гигов установленной оперативки Robert Walker 4 года назад 0
16
Tutan C'mon

Unlike SLEEP mode, where everything that is running on your system is stored in your RAM, (which is kept powered), HIBERNATION copies the entire state of your RAM to a file called HIBERFIL.sys. That is why that file has to be at least as big as the size of your RAM. Your computer turns off altogether, as it doesn't have to have any of your components under constant power.

BUT, next time you want to get your machine woken up from Hibernation state, to find it at the same point where you left it, it needs that boot-up sector of your System disk...

Unfortunately there's no way to move that HIBERFIL.sys around to your other HDDs or partitions.

This is unlike PAGEFILE.sys, which you CAN relocate to some other physical disk or partition, so your system disk doesn't have to handle the Pagefile.

Эта статья помогла мне решить, что я не хочу гибернацию, и сохранить возможность удаления файла 32 ГБ из моего SSD. http://www.verdiem.com/blog/2011-11-15/put-them-sleep-dont-hibernate Valamas 7 лет назад 3
@Valamas Verdiem был куплен другой компанией, и сайт был отключен. Вот архивированная версия этой ссылки: https://web.archive.org/web/20150317121812/http://verdiem.com/blog/2011-11-15/put-them-sleep-dont-hibernate Информация в списке в основном, сон не потребляет намного больше энергии, чем Hibernatio, но загружается быстрее. sp00n 5 лет назад 1
2
Dark Knight

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

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

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

0
Mikhail Kupchik

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

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

После перемещения загрузчика, как я могу перенаправить путь к `hiberfil.sys`? hamed 9 лет назад 0
Он будет находиться в том же разделе, что и загрузчик, в корневой папке. Mikhail Kupchik 9 лет назад 0
Мой загрузчик находится на другом диске, я подозревал. Я думаю, что это не связано с загрузчиком. Это связано с разделом Windows. hamed 9 лет назад 5
На самом деле это самый близкий ответ, я думаю, вы не можете сказать окнам смотреть куда-то еще. Но это зависит от того, Windows смотрит на корень, где он установлен, или корень загрузочного диска ?? (они по умолчанию одинаковы, но ни в коем случае не должны быть). Если это последнее, то этот ответ будет работать (если трудно достичь). cjb110 8 лет назад 1
перечитывая пост Рэймонда Чена, он говорит загрузочный диск, а не Windows установочный диск ... cjb110 8 лет назад 0
Ложный ответ. В Windows Vista и более поздних версиях загрузчик находится в скрытом разделе, а `hiberfil.sys` находится в C: 4 года назад 6
-1
Lars

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

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

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

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