- Национальная библиотека им. Н. Э. Баумана Bauman National Library
- Персональные инструменты
- Атрибут файла (Операционные Системы)
- Содержание
- Описание
- Место хранения атрибутов файлов
- Виды функций атрибутов (флагов)
- Сжатие данных
- Виды атрибутов для Windows
- Для Windows с NTFS
- Редкие атрибуты
- Атрибуты для Linux
- Размещение атрибутов
- Способ размещения атрибутов UNIX
- Использование атрибутов файлов
- Атрибуты файлов и атрибуты папок
- Применение атрибутов файлов
- Атрибуты файлов
- Содержание:
- Пропали файлы с флешки
- Исчезли файлы на флешке
- Общие атрибуты файлов
- Просмотр и правка атрибутов
- Выводы
Национальная библиотека им. Н. Э. Баумана
Bauman National Library
Персональные инструменты
Атрибут файла (Операционные Системы)
Атрибуты файлов – это специальные системные метаданные, которые описывают свойства конкретного файла или целой папки. Часто под атрибутами подразумевают также некоторые дополнительные параметры, вроде, даты создания файла, или специализированную метаинформацию о конкретных типах данных (например, EXIF для изображений или ID3-теги для музыки). [Источник 1]
Содержание
Описание
Атрибут файла — это некая метка (или флаг), которая сообщает операционной системе о существовании особых правил для работы с конкретным файлом.
Место хранения атрибутов файлов
Место хранения атрибутов в частном случае зависит от реализации конкретной файловой системы. В качестве примера можно привести файловую систему Ext4 в силу ее популярности в ОС Linux. Как и во многих других файловых системах семейства UNIX\*Nix в Ext4 есть понятие inode (айнод). Изначальное название — index node — индексная точка/вершина. Inode — это специальная структура данных в файловой системе, которая хранит определенную информацию об объектах файловой системы — стандартных файлах, каталогах и т.д. Айноды хранятся в таблице айнодов, для которой файловая система выделяет необходимое количество блоков. Под определенной информацией подразумеваются отметки времени доступа, флаги, расширенные атрибуты, карты блоков данных и др. В официальной документации по ext4 те атрибуты, о которых идет речь в этой заметке, называются флагами (flags). Не стоит путать с расширенными атрибутами (extended attributes) — это несколько иная сущность.
Виды функций атрибутов (флагов)
Если обратится к man chattr то можно увидеть почти полный список атрибутов (флагов):
- A — не обновлять время доступа к объекту. Теоретически установка этого атрибута должна повысить производительность файловой системы при работе с файлом (если не используются опции монтирования noatime, nodiaratime )
- а — указывает, что в файл можно добавлять информацию, но нельзя удалять. Может быть установлен только суперпользователем.
- d — указывает на то, что не нужно делать резервные копии файла. Файл будет проигнорирован командой dump.
- i — указывает на то, что файл нельзя удалять и модифицировать, так же нельзя создать ссылку на файл. Может быть установлен только суперпользователем.
- s — указывает, что при удалении файла место где был размещен файл будет перезаписано нулями. Для невозможности восстановления после удаления.
- u — указывает на то, что при удалении файла его нужно куда-то сохранить. Наоборот, чтоб гарантировать возможность восстановления после удаления.
- c — указывает на то, что файл сжат. Перед записью в этот файл ядро сжимает данные, а чтение соответственно возвращает разархивированные данные.
Сжатие данных
Атрибут «c» существует для того,чтобы указывать пользователю,что файл сжат. Теоретически кроме экономии дискового пространства выгодой от использования этого флага может быть и ускорение дисковых операций (зависит от алгоритма сжатия). Данный атрибут, к сожалению, не работает в ext4, так как данная ФС не поддерживает механизм сжатия. Но зато работает в новой файловой системе BTRFS, где на данный момент реализованы целых два алгоритма сжатия — LZO, и ZLIB. Как раз с алгоритмом LZO разработчикам удалось добиться увеличения производительности дисковых операций за счет того, что файлы стали занимать меньше места, соответственно времени на их запись и считывание нужно меньше, а операции сжатия и распаковки занимают совсем немного процессорного времени. К сожалению, от выборочного использования этого флага эффекта будет немного — так же как и с атрибутом «A» — для достижения максимального эффекта лучше будет использовать опцию монтирования, чтоб поведение опции было глобальным для всех файлов. [Источник 2]
Виды атрибутов для Windows
В Windows существует несколько атрибутов файлов, в том числе:
- Атрибут архивного файла.
- Атрибут каталога.
- Скрытый атрибут файла.
- Атрибут файла только для чтения.
- Атрибут системного файла.
- Атрибут метки тома
Для Windows с NTFS
Следующие атрибуты файлов были впервые доступны для операционной системы Windows с файловой системой NTFS , то есть они недоступны в старой файловой системе FAT :
- Атрибут сжатого файла.
- Шифрованный атрибут файла.
- Индексированный атрибут файла.
Редкие атрибуты
Вот несколько дополнительных, хотя и более редких, атрибутов файлов, распознаваемых Windows:
- Атрибут файла устройства.
- Атрибут файла целостности.
- Не индексированный атрибут файла содержимого.
- Нет атрибута файла scrub.
- Автономный атрибут файла.
- Атрибут разреженного файла.
- Атрибут временного файла.
- Атрибут виртуального файла.
Атрибуты для Linux
В Linux каждый файл имеет свойство, характеризующее владельца файла. Управление доступом к файлам осуществляется с помощью атрибутов – специальных характеристик, имеющихся у каждого файла. Всего существует 12 характеристик. Девять из них можно разделить на три класса:
- Разрешение/запрет на чтение файла владельцем, группой владельца и всеми остальными пользователями.
- Разрешение/запрет на запись файла владельцем, его группой и всеми остальными.
- Разрешение/запрет на запуск файла владельцем, группой владельца и остальными пользователями.
Размещение атрибутов
Пользователь может получать доступ к атрибутам, используя средства, предоставленные для этих целей файловой системой. Обычно разрешается читать значения любых атрибутов, а изменять — только некоторые. Например, пользователь может изменить права доступа к файлу (при условии, что он обладает необходимыми для этого полномочиями), но изменять дату создания или текущий размер файла ему не разрешается. Значения атрибутов файлов могут непосредственно содержаться в каталогах, как это сделано в файловой системе MS DOS (см. рисунок 1). На рисунке представлена структура записи в каталоге, содержащая простое символьное имя и атрибуты файла. Здесь буквами обозначены признаки файла: R — только для чтения, А — архивный, Н — скрытый, S — системный.
Способ размещения атрибутов UNIX
Другим вариантом является размещение атрибутов в специальных таблицах, когда в каталогах содержатся только ссылки на эти таблицы. Такой подход реализован, например, в файловой системе ufs ОС UNIX. В этой файловой системе структура каталога очень простая. Запись о каждом файле содержит короткое символьное имя файла и указатель на индексный дескриптор файла, так называется в ufs таблица, в которой сосредоточены значения атрибутов файла.В том и другом вариантах каталоги обеспечивают связь между именами файлов и собственно файлами. Однако подход, когда имя файла отделено от его атрибутов, делает систему более гибкой. Например, файл может быть легко включен сразу в несколько каталогов. Записи об этом файле в разных каталогах могут содержать разные простые имена, но в поле ссылки будет указан один и тот же номер индексного дескриптора. [Источник 3]
Использование атрибутов файлов
Атрибуты файлов существуют так, что вы или программа, которую вы используете, или даже сама операционная система, могут быть предоставлены или лишены определенных прав на файл или папку. Изучение общих атрибутов файлов может помочь вам понять, почему определенные файлы и папки называются «скрытыми» или «только для чтения», например, и почему взаимодействие с ними настолько отличается от взаимодействия с другими данными. Применение атрибута файла только для чтения к файлу будет препятствовать его редактированию или изменению каким-либо образом, если атрибут не будет отменен, чтобы разрешить доступ на запись. Атрибут «только для чтения» часто используется с системными файлами, которые нельзя изменять, но вы можете сделать то же самое с вашими собственными файлами, которые вам бы хотелось, если бы кто-то с доступом не редактировал.Файлы со скрытым набором атрибутов фактически будут скрыты от обычных представлений, что делает эти файлы очень трудными для случайного удаления, перемещения или изменения. Файл по-прежнему существует, как и любой другой файл, но поскольку атрибут скрытого файла переключается, он не позволяет случайному пользователю взаимодействовать с ним.
Атрибуты файлов и атрибуты папок
Атрибуты можно включать и выключать как для файлов, так и для папок, но последствия этого немного отличаются друг от друга. Когда атрибут файла, такой как скрытый атрибут, переключается на файл , этот единственный файл будет скрыт — ничего другого. Если тот же скрытый атрибут применяется к папке , вам предоставляется больше опций, чем просто скрыть папку: у вас есть возможность применить скрытый атрибут к папке в отдельности или к папке, ее подпапкам и всем ее файлам. Применение атрибута скрытого файла к подпапкам папки и ее файлам означает, что даже после того, как вы откроете папку, все файлы и папки, которые содержатся в ней, также будут скрыты. Первый вариант просто скрыть только папку позволит сделать вложенные папки и файлы видимыми, но просто скрыть основную корневую область папки.
Применение атрибутов файлов
Хотя все доступные атрибуты для файла имеют общие имена, которые вы видели в списках выше, они не все применяются к файлу или папке таким же образом.Небольшой выбор атрибутов можно включить вручную. В Windows вы можете сделать это, щелкнув правой кнопкой мыши или нажав и удерживая файл или папку, а затем включив или отключив атрибут из предоставленного списка.
В Windows больший выбор атрибутов также можно установить с помощью команды , доступной с панели управления . Управление атрибутом с помощью команды позволяет сторонним программам, таким как программное обеспечение резервного копирования , легко редактировать атрибуты файлов.Операционные системы Linux могут использовать команду chattr (Change Attribute) для установки атрибутов файлов, а chflags (Change Flags) используется в Mac OS X. [Источник 4]
Атрибуты файлов
Содержание:
Атрибуты файлов – это специальные системные метаданные, которые описывают свойства конкретного файла или целой папки. Часто под атрибутами подразумевают также некоторые дополнительные параметры, вроде, даты создания файла, или специализированную метаинформацию о конкретных типах данных (например, EXIF для изображений или ID3-теги для музыки).
Обычно мы не обращаем внимания на атрибуты файлов, однако, рано или поздно может возникнуть ситуация, когда у нас не получится внести изменения в открытый текстовый файл или файлы вовсе исчезнут с флешки или жёсткого диска! А, возможно, возникнет необходимость, например, изменить дату создания снимка.
Чтобы Windows не застала Вас врасплох в самый неподходящий момент рекомендую ознакомиться с тем, что такое атрибуты файлов, зачем они нужны и что с ними делать.
Пропали файлы с флешки
Если Вы открыли флешку, а на ней пропали все данные, не спешите паниковать! Скорее всего, случайно были изменены атрибуты файлов и папок, которые там хранились. Как вернуть правильные атрибуты мы расскажем в статье ниже!
Сколько работаю с компьютерами, столько и убеждаюсь, что они любят доставлять пользователям массу неудобств. Причём, часто все «выкрутасы» проистекают из нашего незнания каких-либо основ или особенностей работы системы и её компонентов.
Так случилось и в этот раз. Не успел я выйти на новую работу, а уже столкнулся с очередной компьютерной «проблемой» 🙂
Исчезли файлы на флешке
Приносят мне флешку, с которой нужно сбросить документ. Флешка открывается, а на ней ничего нет! Благо я уже сталкивался с подобной ситуацией и даже демонстрировал подобный эффект ученикам, когда вёл кружок в школе. А вот на неподготовленных коллег это событие произвело не самое приятное впечатление.
Я попросил не паниковать. Вызвав свойства флешки и убедившись, что она не пуста (определённый процент места на ней был занят данными), я открыл её при помощи файлового менеджера и увидел на месте все файлы, которые отображались как полупрозрачные – то есть скрытые:
Вся «беда» в том, что каждый файл в Windows, помимо привычных нам характеристик, вроде, имени, расширения или размера, имеет ещё целый ряд не совсем очевидных свойств. Одними из них являются атрибуты. Самих атрибутов немного, но они влияют на работу системы с файлами.
В нашем случае, например, атрибуты «системный» и «скрытый» приводят к визуальному «исчезновению» файла из Проводника, если в «Свойствах папок» (Панель управления или меню «Вид» любой папки) не активна опция «Показывать скрытые файлы, папки и диски» и включен флажок «Скрывать защищённые системные файлы», как это обычно стоит по умолчанию:
С причиной разобрались, а вот как вернуть файлам нормальные атрибуты, чтобы их стало видно и в Проводнике? Проблема в том, что атрибут «скрытый» в Свойствах файла отображается, но снять его нельзя, поскольку флажок неактивный.
Если у Вас есть Total Commander или иной подобный файловый менеджер, то Вы можете вызвать редактор атрибутов из меню «Файл». Однако, на мой взгляд, для этих целей удобнее использовать Командную строку! Нажмите на клавиатуре сочетание клавиш «WIN+R», в строке «Выполнить» введите без кавычек «cmd» и нажмите Enter. В открывшемся окошке Консоли вводим команду «attrib» вида:
attrib -r -a -s -h (снятие всех основных атрибутов) H:\*.* (путь к папке и маска имён файлов, выбирающая всё содержимое указанного каталога) /s /d (дополнительные ключи команды, позволяющие сбросить атрибуты файлов в папках и подпапках)
После выполнения команды все файлы и папки на флешке должны появиться в нормальном виде, что нам и было нужно 🙂 Для тех же, кому важен не только результат, но и понимание, откуда и что берётся, предлагаю разобраться с атрибутами более детально.
Общие атрибуты файлов
Всего в Windows исторически сложилось 4 основных атрибута, которыми могут обладать любые файлы и частично папки:
- «Только для чтения» (read-only) – R. Используется обычно для запрета правки текстовых файлов. Из нетрадиционных способов использования можно назвать защиту флешки от записи (в корне создаётся папка только для чтения), но вирусы могут обходить такую защиту.
- «Архивный» (archived) – A. Нужен в основном только программам для создания бэкапов, чтобы распознавать, какие файлы уже включены в резервную копию, а какие изменились и подлежат замене.
- «Системный» (system) – S. Данным атрибутом обычно помечаются системные файлы, которые нежелательно трогать пользователю. Исходя из этого, в Проводнике такие файлы не отображаются, если не отключена опция «Скрывать защищённые системные файлы» во вкладке «Вид» в разделе «Параметры папок».
- «Скрытый» (hidden) – H. Позволяет скрывать любые файлы и папки без необходимости помечать их как системные. Аналогично предыдущему атрибуту, препятствует отображению в Проводнике, если не включена настройка «Показывать скрытые файлы, папки и диски».
Кроме того, в последних версиях Windows появился ещё ряд атрибутов, которые обычно не нуждаются в изменении, но о которых стоит знать:
- «сжатый» (C);
- «зашифрованный» (E);
- «индексированный» (I);
- «временный» (T);
- атрибут целостности (V);
- «без очистки» (X).
Часть из этих атрибутов можно увидеть в Свойствах файла, а часть доступна только самой файловой системе и нигде не отображается:
Также к атрибутам иногда причисляют временную метку файла, которая включает в себя три даты: создания, изменения и первого открытия. В системе обычно отображается только дата изменения, но остальные метки времени можно увидеть всё в тех же Свойствах:
Очевидно, что изменить дату создания файла без сторонних программ нельзя, а для корректировки даты изменения достаточно внести в файл какие-либо правки. Дата сменится автоматически.
Просмотр и правка атрибутов
О том, для чего нужны атрибуты файлов, как их можно смотреть и править штатными средствами системы мы уже выяснили. Здесь же хотелось бы рассмотреть способы взаимодействия с ними посредством сторонних программ.
Как уже говорилось выше, довольно удобно работать с атрибутами в визуальном режиме при помощи файловых менеджеров.
Например, в популярном Total Commander, чтобы включить отображение скрытых файлов и папок нужно зайти в меню «Вид» – «Расширенные настройки» и внизу активировать опцию «Показывать скрытые/системные файлы: вкл/выкл». Теперь, когда всё видно, выделяем файлы, с которых нужно снять атрибуты, идём в меню «Файлы» и жмём пункт «Изменить атрибуты»:
Откроется довольно симпатичное окошко, где в визуальном режиме Вы сможете не только применить все параметры стандартной команды ATTRIB, но и сменить метку времени изменения файла (к сожалению, метку создания без специальных плагинов не сменишь).
Аналогичное окошко есть и у другого популярного файлового менеджера Free Commander. Здесь для включения отображения скрытых файлов также нужно пройти в меню «Вид», а оттуда в подменю «Показать», где и отметить все пункты. Правка же атрибутов в этом файловом менеджере также находится в меню «Файл» и называется «Атрибуты/метка времени»:
Встроенный во Free Commander инструмент правки атрибутов по функционалу даже превосходит аналог в Total Commander. Во-первых, он поддерживает дополнительные атрибуты сжатия. Во-вторых, позволяет выбирать файлы, которые нужно править, по маске. А в-третьих, позволяет менять все метки времени!
Ну и на закуску, если Вам не хочется качать полновесный файловый менеджер только ради того, чтобы поправить атрибуты некоторых файлов, Вы вполне можете обойтись узкоспециализированными утилитами. Хорошим примером является BulkFileChanger от именитых разработчиков NirSoft:
Качаем программу по ссылке для 32-битных или 64-битных систем и файл Russian.zip. Из последнего извлекаем русификатор, кидаем его в основной архив программы и можем запускать. Должно появиться окошко на русском, аналогичное тому, что на скриншоте выше.
Нам осталось только добавить в список файлы на обработку, выделить их и нажать кнопку «Изменить время/атрибуты» на верхней панельке. Если сделаете всё правильно, перед Вами откроется такое окно:
Здесь, как видим, можно менять абсолютно любые метки времени и все основные атрибуты файлов. Отмечаете галочками, что нужно изменить и жмёте «Выполнить».
Единственный недостаток BulkFileChanger в том, что программа не умеет работать с атрибутами папок и подпапок. Однако, для правки временных меток она – идеальна!
Вдобавок утилита снабжена ещё одной функцией – «Выполнить команду для выбранных файлов». Это позволяет, например, сформировать пакетную команду для множества файлов без необходимости вводить вручную все их адреса!
Выводы
Сегодняшняя статья получилась не очень обширной, но, надеюсь, станет кому-то полезной, а кому-то, возможно, позволит сберечь лишние нервные клетки 🙂
Помните, что 90% причин всех глюков и неполадок компьютера – это Вы сами! Поэтому, прежде чем паниковать и нести ПК в ремонт, попробуйте проанализировать все свои действия и поискать решения возникшей проблемы в Интернете. В большинстве случаев помогает 😉