14 лет назад 1 июня 2005 в 1:59 77

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

ВОССТАНОВЛЕНИЕ РЕЕСТРА
Восстановление работоспособных файлов реестра в среде Windows 9х обычно не вызывает проблем. Во-первых, благодаря автоматически создаваемым при каждой загрузке ОС их резервным копиям (архивы типа C:\WINDOWS\SYSBCKUP\RB00X.CAB), а во-вторых, ввиду беспроблемного доступа к разделам FAT32 из любой ОС, в том числе и DOS. Сложнее обстоит дело в случае восстановления реестра в Windows 2К/ХР, особенно при наличии файловой системы NTFS.

Конечно, Backup Utility – специальный системный инструмент Windows XP – позволяет без труда сделать бэкап файлов системного реестра и даже ежедневный автоматический. Но заставить эту утилиту делать бэкап только лишь файлов реестра вряд ли получится – вместе с ними она “тянет” еще кучу системных библиотек. Об “удобстве” ее использования и “быстродействии” и говорить не будем.

Вариант сохранения резервной копии с помощью утилиты REGEDIT (“Файл” – “Экспорт”) также удачным не назовешь, поскольку при восстановлении реестра из такого резерва вас ждет море проблем. А о том, как сами собой пропадают точки отката службы System Restore именно тогда, когда они больше всего нужны, лучше и не вспоминать.

Самый же изящный способ восстановления реестра – использование специализированной бесплатной утилиты ERUNT. Полное название – The Emergency Recovery Utility NT (www.larshederer.homepage.t-online.de/erunt). На сайте разработчика также доступны языковые модули, включая русификатор, и вариация для работы в командной строке. ERUNT умеет создавать резервную копию реестра и восстанавливать данные из нее в линейке Windows NT/2000/2003/XP. По умолчанию предлагается загрузить дистрибутив с интегрированным инструментом для оптимизации реестра – NTREGOPT, но есть и возможность выбрать “чистый” продукт.

При запуске ERUNT просит выбрать каталог для сохранения резервной копии (по умолчанию предлагается папка %SystemRoot%\WINDOWS\ERDNT). По умолчанию же программа готова сохранить помимо всего прочего пользовательские настройки. После всего лишь нескольких секунд работы в заданном каталоге сохранятся не только файлы реестра, но и еще одна утилита ERDNT.EXE, запуск которой в любой момент инициирует процесс восстановления рабочего реестра из резервной копии.

Очень важный нюанс состоит в пути к каталогу с резервной копией: если указать папку для файлов резервной копии, отличную от предложенной, то при восстановлении реестра из копии могут возникнуть ошибки, поэтому рекомендуется согласиться с программой при выборе адреса “аварийной” папки.

Дополнительная утилита-оптимизатор крайне неинформативна по части описания совершенных действий. Она рапортует лишь об экономии дискового пространства после процедуры “очистки”. Для получения дополнительной информации мы рекомендуем другие программы, описанные ниже.

ДЕФРАГМЕНТАЦИЯ РЕЕСТРА
Системный реестр подвержен не только деструктивным влияниям, но и, например, фрагментации, перманентному накоплению ошибок и ненужных записей. В результате объем реестра увеличивается за счет неиспользуемых данных, из-за чего скорость работы с ним может снижаться. Довольно популярны программы – чистильщики реестра, удаляющие неиспользуемые и неверные ключи, но не уменьшающие размер файлов реестра (после удаления какого-то раздела в таком файле остается, грубо говоря, пустое место). В итоге замедляется загрузка Windows и увеличивается время отклика программ. Здесь на помощь придут утилиты, осуществляющие дефрагментацию реестра.

Одна из них была рассмотрена выше (NTREGOPT из комплекта ERUNT), но мы советуем гораздо более удобный вариант – Registry Defragmentation (www.elcor.net). Безусловным преимуществом этого продукта является локализованный и наглядный интерфейс с четырьмя опциями. Первая из них и предлагает осуществить дефрагментацию реестра, причем по умолчанию выбраны наиболее фрагментированные файлы, но при желании пользователь может указать свои. По окончании дефрагментации программа сообщит о новом размере файлов реестра и предложит перезагрузку системы.

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

ОЧИСТКА РЕЕСТРА
Еще одной операцией по приведению в порядок системного реестра является “влажная уборка”, при которой соответствующие приложения отыскивают и удаляют неиспользуемые записи. Подобный “мусор” ни к чему хорошему, кроме увеличения объема реестра, не ведет. Одним из самых функциональных “чистильщиков” является бесплатный отечественный инструмент NBG Clean Registry (nbggroup.km.ru), работающий весьма корректно.

Продукт позиционируется разработчиком как утилита для поиска и удаления нефункционирующих ссылок в реестре и в ярлыках Windows 9x/2000/ME/ХР, причем при работе в Windows NT/2000/ХР для полной проверки реестра необходимо иметь привилегии администратора. В полной версии вместе с программой поставляется еще и утилита NBG Registry Monitor, являющаяся вспомогательным средством для мониторинга обращений к реестру. С помощью NBG Registry Monitor можно получить информацию о том, кто, когда и какое действие произвел над каким-либо ключом реестра, и чем эта попытка завершилась (что, например, помогает выявить разделы реестра, к которым ошибочно нет доступа текущей учетной записи).

Главное окно программы выглядит довольно экстравагантно, имеет массу “Полезных советов”, а также отлично разработанную систему всплывающих подсказок. Ко всему прочему при запуске программы в трее появляется еще один значок – NBG CPU Usage – мониторинг использования процессора.

Запуск процесса сканирования реестра осуществляется кнопкой “Поиск” с пиктограммой в виде глаза. Если вы категорически не желаете, чтобы просматривались определенные разделы реестра, установите соответствующий фильтр и больше не беспокойтесь за сохранность ключей конкретного раздела (кнопка “Опции”).

Перед началом работы настоятельно рекомендуется закрыть все приложения и минимизировать окно процесса, поскольку сканирование реестра занимает довольно длительное время. По окончании сканирования пользователю будет предложено исправить некоторые ключи реестра (кнопка “Лечить”), после чего программный Помощник доложит о результатах своего лечения. Совсем безнадежные параметры можно удалить при помощи “веселой” кнопки с пиктограммой в виде черепа. Конечно же, в программе предусмотрена возможность создания файлов отката на случай непредвиденных сбоев – рекомендуется по завершении манипуляций тщательно проверить работоспособность всех приложений.

Аналогичная программа RegSupreme (www.macecraft.com) давно известна многим пользователям по своей предыдущей инкарнации – jv16 PowerTools. Она имеет только одну функцию: поиск и удаление мусора в системном реестре. Зато работает в высшей мере корректно – утилита ни разу не дала повода для огорчений.

ИСПРАВЛЕНИЕ ОШИБОК РЕЕСТРА
Но одной профилактической “уборкой” в реестре нам не обойтись, поскольку в результате установки некорректно написанных приложений или при вирусной атаке в системном реестре возникают ошибки, приводящие к системным и программным сбоям. Напрашивается логичный выход: восстановление файлов реестра из резервной копии. Но как быть, если пользователь вовремя не озаботился созданием бэкапа? Можно попробовать найти и устранить ошибки реестра при помощи более продвинутых утилит.

Разработчики Registry Defragmentation явно знают толк в создании приложений для работы с реестром и предлагают русифицированный продукт Advanced Registry Doctor (www.elcor.net), умеющий находить ошибки в реестре и внятно объяснять пользователю, что привело к такому конфузу. Перед началом работы “продвинутый доктор реестра” позволяет указать диски для сканирования и выбрать либо все тесты, либо те, которые пользователь сочтет необходимыми. На обозначенных дисках программа будет искать файлы, на которые есть ссылки в реестре.

После тщательного просмотра реестра утилита в наглядной форме и по-русски выдаст отчет о проблемах, одновременно предлагая пути их решения. Например, будет представлена информация о том, что поврежден тот или иной ключ, или же нам укажут на некорректную ссылку на файл. Более того, для каждой группы ошибок указывается уровень опасности, например, средний (Medium Level) или низкий (Low Level).

Исправление ошибок осуществляется кнопками “Исправить категории” (приводится в порядок категория целиком) или “Исправить проблемы” (либо для всех групп ошибок, выделенных одновременно, либо для каждой ошибки в отдельности). При необходимости сделанные исправления можно отменить и перейти к другим дополнительным инструментам, например к Менеджеру автозагрузки.

Аналогично действует и Windows Registry Repair Pro (www.3bsoftware.com/products/registryrepair.html). Правда, здесь нам не предложат выбор областей сканирования. Зато столь же подробно проинформируют о причинах, породивших ошибку реестра, и о мерах по устранению сбоя – не всегда требуется удаление ключа, иногда можно обойтись, скажем, исправлением пути к файлу.

ПРОДЛЕНИЕ ЖИЗНИ TRIAL-ВЕРСИЯМ ПРОГРАММ
Нередко при установке той или иной программы в реестр вносятся тщательно скрываемые ключи, благодаря которым становится невозможной повторная установка ознакомительной версии или приложение начинает “донимать” пользователя всевозможными напоминаниями о регистрации. Хорошо бы найти и удалить такие ключи в реестре – это позволит, пусть и не навсегда, превратить капризную программу в полноценную. Неплохо так же убрать “мусор” из системы, если одним из ваших хобби является изучение (с последующим удалением) всех интересных shareware-программ. Тем более что это ваш реестр, и вы вправе делать с ним все, что хотите – к взлому программ подобную процедуру не отнесешь.

Микроскопическая утилита Trial-Reset 2.0 (dm.telecom.by/files/down-143.html) сканирует реестр на предмет поиска “хитрых” ключей, отвечающих за защиту триальных программ, и способна удалять означенные записи, ведающие защитой более двадцати типов, включая ACProtect всех версий, Armadillo, DBPE, ExeShield. Возможно сканирование как по одному типу защиты (достаточно щелкнуть по значку нужного типа и выбрать команду Scan), так и по всем сразу (кнопка All). При необходимости можно сделать резервную копию найденных ключей реестра.

Ту же задачу выполняет и отечественный Registry Trash Keys Finder (www.databack4u.com/snc), просматривая раздел HKEY_CLASSES_ROOT системного реестра в попытке найти “тайные” записи программ, защищенных посредством ASProtect, Armadillo, ACProtect, SVK и Obsidium. В архиве с программой находится дополнительная утилита IsItArma, позволяющая достаточно точно определить наличие защиты Armadillo у любого программного файла. Удаление подобных ключей производится либо командой контекстного меню, либо, что еще удобнее, обычной клавишей DEL.

МОНИТОРИНГ РЕЕСТРА
Иногда неоценимую помощь в поиске причин сбоев может оказать мониторинг обращений к реестру: какое приложение задействовало тот или иной ключ, какие данные были прочитаны, какие записи сделаны, какими ошибками это сопровождалось. Знакомый любому сисадмину Regmon (www.sysinternals.com) делает все это в реальном времени. Программа содержит фильтры, благодаря которым будут отсортировны обращения только к определенным ключам или те, что связаны с конкретной (проблемной или подозрительной) программой. Более того, нам дают возможность быстрого перехода от записи параметра в интерфейсе Regmon к нужному ключу в Regedit.exe. Результаты мониторинга сохраняются в текстовый лог-файл.

РЕДАКТИРОВАНИЕ РЕЕСТРА
Возможности системного редактора реестра Regedit.exe крайне ограничены, и определенная часть пользователей вынуждена искать альтернативные решения. Мы советуем обратить внимание на многофункциональный бесплатный отечественный продукт Reg Organizer (www.chemtable.com/organizer2.htm). Фактически приложение является менеджером реестра и конфигурационных файлов, позволяя сканировать и редактировать реестр, осуществлять предварительный просмотр импортируемых reg-файлов (в том числе и из Проводника).

В отличие от системного аналога Reg Organizer обладает наглядным интерфейсом и значительно большим арсеналом возможностей (редактированию реестра посвящен отдельный программный раздел). Сохранение резервной копии реестра производится не в один громадный reg-файл, а в несколько – по числу разделов (например, backup_HKCR.reg, backup_HKLM.reg и другие). При импорте reg-файлов отображается содержимое записи, что очень удобно. Создание, редактирование и удаление записей реестра осуществляется как командами контекстного, так и обычного меню, дублируясь кнопками на панели инструментов.

Очень интересна функция слежения за той или иной записью в реестре. Достаточно в контекстном меню ключа выбрать команду “Подробнее о…” – и в следующий раз при аналогичной манипуляции получить исчерпывающую информацию: увеличение количества ключей, прирост параметров и – внимание! – ошибок.

В эту версию добавлен новый режим деинсталляции приложений, позволяющий делать снимок реестра и файловой системы до и после установки какой-либо программы, что позволит возвратить систему в состояние, предшествующее инсталляции приложения. Гибкая система управления отслеженными изменениями позволяет при необходимости восстанавливать изменения только реестра (а не реестра и файловой системы одновременно). А функция “Избранное” позволит получать почти мгновенный доступ к тем разделам, которые чаще всего приходится инспектировать.

Немного истории
Давным-давно, когда “поколению, выбирающего Pepsi” все деревья казались большими, жила-была операционная система Windows 3.1, для конфигурации которой использовались три типа файлов.

1 Системные файлы инициализации (system initialization files): Control.ini, Progman.ini, Protocol.ini, System.ini, Win.ini и Winfile.ini. Если пользователь устанавливал большое количество программ, каждая из которых вносила свою запись в файл Win.ini, то размер этого файла рос как на дрожжах. При увеличении размера файла свыше 64 кб начинались проблемы.

2 Файлы инициализации приложений (private initialization files) – обычные ini-файлы, которыми систему исправно снабжали вновь устанавливаемые программы.

3 Файл регистрационной базы данных – Reg.dat. Он-то и был прародителем будущих реестров Windows 95/98/NT/2000. Для редактирования Reg.dat, представленного в двоичном формате, уже требовался специальный инструмент, он же редактор реестра Regedit.exe. Конечно же, по сравнению с тем реестром, что мы имеем сейчас, строение Reg.dat было намного проще. Это была всего лишь одна-единственная корневая структура-контейнер под названием HKEY_CLASSES_ROOT.

Невзирая на простоту редактирования этих текстовых INI-файлов, работать с ними оказалось не под силу большинству рядовых пользователей, но самое главное заключалось в том, что INI-файлы не поддерживали множественные аппаратные конфигурации. Другими словами, Windows 3.x не могла поддерживать столь знакомую нам технологию Plug-and-Play. Инфотехнологии не любят стоять на месте, в результате чего разработчики внедрили в Windows NT 3.5 другую структуру реестра, напоминающую уже известную нам по Windows 2000/ХР.

Вскрытие показало…
Системный реестр есть не что иное, как база данных операционной системы и прикладных программ, содержащая конфигурационные сведения. Физически вся информация реестра разбита на несколько файлов. Реестры Windows 9х/ME и NT/2000/XP различаются.

В Windows 95/98 реестр содержится в двух файлах SYSTEM.DAT и USER.DAT, находящихся в каталоге Windows. Позднее в Windows ME был добавлен еще один файл – CLASSES.DAT (плюс к файлам реестра иногда относят POLICY.POL). Они, по замыслу Microsoft, должны были полностью заменить INI-файлы, которым даровалась жизнь исключительно для совместимости со старыми программами.

Мощные NT-версии Windows хранят свои сокровенные данные в большем числе файлов, которые называются ульями (от английского “hives”) – их можно отыскать в директориях \WINDOWS\system32\config (файлы без расширения) и \Documents and Settings\Username (NTUSER.DAT и USRCLASS.DAT). Подробные сведения о реестре вы можете почерпнуть из материала www.mdgx.com/reg.htm.