`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Unlocker: кто в доме хозяин?

0 
 

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

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

Unlocker кто в доме хозяин?
Пример сообщения об ошибке удаления файла

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

Первый случай самый простой – проблемное состояние может быть спровоцировано поврежденными секторами на диске или ошибками в имени файла, например если оно содержит недопустимые или зарезервированные в пространстве имен Win32 символы. Подобная ситуация возможна практически в любой операционной системе семейства Windows независимо от используемой файловой системы, и самый очевидный способ исправить ее – это запустить утилиту проверки диска chkdsk. Нет гарантии, что все объекты удастся полностью спасти, но в любом случае целостность файловой системы будет восстановлена, по крайней мере, удалить ненужные данные точно получится.

Возможен также вариант, когда количество символов в пути файла превышает максимально допустимое (для большинства программ оно составляет 255 знаков, но бывают исключения). Тогда стоит попытаться сократить путь посредством переименования каталогов, а все операции лучше производить из того же приложения, которым файл был создан, – так шансы на успех повышаются.

Сложнее, когда пользователю отказано в праве доступа к объекту. Обычно это происходит при работе с логическим разделом, отформатированным под NTFS, причем в сетевой среде и на многопользовательских машинах риск существенно возрастает.

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

В общих чертах эта технология работает так: при входе в систему каждый пользователь проходит аутентификацию и при этом, в соответствии с настройками, получает индивидуальный маркер доступа. Впоследствии, как только программа или процесс, запущенные пользователем, обращаются к тому или иному объекту, операционная система сопоставляет маркер с дескриптором защиты и на этом основании либо положительно, либо отрицательно решает вопрос о доступе. Сам дескриптор состоит из идентификаторов защиты (SID) владельца и его группы, а также списка управления избирательным доступом (DACL) и системного списка управления доступом (SACL). Именно DACL содержит сведения о правах доступа к данному объекту для каждого пользователя и группы, а SACL используется с журналом безопасности, в который заносятся все производимые над файлом или папкой действия. В свою очередь, списки доступа состоят из элементов контроля доступа (ACE) – запрещающих или разрешающих, причем первые имеют приоритет. На деле эта кажущаяся сложной цепочка работает просто: над объектом можно произвести только те действия, которые разрешены для данной группы и не запрещены для конкретно взятого пользователя.

Например, если в настоящий момент общий ресурс уже задействован другим клиентом локальной сети, приложением или процессом, т. е. имеет открытый дескриптор, то доступ к нему будет заблокирован. Зачастую ситуацию не исправляет даже расхожий принцип «выйти и снова зайти», проще говоря, перезагрузка машины. Ведь нередко файл блокируется процессом, стартующим вместе с операционной системой или ее компонентом. Это может быть некорректно работающий модуль, или не полностью удаленное приложение, или, скажем, активный вирус. Тогда единственный способ разрешения проблемы – выяснить, какой именно процесс заблокировал объект, попытаться удалить (или хотя бы остановить) его и таким образом получить доступ к нужному файлу. В базе знаний Microsoft упоминается, что для подобных целей можно воспользоваться специальным инструментарием сторонних разработчиков, например программой Process Explorer от Sysinternals.

Хуже, когда документ был создан другим пользователем компьютера. Тогда для получения права на управление объектом понадобится сменить его владельца. Для редактирования списков контроля доступа предназначена консольная утилита cacls.exe. Через графический интерфейс Windows XP Professional данная операция осуществляется во вкладке Security > Advanced > Owner в свойствах файла, но... для этого нужно иметь соответствующие права, в идеале администраторские.

Unlocker кто в доме хозяин?
Unlocker встраивается отдельным пунктом в оболочку системы
Unlocker кто в доме хозяин?
Основное окно программы с блокирующим файл процессом
Unlocker кто в доме хозяин?
Теперь удалить проблемный файл можно непосредственно из Unlocker

Однако в более сложном случае проблема с удалением объектов может быть вызвана комбинацией причин, и тогда для ее решения понадобятся более серьезные усилия и достаточно много времени. Именно для таких ситуаций и была создана утилита Unlocker – она позволяет просмотреть процессы, имеющие доступ к выбранному файлу, и либо удалить их, либо просто снять блокировку. Причем в отличие от большинства аналогичных продуктов (подробная сравнительная таблица приведена тут же, на сайте производителя) Unlocker дает возможность оперировать как процессами, так и отдельными библиотеками, не перезагружая при этом компьютер. Некорректные имена для нее также не помеха. Утилита небольшая, бесплатная, встраивается в контекстное меню Windows Explorer, т. е. использование ее не вызывает затруднений. Кроме того, в распоряжении имеются на выбор графический интерфейс и командная строка. В версии 1.7.2, вышедшей 19 сентября, в локализации присутствует не только русский, но и украинский язык. Из полезных нововведений стоит отметить средства выполнения наиболее распространенных операций над файлами (перемещение, переименование и удаление) непосредственно в Unlocker, так что, даже если блокирующий дескриптор не найден и соответственно проблема не связана с разграничением доступа, пользователь, не слишком углубляясь в технические нюансы, достигнет нужного результата в пару движений мышью. Благодаря этому программа является действительно универсальным инструментом для решения описанных в статье проблем.

0 
 

Напечатать Отправить другу

Читайте также

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT