A legújabb Windows operációs rendszerekben megtalálható a Volume Shadow Copy szolgáltatás, mellyel a számítógép meghajtóiról (volumes) készíthető egy „pillanatfelvétel”, mellyel tulajdonképpen az adott meghajtónak két nézete lesz: egy „normál” nézet, melyben minden fájl a megszokott módon működik, és egy olyan „rejtett” nézet, melyben a fájlok csak olvashatók és a pillanatfelvétel időpontjának állapotát tükrözik. Azaz ebben a nézetben az amúgy zárolt és még csak nem is olvasható fájlok is olvashatók.
Ezt a fajta „lefagyasztását” a meghajtóknak hívjuk helyreállítási pontoknak (restore point), hiszen innen vissza tudunk nyerni régebben létező fájlokat, vagy fájlok régebbi verzióját. Ezt a technológiát használja a beépített mentő szoftver (Windows Backup és Windows Server Backup) úgy, hogy mentés első lépéseként készít egy ilyen helyreállítási pontot, majd a háttérben ezt írja ki írható médiára vagy hálózati meghajtóra. Ezen kívül a rendszer a frissítés során is készít ilyen helyreállítási pontokat, hogy ha egy frissítés mégsem sikerül, akkor lehetőség legyen visszatérni egy régebbi állapotba.
Ezek a helyreállítási pontok nem igényelnek nagyon nagy helyet a meghajtókon, hiszen a lefagyasztott területhez képest csak a változások foglalnak el új helyet. Így még arra is van lehetőség, hogy ilyen „lefagyasztott terület” több is legyen, azaz egyidejűleg több helyreállítási pontot is fenntarthatunk. Persze idővel az így fenntartott helyek a diszken már túl sok helyet foglalhatnak el, ilyenkor a rendszer felszabadítja a régebbi helyreállítási pontok által foglalt területeket.
A PowerShell 2.0-ban lehetőség van ezen helyreállítási pontok kezelésére. Sajnos ezeket csak a kliens operációsrendszereken kezelhetjük, a kiszolgáló változatokon nem.
Elsőként nézzük meg, hogy milyen helyreállítási pontjaink vannak a Get-ComputerRestorePoint cmdlet segítségével:
PS C:\> Get-ComputerRestorePoint
WARNING: column "RestorePointType" does not fit into the display and was remov
ed.
CreationTime Description SequenceNumber EventT
ype
------------ ----------- -------------- ------
2010.01.27. 21:40:25 Windows Update 314 BEG...
2010.01.28. 1:53:56 Windows Update 315 BEG...
2010.01.28. 9:54:02 Windows Update 316 BEG...
2010.01.28. 21:55:21 Windows Update 317 BEG...
2010.01.29. 9:54:34 Windows Update 318 BEG...
2010.01.29. 21:54:54 Windows Update 319 BEG...
2010.01.30. 9:59:40 Windows Update 320 BEG...
2010.01.31. 9:48:18 Windows Update 321 BEG...
Látható, hogy ezek a helyreállítási pontok a Windows Update szolgáltatás által jöttek létre. Én magam is készíthetek ilyen helyreállítási pontot a Checkpoint-Computer cmdlet segítségével:
PS C:\> Checkpoint-Computer -Description "Manuális pont"
PS C:\> Get-ComputerRestorePoint
WARNING: column "RestorePointType" does not fit into the display and was remov
ed.
CreationTime Description SequenceNumber EventT
ype
------------ ----------- -------------- ------
2010.01.27. 21:40:25 Windows Update 314 BEG...
2010.01.28. 1:53:56 Windows Update 315 BEG...
2010.01.28. 9:54:02 Windows Update 316 BEG...
2010.01.28. 21:55:21 Windows Update 317 BEG...
2010.01.29. 9:54:34 Windows Update 318 BEG...
2010.01.29. 21:54:54 Windows Update 319 BEG...
2010.01.30. 9:59:40 Windows Update 320 BEG...
2010.01.31. 9:48:18 Windows Update 321 BEG...
2010.01.31. 13:02:28 Manuális pont 322 BEG...
A fenti példában létrehoztam egy helyreállítási pontot „Manuális pont” néven. Ez kb. egy percet vett igénybe, amíg futott egy progress bar mutatta, hogy mennyit kell még várnom. A futás után visszaolvasva az utolsó helyen látható az általam létrehozott helyreállítási pont.
Korábbi helyreállítási pontokra a Restore-Computer paranccsal lehet visszaállni. Ez a gépet újraindítja és a tényleges visszaállást az boot folyamat során végzi el.
A helyreállásnak lehetnek káros következményei is. Gondoljunk arra, hogy visszaállunk egy korábbi állapotra, mert például eszközmeghajtó szoftver telepítése nem sikerült, de ezzel az időközben készített dokumentumaink is odavesznek. Ennek elkerülésére ki lehet kapcsolni bizonyos meghajtókra a helyreállítást a Disable-ComputerRestore cmdlet segítségével. Ezzel a lehetőséggel természetesen csak akkor élhetünk, ha több logikai meghajtónk (partíciónk, kötetünk) van, így érdemes már eleve így kialakítani a számítógépeinket. Visszakapcsolni ezt az Enable‑ComputerRestore cmdlettel lehet.