Атрибут файла (GmjnQrm sgwlg)
В статье есть список источников, но не хватает сносок. |
Атрибут файла (англ. file attribute) — метаданные, которые описывают файл. Атрибут может находиться в двух состояниях: либо установленный, либо снятый. Атрибуты рассматриваются отдельно от других метаданных, таких как даты, расширения имени файла или права доступа. Каталоги и другие объекты файловой системы также могут иметь определённые атрибуты. Также существуют расширенные атрибуты файлов, хранящие данные другого типа.
Разновидности
[править | править код]DOS и Microsoft Windows
[править | править код]В операционных системах DOS и Microsoft Windows традиционно существуют четыре атрибута:[1][2][3]
- Архивный (A): Когда этот атрибут установлен, это означает, что файл был изменён со времени проведения последнего резервного копирования. ПО, с помощью которого выполняется резервное копирование, также отвечает за снятие этого атрибута.
- Скрытый (H): Файл с установленным атрибутом считается скрытым. Это означает, что команды MS-DOS (dir) и программы Windows (такие как Проводник) по умолчанию не будут отображать этот файл, если не включён специальный режим[4] .
- Системный (S): Файл с установленным атрибутом считается системным — таким, существование которого в неизменённом виде критически важно для нормальной работы системы. По умолчанию команды MS-DOS (dir) и программы Windows (такие как Проводник) не будут отображать этот файл, если не включён специальный режим.
- Только чтение (R): Установленный атрибут означает, что содержимое файла нельзя изменять. Как правило, программы для Windows игнорируют этот атрибут, если он установлен для каталогов[5].
С выходом новых версий системы Windows в NTFS появились многие дополнительные атрибуты, в числе которых следующие:
- Сжатый (Compressed, C). Установленный атрибут означает, что Windows сохраняет этот файл на диске в сжатом виде.
- Зашифрованный (Encrypted, E). Установленный атрибут означает, что Windows хранит этот файл на диске в зашифрованном виде.
- Не Индексированный (Not Content-Indexed, I). Установленный атрибут означает, что файл не будет проиндексирован службой индексации содержимого или поиска Windows операционной системы.
4.4BSD-Lite и производные от неё системы
[править | править код]Эта статья или раздел содержит незавершённый перевод с иностранного языка. |
В 4.4BSD и 4.4BSD-Lite файлы и каталоги могут получить четыре атрибута, которые устанавливаются владельцем файла или пользователем с повышенными правами (отмеченные как «User»). Еще два атрибута могут устанавливаться только пользователем с повышенными правами («System»).[6]
- (User) No-dump: Установленный атрибут означает, что файл или каталог не должен копироваться во время резервного копирования.
- (User and System) Immutable: Означает, что файл или каталог могут оставаться неизменными. Будут блокированы попытки открытия файла для записи, попытки переименовать его, переименовать или создать новый файл в каталоге.
- (User and System) Append-only: К файлу можно только добавлять информацию.
- (User) Opaque: Используется определённая особенность монтирования файловых систем в ОС.
В FreeBSD ещё появился следующий атрибут[7] (также поддерживается в DragonFly BSD):[8]:
- (User and System) No-unlink: Означает, что файл или каталог нельзя удалять. Попытки сделать это закончатся сообщением про ошибку доступа.
FreeBSD также поддерживает:[7]
- (System) No-archive: установленный атрибут означает, что файл или каталог нельзя архивировать (средствами файловой системы).
- (System) Snapshot: Файл принадлежит к специальному типу файлов, обрабатываемых системой. Этот атрибут устанавливается только системой, даже пользователь с повышенными правами не может его изменить.
Кроме того, DragonFly BSD поддерживает:[8]
- (User and System) No-history: История изменений не должна сохраняться для данного файла или каталога.
- (User) Swapcache и (System) Swapcache: Определяет уверенные особенности работы с SSD.
- (System) Archived: Противоположное к No-archive.
NetBSD[9] и OpenBSD:[10] также поддерживают (System) Archived.
В OS X был добавлен ещё один атрибут[11]
- (User) Hidden: Означает, что по умолчанию файл с таким атрибутом не будет отображаться средствами графического интерфейса, хотя команда ls всё равно будет показывать его.
В Solaris для ZFS также существуют атрибуты:
- av_quarantined: Доступ к файлу ограничен до снятия карантина антивируса.
- av_modified: Означает, что текущая версия файла не проверена антивирусом.
Изменение значения атрибута
[править | править код]В DOS, OS/2 и командной строке Windows, атрибуты файла могут быть изменены командой attrib[3][12] С помощью Проводника Windows также можно изменять некоторые атрибуты, но не атрибут «системный»[5] Windows PowerShell имеет две команды для чтения/записи атрибутов: Get-ItemProperty
и Set-ItemProperty
.[13]
В 4.4BSD и её наследниках для просмотра атрибутов используется команда ls
, а для изменения — chflags
.
В Linux используются команды chattr
для изменения и lsattr
для просмотра атрибутов.
В Solaris используются команды chmod
для изменения и ls
для просмотра атрибутов.
В большинстве случаев пользователь должен иметь соответствующие права доступа для изменения атрибута.
Примечания
[править | править код]- ↑ Definition of: file attribute . PC Magazine. Ziff Davis. Дата обращения: 2 декабря 2012. Архивировано из оригинала 16 января 2013 года.
- ↑ File attributes . Computer Hope. Дата обращения: 2 декабря 2012. Архивировано 30 ноября 2012 года.
- ↑ 1 2 In Windows, what are file attributes, and how can I change them? (англ.). Knowledge Base. Indiana University (11 октября 2011). Дата обращения: 2 декабря 2012. Архивировано 4 марта 2016 года.
- ↑ What is a hidden file? Windows 7 Help. Microsoft. Дата обращения: 2 декабря 2012. Архивировано 10 января 2013 года.
- ↑ Проект OpenNet: MAN chflags (2) Системные вызовы (FreeBSD и Linux) . Дата обращения: 7 февраля 2015. Архивировано 22 апреля 2014 года.
- ↑ 1 2 chflags(2) . Дата обращения: 7 февраля 2015. Архивировано 22 апреля 2014 года.
- ↑ 1 2 DragonFly On-Line Manual Pages : chflags(2) . Дата обращения: 7 февраля 2015. Архивировано 22 апреля 2014 года.
- ↑ chflags(2) - NetBSD Manual Pages . Дата обращения: 7 февраля 2015. Архивировано 22 апреля 2014 года.
- ↑ OpenBSD manual pages . Дата обращения: 7 февраля 2015. Архивировано из оригинала 24 сентября 2015 года.
- ↑ chflags(2) Mac OS X Developer Tools Manual Page . Дата обращения: 7 февраля 2015. Архивировано 22 апреля 2014 года.
- ↑ Definition of: DOS Attrib . PC Magazine. Ziff Davis. Дата обращения: 2 декабря 2012. Архивировано из оригинала 2 марта 2012 года.
- ↑ Use a PowerShell Cmdlet to Work with File Attributes . Hey, Scripting Guy! Blog. Microsoft (26 января 2011). Дата обращения: 3 декабря 2012. Архивировано 29 января 2011 года.
Ссылки
[править | править код]- Definition of: DOS Attrib Архивная копия от 2 марта 2012 на Wayback Machine в PC Magazine