Устранение неполадок с файловой системой

Опубликовано: 24 Марта, 2023


Получите свою копию Windows Server Hacks!


Поврежденная или поврежденная файловая система может привести к различным последствиям, от потери данных до невозможности загрузки вашей системы. Поэтому умные ИТ-специалисты предпримут шаги для обслуживания файловых систем своих серверов и будут знать, как систематически устранять неполадки с дисками, когда что-то идет не так. В этой статье обсуждается как профилактическое обслуживание дисков, так и приводятся некоторые советы по использованию различных инструментов для обслуживания и устранения неполадок файловых систем на серверах Windows.


Семь золотых правил обслуживания диска


Начнем с упреждающего подхода к обслуживанию файловой системы. Какие шаги должен предпринять администратор, чтобы предотвратить возникновение проблем с файловой системой? Вот мои семь золотых правил на эту тему, в произвольном порядке:


1. Обновите свои серверы до Windows Server 2003. В этом есть реальная ценность с точки зрения обслуживания диска, например:



  • Команда chkdsk в Windows Server 2003 работает намного быстрее, чем версия этой утилиты для Windows 2000, плюс она может исправлять такие вещи, как поврежденная главная файловая таблица (MFT), которую предыдущая версия утилиты подавляла.
  • Новые мощные инструменты командной строки, такие как DiskPart.exe, Fsutil.exe и Defrag.exe, обеспечивают большую гибкость при управлении дисками из командной строки, а не через графический интерфейс. Эти инструменты могут быть написаны для автоматизации общих задач управления дисками, которые вам необходимо выполнять на регулярной основе.
  • Новая функция автоматического восстановления системы (ASR) значительно упрощает задачу восстановления системного/загрузочного тома в случае катастрофического сбоя диска.

2. Используйте аппаратное резервирование. Зеркалирование дисков RAID 1 позволяет восстановиться после катастрофического сбоя системного тома с нулевым временем простоя, а RAID 5 — отличный способ защитить тома данных. Серверы Windows включают поддержку встроенного программного RAID-массива, но вы получите более высокую производительность и настоящую горячую избыточность, вложив больше денег и вместо этого купив аппаратный RAID-контроллер для своей системы. Не забывайте, однако, держать под рукой несколько запасных дисков, чтобы вы могли поменять их местами в случае чрезвычайной ситуации — избыточность бесполезна, если у вас нет резервного оборудования для его использования. Обратите внимание, что если вы решите использовать программный RAID, предоставляемый Windows, для зеркального отображения загрузочного и системного томов необходимо, чтобы эти тома были одним и тем же, т. е. один том является и загрузочным томом (содержит файлы операционной системы), и системным томом ( содержит специфичные для оборудования загрузочные файлы).


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


4. Регулярно проводите дефрагментацию файловых систем. Это особенно важно на серверах, на которых выполняется большое количество транзакционных операций, поскольку файловые системы могут быстро фрагментироваться, снижая производительность приложений, работающих на вашем сервере. Чтобы выполнить успешную дефрагментацию, на вашем диске действительно должно оставаться не менее 15% свободного места, поэтому убедитесь, что вы не позволяете критически важным системным дискам или дискам с данными заполняться слишком сильно, иначе их будет сложнее обслуживать. Здесь полезен новый инструмент командной строки Defrag.exe в Windows Server 2003, поскольку вы можете запланировать регулярный запуск этого инструмента в нерабочее время с помощью команды Schtasks.exe вместо того, чтобы выполнять дефрагментацию вручную или покупать стороннее средство дефрагментации.


5. Регулярно запускайте chkdsk /r. Эта команда находит поврежденные сектора на вашем диске и пытается исправить их, восстанавливая данные из них и перемещая их в другое место. Вы можете запустить эту команду либо из окна командной строки, либо из консоли восстановления, если вы не можете нормально загрузить свою систему. Помните, что когда вы пытаетесь запустить chkdsk.exe в своей системе или на загрузочном томе, Windows настраивает autochk.exe (загрузочную версию chkdsk.exe) для запуска при следующей перезагрузке. Это означает, что вам нужно будет запланировать время простоя сервера при выполнении такого рода обслуживания, чтобы запустить autochk.exe.


6. Регулярно проверяйте журналы событий на предмет любых событий, связанных с диском. Windows иногда самостоятельно определяет, что диск «грязный», т.е. на нем присутствуют ошибки файловой системы. В этом случае Windows автоматически планирует запуск autochk.exe при следующей перезагрузке, но также записывает событие в журнал приложений, используя либо исходное имя «Chkdsk», либо «Winlogon». Поэтому отфильтруйте свой журнал приложений, чтобы регулярно просматривать события такого рода, или собирайте их с помощью Microsoft Operations Manager (MOM) или любого другого инструмента управления системами, который вы используете в своей сети.


7. Регулярно создавайте резервные копии всех своих томов. В качестве последнего средства в случае аварии критически важно иметь работающие резервные копии как системного/загрузочного тома, так и томов данных. ASR в Windows Server 2003 упрощает резервное копирование загрузочного/системного тома, в то время как резервное копирование томов данных можно выполнить с помощью средства резервного копирования Windows (ntbackup.exe) или любого другого средства резервного копирования, например, от стороннего поставщика. Какой бы способ резервного копирования вашей системы вы ни выбрали, делайте это регулярно и проверяйте свои резервные копии, чтобы убедиться, что вы можете восстановить свою систему с их помощью.


Я также должен добавить восьмое и последнее правило:


8. (правило Platinum) Если ваш диск начинает издавать забавные звуки, не игнорируйте их — сделайте что-нибудь. Отказу диска часто предшествуют забавные звуки, исходящие из вашего компьютера. Эти щелчки, скрежет, визг и другие типы звуков означают проблемы, поэтому, когда вы их слышите, самое время убедиться, что у вас есть свежая резервная копия и запасной диск на всякий случай. Также пришло время проверить ваши журналы событий, запустить chkdsk –r и использовать другие инструменты обслуживания и устранения неполадок, чтобы проверить работоспособность ваших дисков. Не игнорируйте эти забавные звуки!


Советы по устранению неполадок


Несмотря на то, что упреждающий подход к обслуживанию дисков и их файловых систем важен, также неизбежны аварии, на которые необходимо реагировать соответствующим образом. Вот несколько советов по использованию одного из ключевых инструментов обслуживания дисков и файловых систем, входящего в состав Windows Server 2003, а именно Chkdsk.exe:



  • Перед запуском chkdsk.exe убедитесь, что у вас есть хорошая недавняя резервная копия.
  • Никогда не прерывайте Chkdsk.exe, пока он выполняет свою работу.
  • Убедитесь, что у вас есть достаточно времени во время перерыва на техническое обслуживание для запуска Chkdsk.exe — на очень больших томах эта команда может занять много времени, чтобы завершить свою работу. Чтобы ускорить работу Chkdsk.exe на очень больших томах, вы можете запустить его в «облегченной» форме, указав chkdsk букву_диска /f /c /i, прежде чем пытаться запустить более медленный chkdsk /r.
  • Chkdsk.exe не может работать на загрузочном/системном томе во время работы Windows, а также не может работать на томах данных, когда на томе открыты дескрипторы файлов. Причина в том, что в обеих этих ситуациях Chkdsk.exe не может заблокировать том для своего исключительного использования. В этих случаях запуск Chkdsk.exe будет запланирован при следующем перезапуске системы.
  • Если вы считаете, что ваш том может быть грязным, но вы не хотите, чтобы Autochk.exe запускался при перезагрузке (например, если ваш сервер интенсивно используется и вы не можете позволить себе простои во время работы Autochk.exe), вы можете использовать Команда Chkntfs.exe, чтобы сначала определить, является ли том грязным или нет, а затем выяснить, запланирован ли в настоящее время запуск Autochk.exe при следующем перезапуске. Если вы определили, что том грязный и запуск Autochk.exe запланирован при следующем перезапуске, вы можете отложить запуск Autochk.exe с помощью команды chkntfs /d. Обратите внимание, однако, что делать это рискованно — если ваш том грязный, вы должны разобраться с этим как можно скорее и не откладывать.

Вывод