DIYレジストリセキュリティ

最近、NTUser.datが失われ、Windows7ですべてのHKCUが失われたため、Windows Restoreが役に立たなかったため、1か月前のバックアップから立ち直らなければなりませんでした。 その結果、彼はレジスター予約の問題を非常に心配していました。 結局のところ、Win7 / Vistaは(純粋な)レジストリの冗長性を提供していません(XPとは異なります)。 この投稿では、 ERUNTユーティリティとユーザープロファイルハイブクリーンアップサービス (UPHClean)を使用して、これについて自分の手でできることについて説明します。 結論として、私はそれをどのようにしたかの例を示します。



歴史的背景。



私たちが知っているように、レジストリは最初にWin95に登場し、すぐに紛失/損なう価値がないことが明らかになりました。 幸いなことに、OCのWin9xファミリでは、レジストリはシステムの起動時に自動的にバックアップされました。 同時に、2(Win95)から5(Win98 / ME)までのロールバックレベルが開催されました。 手動の降圧も問題ではありませんでした。 コンピュータをDOSモードで再起動し、いくつかのファイルを安全な場所にコピーするだけで十分でした。 Microsoftは、Windowsからレジストリを直接ダウンロードするERUユーティリティも提供しました。



Win2000とその派生物(WinXP / Vistal / 7)の出現により、状況は根本的に変わりました。 NTベースのシステムでは、レジストリファイル(C:\ Windows \ System32 \ Configおよび%userprofile%\ ntuser.dat)は常に開いて使用されます。 その結果、不快なバグが現れ始めましたが、そのいくつかは今日まで発見されています。 それらのほとんどは、1つのシナリオの結果です。一部のプログラムはレジストリのキーを開き、閉じるのを忘れます。 その結果、多くの興味深い副作用が発生する可能性があります。



*まず、キーがHKCUで閉じられていない場合、ログオフ\コンピューターの再起動/シャットダウンに非常に長い時間がかかる場合があります-WindowsはすべてのプログラムがユーザーをログアウトするためにHKCUを解放するまで辛抱強く待ちます(バグのあるプログラムがシステムサービスとして登録されている場合は発生しません) 。



*次に、一部の変更はレジストリに「ダンプ」されず、その結果、再起動後に保存されませんでした。 これは、たとえば、オフィスアプリケーションを起動するたびに「Windowsが<プログラム>を構成する間、しばらくお待ちください」というメッセージを頻繁に見る必要があった移動プロファイルを持つ企業ユーザーにとって特に面倒でした。 その結果、Vista / W7にはレジストリトランザクションファイル(regtrans-ms)があり、レジストリファイル自体よりも多くのスペースを占有する場合があります。



*最悪の場合、再起動中にレジストリの整合性が侵害され、高速道路全体(ほとんどの場合再びHKCU)を失う可能性がありました。 ちなみに、これは今日まで続きます。GoogleChromeを更新するサービスについてかなり多くのノイズが発生します。GoogleChromeは多くの記述子を開くのが好きで、それらのいくつかを閉じるのを忘れています。



問題は非常に深刻だったため、Microsoftは「 User Profile Hive Cleanup Service 」と呼ばれる特別なサービスをリリースしました。これは、再起動時にすべてのユーザーを強制的にレジストリから切断します(HKCU / ntuser.datのみ)。 強くお勧めします。



これはすべて、WinNTベースのシステムにとってレジストリの整合性がいかに重要かを示しています。 しかし





レジストリを取得する他の簡単な方法はありませんでした。私はそれを考え出す必要がありました。 そこで、ERUNT(NTのERU)がありました。



ERUNT。



ERUNTLars Hedererという名前のドイツの専門家によって開発され、 実際には、WinNTライクなOS(NT / 2K / 2K3 / XP / Vistal / 7) レジストリを「実際に」指定されたディレクトリにバックアップします。 、OSの動作中はいつでも)。



readmeファイルでアプリケーションの詳細を読むことができますが、私がどのように個人的に気に入ったか、どのように使用するかを説明します。







結論として、タスクスケジューラにERUNT.INIと.XMLを添付しています。



ERUNT.INI(ERUNTがあるディレクトリへ):

[ERUNT] DefaultDestinationFolder=D:\Install\__Backups DateFormat=yyyy/mm/dd DateSeparator=- TimeFormat=hh:mm:ss TimeSeparator=.
      
      







ERUNT.XML(タスクスケジューラにインポート、ユーザー名とパスを修正):



 <?xml version="1.0" encoding="UTF-16"?> <Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task"> <RegistrationInfo> <Date>2012-04-01T21:27:40.026817</Date> <Author>APCNB\apc</Author> </RegistrationInfo> <Triggers> <CalendarTrigger> <StartBoundary>2012-04-01T17:00:00</StartBoundary> <ExecutionTimeLimit>PT1H</ExecutionTimeLimit> <Enabled>true</Enabled> <ScheduleByDay> <DaysInterval>1</DaysInterval> </ScheduleByDay> </CalendarTrigger> </Triggers> <Principals> <Principal id="Author"> <UserId>APCNB\apc</UserId> <LogonType>S4U</LogonType> <RunLevel>HighestAvailable</RunLevel> </Principal> </Principals> <Settings> <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy> <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries> <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries> <AllowHardTerminate>true</AllowHardTerminate> <StartWhenAvailable>true</StartWhenAvailable> <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable> <IdleSettings> <StopOnIdleEnd>true</StopOnIdleEnd> <RestartOnIdle>false</RestartOnIdle> </IdleSettings> <AllowStartOnDemand>true</AllowStartOnDemand> <Enabled>true</Enabled> <Hidden>false</Hidden> <RunOnlyIfIdle>false</RunOnlyIfIdle> <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession> <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine> <WakeToRun>false</WakeToRun> <ExecutionTimeLimit>PT1H</ExecutionTimeLimit> <Priority>7</Priority> <RestartOnFailure> <Interval>PT1H</Interval> <Count>3</Count> </RestartOnFailure> </Settings> <Actions Context="Author"> <Exec> <Command>C:\bin\ERUNT\AUTOBACK.EXE</Command> <Arguments>D:\Install\__Backups\RegBackup-ERUNT\#Date#-#Time#</Arguments> <WorkingDirectory>C:\bin\ERUNT\</WorkingDirectory> </Exec> </Actions> </Task>
      
      





一般に、ユーティリティの作成者は2001年からこの問題に取り組んでおり、彼のビジネスを熟知しています。使用することを強くお勧めします。



All Articles