Файл: Руссинович М., Маргозис А. Утилиты Sysinternals. Справочник администратора 2012.pdf

ВУЗ: Не указан

Категория: Книга

Дисциплина: Операционные системы

Добавлен: 29.10.2018

Просмотров: 32996

Скачиваний: 742

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

342  Часть 

II   

Работа с утилитами

Рис. 12-4.  Очистка дисков C и Е

Разрешения для работы с томами  Некоторые из описываемых в этой главе утилит 
требуют разрешений на целевом томе. Например, для выполнения команды sync e 
требуется разрешение Запись (Write) на диске E. Разрешения томов отличаются от 
разрешений корневых каталогов этих томов и могут налагать ограничения даже на 
работу с томами с файловыми системами, не поддерживающими контроль доступа, 
такими как FAT.

В Windows XP и всех версиях Windows Server разрешения на запись на все тома пре-
доставляются только администраторам. Начиная с Windows Vista, интерактивно во-
шедшие пользователи получают разрешение на запись на тома съемных устройств, 
таких как флэш-диски.

Windows не предоставляет средств для просмотра разрешений объектов томов. Для 
этого можно использовать утилиту AccessChk, выполняя команду accesschk \\.\x:, где 
x — буква диска того тома, который нужно проверить. AccessChk описывается в гл. 8.

Рис. 12-5.  Действие разрешений томов

На рис. 12-5 показана попытка очистить кеш дисков C и E при помощи утилиты Sync, 
запущенной в Windows 7 от имени обычного пользователя. Эта операция, требующая 
разрешения на запись, не выполнена для диска C, но выполнена для диска E. За-
тем запущена утилита AccessChk, показывающая действующие разрешения для этих 
двух томов. На диске C обычные пользователи имеют только разрешение на чтение, 
предоставленное группе Everyone (Все), а на диске E интерактивные пользователи 
(NT AUTHORITY\INTERACTIVE) имеют разрешения Read (Чтение) и Write (Запись).

SIN_ch_12.indd   342

27.12.2011   14:36:42


background image

Утилиты для работы с диском 

Глава 12  343 

DiskView

DiskView показывает графическую карту кластеров тома NTFS, позволяя 
выяснить, в каких кластерах находится файл и фрагментирован ли он, или 
определить, каким файлом занят определенный сектор. DiskView требует 
администраторских привилегий и работает во всех поддерживаемых верси-
ях Windows.

Запустите DiskView, выберите том из раскрывающегося списка Volume 

(Том) в левом нижнем углу окна и щелкните кнопку Refresh (Обно-
вить)
. DiskView просканирует весь том, заполняя цветные области окна 
(рис. 12-6). В нижней области представлен том целиком, слева кластер 0. 
Чтобы посмотреть значения цветовых кодов, выберите команду меню Help 
| Legend (Справка | Легенда)
. Синим цветом показаны смежные кластеры 
файлов, красным — кластеры фрагментированных файлов, зеленым — кла-
стеры системных файлов, белым — незанятые кластеры.

Рис. 12-6. DiskView

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

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

 Примечание 

После сканирования тома DiskView может показать диалоговое окно 

File Errors (Ошибки файлов) со списком объектов, к которым не удалось обратиться. 
На рис. 12-7 показан типичный пример, когда не удалось получить доступ к файлу под-
качки, потому что он использовался, и к папке System Volume Information из-за уста-
новленных разрешений.

Каждая ячейка в верхней области представляет кластер тома. (По умол-

чанию размер кластера для NTFS-томов емкостью более 2 ГБ равен 4096 
байт.) Кнопка со стрелкой вверх рядом с надписью Zoom (Масштаб) по-
зволяет увеличить размер ячеек, чтобы было проще различать отдельные 
кластеры и выделять ячейки. Если прокрутить верхнюю область до конца 
вверх, верхняя строка будет представлять первые кластеры диска; нулевой 

SIN_ch_12.indd   343

27.12.2011   14:36:42


background image

344  Часть 

II   

Работа с утилитами

кластер будет представлен левой верхней ячейкой, а кластер 1 будет рас-
полагаться справа от него. Вторая строка представляет следующий набор 
кластеров и т. д.

Рис. 12-7.  Диалоговое окно File Errors

Цветовые коды, принятые по умолчанию, показывают в верхней области 

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

Если отключить параметр Show Fragment Boundaries (Показывать гра-

ницы фрагментов) в меню Options (Параметры), цвет первых ячеек не бу-
дет отличаться, и фрагменты целиком будут выделены красным. Хотя исто-
рически дефрагментаторы отображали фрагментацию именно так, это дает 
слишком пессимистическое представление о ситуации с фрагментацией. 
Алгоритм дефрагментации в Windows 7 не пытается объединить фрагменты 
размером более 64 МБ, поскольку преимущества в этом случае незначитель-
ны, а затраты на перемещение данных растут.

Рис. 12-8.  Окно свойств кластера

Если щелкнуть цветную ячейке в верхней области, DiskView покажет 

имя файла, занимающего этот кластер, в текстовом поле вверху окна и выде-
лит желтым цветом все кластеры, принадлежащие тому же файлу. Двойной 
щелчок ячейки открывает окно свойств кластера (Cluster Properties). Кроме 

SIN_ch_12.indd   344

27.12.2011   14:36:42


background image

Утилиты для работы с диском 

Глава 12  345 

номера выделенного кластера и имени файла, занимающего этот кластер, в 
этом окне показан список фрагментов файла с номерами смежных кластеров, 
назначенных относительно файла (первый кластер файла имеет номер 0). 
В примере на рис. 12-8 файл занимает 568 кластеров, а выделенный кластер 
имеет номер 114.

Чтобы найти кластеры определенного файла, щелкните кнопку с точка-

ми, расположенной справа от текстовой области, и выберите файл. Первый 
фрагмент, принадлежащий этому файлу, будет выделен и станет видимым 
в верхней области. Щелкните кнопку Show Next (Показать следующий)
чтобы выделить и перейти к просмотру следующего фрагмента. Заметьте, 
что очень маленькие файлы могут храниться непосредственно в главной та-
блице файлов (Master File Table, MFT), а так как DiskView не анализирует 
файлы из MFT, если выбрать один из таких файлов, появится сообщение 
«The specified file does not occupy any cluster» («Выбранный файл не занима-
ет кластеров»).

Команда  Statistics (Статистика) из меню File (Файл) открывает диа-

логовое окно Volume Properties (Свойства тома), в котором показано 
общее число файлов на томе, включая файлы в MFT, но в поле Fragments 
(Фрагменты)
 показано число фрагментов файлов, принадлежащих файлом, 
хранящимся вне MFT (рис. 12-9).

Рис. 12-9.  Диалоговое окно свойств тома

Кнопка Export (Экспорт) записывает данные, полученные при сканиро-

вании, в текстовый файл, который можно импортировать в базу данных для 
дальнейшего анализа. Этот файл может получиться очень большим, так как 
содержит отдельную строку текста для каждого файла и каждого кластера 
на диске. Формат данных следующий:
•  одна строка с числом файлов на диске;
•  для каждого файла — одна строка с пробелом в качестве разделителя, со-

держащая следующее:

•  число кластеров, занятых файлов;
•  число фрагментов файла;
•  путь к файлу;
•  одна строка, содержащая число кластеров на диске;
•  для каждого кластера — одна строка с пробелом в качестве разделителя, 

содержащая следующее:

•  индекс файла (из предыдущего списка), занимающего кластер;

SIN_ch_12.indd   345

27.12.2011   14:36:43


background image

346  Часть 

II   

Работа с утилитами

•  индекс кластера в файле;
•  тип кластера: 0 = данные, 1 = каталог, 2 = метаданные, 3 = неиспользуе-

мый.

Contig

Большинство решений для дефрагментации дисков дефрагментирует том це-
ликом. Contig — консольная утилита, позволяющая дефрагментировать от-
дельный файл или несколько файлов и просматривать уровень фрагментации 
файла. Возможность дефрагментировать определенный файл может быть по-
лезной, когда этот файл постоянно фрагментируется из-за частой модифика-
ции. С помощью Contig можно также создать новый файл, который гаранти-
рованно будет располагаться в одном наборе смежных кластеров.

Contig работает во всех версиях Windows. Эта утилита использует стан-

дартные API дефрагментации Windows, так что не приводит к повреждению 
диска даже при аварийной остановке. Contig требует разрешения Запись 
(Write) на целевом томе для выполнения дефрагментации файла; для про-
смотра уровня фрагментации требуется только разрешение Чтение (Read). 
Разрешения на запись требуются также для создания нового непрерывного 
файла. Подробнее см. выше во врезке «Разрешения для работы с томами».

 Примечание  Для твердотельных накопителей дефрагментация не требуется и толь-

ко сокращает их время жизни.

Для работы с существующими файлами используйте следующий синтак-

сис:

contig [-v] [-q] [-s] [-a] имя_файла

Параметр имя_файла принимает знаки подстановки. Если параметр -a 

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

С параметром -a Contig выполняет анализ файла или файлов, сообщает 

число фрагментов, но не перемещает их. Если указать параметр -v (verbose, 
подробный режим), будет показана дополнительная информация. С пара-
метром -q (quiet, тихий режим) файлы обрабатываются в тихом режиме, в 
конце отображается только сводка. Если указать параметр -s и ввести имя 
файла со знаками подстановки, будет выполнен рекурсивный поиск в под-
каталогах. Например, следующая команда анализирует фрагментацию всех 
файлов .bin в иерархии папок ProgramData:

contig -a -s C:\ProgramData\*.bin

SIN_ch_12.indd   346

27.12.2011   14:36:43