Рубрика "IT"
Начну с интриги
В ролике видим флешку, на которой сохранён один файл, содержащий следующие строки:
Александр Пушкин
***
О сколько нам открытий чудных
Готовят просвещенья дух
И опыт, сын ошибок трудных,
И гений, парадоксов друг,
И случай, бог изобретатель...
Он занимает большую часть места. Ожидаемо не удаётся создать его же собственную копию на этом носителе. Попытка скопировать на другой накопитель через проводник также не увенчалась успехом. А вот Total Commander выполняет копирование, но неспешно, как будто файл действительно "весит" больше 30 Гб. При этом внизу виден его размер - 168, а в конце ролика после внесения изменений в текст - 184 байта. Ответ будет пояснён в этой статье, как и другие нюансы файловой системы, которая на данный момент встречается чаще всего на рабочих станциях - NTFS.
Разработка NTFS была обусловлена необходимостью расширения самого понятия "файл", которое становилось чем-то большим, чем просто переименованная область информации. "Старый файл", включающий в себя собственно информацию, имя и несколько атрибутов больше не удовлетворял требованиям, предъявляемым к файлам в операционных системах с разграничением доступа, квотированием, версионированием и многими другими новыми тогда веяниями. Файл должен был стать метаконтейнером, способным вместить в себя буквально всё. По сути заменял собой папку, а каждый атрибут мог повторяться многократно. В частности у "нового файла" могло быть несколько имён.
NTFS - это изделие Microsoft, которое было реализовано на базе их совместного с IBM проекта - HPFS для операционной системы OS/2. После "ссоры" Microsoft стал реализовывать свои идеи самостоятельно, и NTFS - одна из них. Помимо поддержки хранения метаданных, о которой было сказано выше, эта файловая система расширяла возможности своей предшественницы FAT практически по всем параметрам, включая и максимальный размер файла, и их максимальное количество на носителе, и разрешённые в именах символы, и многое другое.
Также NTFS умеет собственное сжатие. Впервые без применения сторонних утилит файл мог занимать на носителе меньше места, чем его реальный размер. Обратимся всё к той же флешке, куда теперь скопирована папка документов, а перед этим включено сжатие:
Свойства: документы (Собственный скриншот)
Больше 10% места сэкономлено благодаря встроенным возможностям файловой системы. Можно и больше, но на практике NTFS не рекомендуется для использования на сменных носителях, т.к. одно из свойств файла здесь - это время последнего доступа, стоит вам просто посмотреть файл или даже даже его свойства, часть информации будет перезаписана. Можно было бы этим пренебречь, но также EFI не работает с NTFS, а для медийных целей хватает и exFAT. Но это я отвлёкся. Хватит говорить о прописных истинах, пора уделить пару слов тому, что многие упускают из вида, хотя эти возможности не менее задокументированы.
Жёсткие и символические ссылки
Жёсткую ссылку в NTFS можно рассматривать, как второе (третье/четвёртое...) имя файла. Это часто удобно для организации быстрого доступа к файлам из разных папок, ведь при передаче такого пути он передаётся именно в оригинале, а не меняется, как в случае с ярлыком. Забавно, вплоть до Windows Vista операционные системы Microsoft не умели нормально работать с символическими ссылками. В случае удаления одной из них Проводник удалил бы данные, а все остальные ссылки стали бы неверными. Теперь Проводник показывает ссылки и точки монтирования NTFS. Одним из самых наглядных примеров может быть папка Documents and Settings, которая лишь ссылается на Users.
Символические ссылки больше напоминают ярлыки и введены для использования на разных накопителях. Поскольку жёсткая ссылка - это атрибут файла, то он не может находится на другом носителе, а вот символическая - может.
В Total Commander, Far и, возможно, других двухпанельных файловаых менеджекрах для работы с этими возхможностями использовались сторонние плагины и утилиты, но при этом и сами программы из коробки корректно обрабатывали ссылки, и можно было не бояться потерять данные, удаляя лишь одну из ссылок.
Одна из утилит для TC (Собственный скришот)
Секрет стихотворения Пушкина
Как уже наверняка догадался внимательный читатель приведённый в начале текстовый файл содержит помимо основной информации - стихотворения Александра Сергеевича ещё много чего. В качестве иного в файловые потоки было добавлено несколько художественных фильмов. Просто для демонстрации возможности. На практике таким образом можно прятать в файлах дополнительную информацию, которую обычными средствами не так-то просто оттуда извлечь. Это могут быть любые другие файлы с собственными именами. Для работы с файловыми потоками NTFS в Total Commander используются плагины, относящиеся к сетевым. Один из них - NTFS - streams. Благодаря нему вы открываете любой файл, как папку, где поток ::$data - это собственно данные файла, и помимо него могут существовать любые другие потоки.
NTFS - streams (Собственный скриншот)
автор @fainder
Вычитка ФилФак
✅
Ваш пост поддержали следующие Инвесторы Сообщества "Добрый кит":
vas, francisgrey, blange, mir, narin, max-max, lelya, korzhimanov, urii, dikaniovs, la-bella-vita, yurgent71, tom123, vict0r, drim, status7, tnam0rken, orezaku, kvg, hyipov, amelina.elena, wrong, kertar, bag, duremarr, tortellini, ili, abloud, naiger, xsen, anr, benken, fxmonster, vp-cosmos, mister-omortson, lologom, delectat, molchyn, worthless-man, boliwar, wmforum, jpigeon84, alexxela, valdemar777, fatima
Поэтому я тоже проголосовал за него!
dobryj.kit теперь стал Делегатом! Ваш голос важен для всего сообщества!!!
Поддержите нас:
✅