7. Атрибуты файлов

Аннотация

Подобно файловой системе FAT, имеющей атрибуты файлов (архивный, системный, скрытый, только для чтения), файловые системы GNU/Linux также имеют свои собственные атрибуты файлов, но они отличаются. Мы вкратце пройдемся по ним для полноты повествования, но используются они очень редко. Однако, если вы хотите получить действительно защищенную систему - читайте дальше.

Существуют две команды для управления атрибутами файла: lsattr и chattr. Вы, наверное, догадались, что команда lsattr выводит список («LiSt») атрибутов, а команда chattr изменяет («CHange») их. Эти атрибуты могут быть установлены только для каталогов и обычных файлов. Ниже представлены некоторые из доступных атрибутов, полный список смотрите в chattr(1):

  1. Ano Access time»): если для файла или каталога установлен этот атрибут, то, всякий раз при обращении к нему для чтения или записи, у него не будет обновляться время последнего доступа. Это может быть полезно, например, для файлов и каталогов, к которым очень часто обращаются для чтения, особенно из-за того, что это единственный параметр в inode, который изменяется при открытии файла только для чтения.

  2. aappend only»): если для файла установлен этот атрибут, и этот файл открыт для записи, то единственной доступной операцией будет добавление данных к его предыдущему содержимому. Для каталога это означает, что вы сможете только добавить файлы, но не сможете переименовать или удалить ни одного из существующих файлов. Только root может установить или снять этот атрибут.

  3. dno dump»): dump - это стандартная утилита UNIX® для резервного копирования. Она делает дамп любой файловой системы, для которой счетчик дампов равен 1 в файле /etc/fstab (см. Глава 6, Файловые системы и точки монтирования). Но если этот атрибут установлен для файла или каталога, то он, в отличие от других, будет пропущен при снятии дампа. Обратите внимание, что при установке его для каталогов, это также распространяется на все их подкаталоги и файлы.

  4. iimmutable»): файл или каталог с этим атрибутом вообще не может быть изменен: он не может быть переименован, на него не может быть создана ссылка[6] и он не может быть удален. Только root может установить или снять этот атрибут. Обратите внимание, что это также предотвращает изменение времени последнего доступа, поэтому вам нет необходимости устанавливать атрибут A, если установлен i.

  5. ssecure deletion»): когда удаляется файл или каталог с этим атрибутом, блоки, которые он занимал на диске перезаписываются нулями.

  6. SSynchronous mode»): если для файла или каталога установлен этот атрибут, все его изменения синхронизируются и немедленно записываются на диск.

К примеру, вы можете установить атрибут i на жизненно важные системные файлы, чтобы избежать неприятных сюрпризов. Также, рассмотрите вариант установки атрибута A на страницы руководств: это позволит избежать многих дисковых операций, и, в частности, может немного продлить жизнь аккумуляторов портативных компьютеров.



[6] Убедитесь, что вы поняли, что означает «добавление ссылки» на файл и на каталог!