Атрибут файлу
Атрибут файлу (англ. file attribute) — метадані, що описують файл.
Атрибут може знаходитись у двох станах: або встановлений, або знятий. Атрибути розглядаються окремо від інших метаданих, таких як дати, розширення імені файлу або права доступу. Каталоги та інші об'єкти файлової системи також можуть мати певні атрибути.
В операційних системах DOS та Microsoft Windows, існують чотири атрибути:[1][2][3]
- Архівний. Коли цей атрибут встановлено, це означає, що файл було змінено з часу проведення останнього резервного копіювання. ПЗ, за допомогою якого виконується резервне копіювання, також відповідає за зняття цього атрибуту.
- Прихований. Файл з встановленим атрибутом вважається прихованим. Це означає, що команди MS-DOS (dir) та програми Windows (такі як Провідник) за замовчуванням не будуть відображати цей файл, якщо не ввімкнено спеціальний режим[4] .
- Системний. Файл з встановленим атрибутом вважається системним — таким, існування якого у незміненому вигляді критично важливе для нормальної роботи системи. За замовчуванням команди MS-DOS (dir) та програми Windows (такі як Провідник) не будуть відображати цей файл, якщо не ввімкнено спеціальний режим.
- Тільки читання. Встановлений атрибут означає, що вміст файлу не можна чи не рекомендовано змінювати. Як правило, програми для Windows ігнорують цей атрибут, якщо він встановлений для каталогів[5].
З виходом нових версій системи Windows у NTFS з'явились додаткові атрибути:
- Стиснений (Compressed). Встановлений атрибут означає, що Windows зберігає цей файл на диску в архівованому вигляді.
- Зашифрований (Encrypted). Встановлений атрибут означає, що Windows зберігає цей файл на диску в зашифрованому вигляді.
- Проіндексований (Indexed). Означає, що відповідні підсистеми Windows не включатимуть вміст файлу до пошукового індексу.
У 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 все одно показуватиме його.
У DOS, OS/2 та командному рядку Windows атрибути файлу можуть бути змінені командою attrib[3][12] За допомогою Провідника Windows також можна змінювати деякі атрибути, але не атрибут «системний»[5]. Windows PowerShell має пару команд для читання/запису атрибутів: Get-ItemProperty
та Set-ItemProperty
.[13]
У 4.4BSD та її нащадках для перегляду атрибутів використовується команда ls
а для зміни — chflags
.
У Linux використовуються команди chattr
та lsattr
.
В більшості випадків користувач повинен мати відповідні права доступу для змінення атрибуту.
- ↑ Definition of: file attribute. PC Magazine. Ziff Davis. Архів оригіналу за 16 січня 2013. Процитовано 2 грудня 2012.
- ↑ File attributes. Computer Hope. Архів оригіналу за 30 листопада 2012. Процитовано 2 грудня 2012.
- ↑ а б In Windows, what are file attributes, and how can I change them?. Knowledge Base. Університет Індіани. 11 жовтня 2011.
{{cite web}}
:|access-date=
вимагає|url=
(довідка); Пропущений або порожній|url=
(довідка) - ↑ What is a hidden file?. Windows 7 Help. Microsoft. Архів оригіналу за 10 січня 2013. Процитовано 2 грудня 2012.
- ↑ Архівована копія. Архів оригіналу за 22 квітня 2014. Процитовано 21 квітня 2014.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ а б Архівована копія. Архів оригіналу за 22 квітня 2014. Процитовано 21 квітня 2014.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ а б Архівована копія. Архів оригіналу за 22 квітня 2014. Процитовано 21 квітня 2014.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ Архівована копія. Архів оригіналу за 22 квітня 2014. Процитовано 21 квітня 2014.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ Архівована копія. Архів оригіналу за 24 вересня 2015. Процитовано 21 квітня 2014.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ Архівована копія. Архів оригіналу за 22 квітня 2014. Процитовано 21 квітня 2014.
{{cite web}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання) - ↑ 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. Архів оригіналу за 29 січня 2011. Процитовано 3 грудня 2012.
- Definition of: DOS Attrib [Архівовано 2 березня 2012 у Wayback Machine.] у PC Magazine