Как, собственно, работает корзина Windows?
Вы удаляете файл в Windows, он сбрасывается в корзину, а затем вынимаете его обратно. Что именно происходит в течение всего этого процесса?
Сегодняшняя сессия вопросов и ответов пришла к нам благодаря SuperUser - подразделению Stack Exchange, группе веб-сайтов вопросов и ответов, управляемой сообществом..
Вопрос
Читатель SuperUser Jonath0n интересуется корзиной:
Что на самом деле делает Корзина в Windows? Является ли это просто прославленной папкой и местом для скорого удаления файлов, или это что-то конкретное? В частности, действительно ли файлы, которые «перемещаются» в корзину, перемещаются на жесткий диск, или это просто указатели на перемещаемые файлы? Я довольно опытный пользователь, я просто хотел более глубокое объяснение корзины.
Так что за история? Как именно корзина функционирует как своего рода чистилище файлов?
Ответ
Участник SuperUser Тим Вейсман предлагает пик за кулисами:
Ссылка удалена, файл метаданных хранится в корзине, чтобы узнать исходное местоположение.
В первые дни, на Windows 95 и 98 это было расположено в
\ ПЕРЕРАБАТЫВАТЬСЯ
. В Windows 2000 и более поздних версиях она была переименована в\ RECYCLER
. Начиная с Windows Vista, теперь это специальная папка\ $ Recycle.Bin
.Используйте Process Monitor, чтобы увидеть ввод / вывод под капотом, установите фильтр на
Корзина
и посетить его. :)Например, когда я делаю это:
блокнот \ $ RECYCLE.BIN \ S-1-5-21-0192837465-987654321-0123456789-1000 \ $ EXAMPL5
Замечания: Длинное имя папки - это SID пользователя. Последнее имя папки - это хеш, основанный на метаданных.
Я получаю файл, содержащий метаданные, например:
Ö¸ÌC: \ P a t h \ T o \ S om e \ E x a m p l e. текст
Причина того, что путь к файлу имеет пробелы между ними, заключается в том, что он хранится в широких байтовых символах, чтобы поддерживать специальные символы для определенных языков, а также юникод и что еще. Предыдущие символы являются двоичными и содержат такую информацию, как размер файла и права доступа, а также указатель на данные файла. По сути, он содержит достаточно информации, чтобы восстановить исходную ссылку ...
Грустно, что книга Windows Internals не покрывает это, иначе я бы имел больше ссылок. Я не нашел ни одной статьи, которая бы подробно об этом говорила ни Microsoft, ни сторонние разработчики. Они, вероятно, существуют, но мне было легче пойти и перепроектировать основную концепцию ...
Есть что добавить к объяснению? Звук выключен в комментариях. Хотите узнать больше ответов от других технически подкованных пользователей Stack Exchange? Ознакомьтесь с полным обсуждением здесь.