
Я знаю, что когда я нажимаю «Показать больше точек восстановления» в приложении «Восстановление системы» Windows 7, оно показывает больше точек восстановления. Но все ли они там? Показалось всего несколько, и я думал, что у меня должно быть больше.
Я также проверил дисковое пространство, которое я выделил для точек восстановления. Там еще много места осталось.
решение1
Запустите PowerShell от имени администратора. В командной строке:
Get-ComputerRestorePoint
Будет выведен список всех точек восстановления системы.
PowerShell предлагает четыре командлета для управления восстановлением системы и/или точками восстановления:
Disable-ComputerRestore
Enable-ComputerRestore
Get-ComputerRestorePoint
Restore-Computer
Для получения помощи по любому из них вы можете добавить get-help
перед командлетом, например
get-help Get-ComputerRestorePoint
решение2
Восстановление системы реализовано с помощьюСлужба теневого копирования томов (служба моментальных снимков томов, VSS)Таким образом, вы можете использовать vssadmin
командную строку с повышенными привилегиями для вывода списка всех точек восстановления:
vssadmin Список теней
Обратите внимание, что Windows Backup также использует VSS, при этом теневые копии хранятся как на системном, так и на резервном диске, поэтому если ваш резервный диск подключен, теневые копии, хранящиеся на резервном диске, соответствующие этим резервным копиям, также будут перечислены. Добавьте, /for=C:
чтобы указать том, для которого вы хотите перечислить теневые копии, заменив C:
буквой тома по вашему выбору, если это не C:.
Хотя это не самый простой способ работы с точками восстановления, вы можете использовать дату и время создания и идентификатор теневой копии, указанные в выводе приведенной выше команды, чтобы удалить определенные точки восстановления, используя команду vssadmin Delete Shadows
. Вы также можете создавать точки восстановления с помощью vssadmin Create Shadow
и изменять объем доступного для точек восстановления пространства с помощью vssadmin Resize ShadowStorage
. Более подробная информация о vssadmin
доступна вэта статья TechNet.
решение3
Хотя я и опоздал с этим вопросом, возможно, это кому-то пригодится. Если вы хотите узнать, как давно была последняя точка восстановления, свойство даты создания точки восстановления необходимо преобразовать перед использованием.
(Get-ComputerRestorePoint | select -first 1 @{label="Date"; Expression={$_.ConvertToDateTime($_.CreationTime)}}).Date
и чтобы узнать, как давно это было, вам нужно рассчитать временной промежуток:
new-timespan -start ((Get-ComputerRestorePoint | sort CreationTime -descending | select -first 1 @{label="Date"; Expression={$_.ConvertToDateTime($_.CreationTime)}}).Date) -end (get-date)
надеюсь, это избавит кого-то от разочарования.