Spec-Zone.ru › Elisp

Расширенные атрибуты файлов

В некоторых операционных системах каждый файл может быть связан с произвольными расширенными атрибутами файлов. В настоящее время Emacs поддерживает запросы и установку двух конкретных наборов расширенных атрибутов файлов: списков управления доступом (ACL) и контекстов SELinux. Эти расширенные атрибуты файлов используются в некоторых системах для наложения более сложных правил контроля доступа к файлам, чем базовые разрешения в стиле Unix, обсуждаемые в предыдущих разделах.

Подробное объяснение ACL и SELinux выходит за рамки данного руководства. Для наших целей каждый файл может быть связан с ACL, который определяет его свойства в системе управления доступом к файлам на основе ACL, и/или с контекстом SELinux, который определяет его свойства в системе SELinux.

Функция: file-acl имя_файла

Эта функция возвращает ACL для файла имя_файла. Точное представление ACL в Lisp не определено (и может измениться в будущих версиях Emacs), но оно совпадает с тем, что set-file-acl принимает в качестве аргумента acl (см. Изменение файлов).

Реализация ACL на основе платформы; в GNU/Linux и BSD Emacs использует интерфейс POSIX ACL, а в MS-Windows Emacs эмулирует интерфейс POSIX ACL с помощью собственных API безопасности файлов.

Если ACL не поддерживаются или файл не существует, то возвращаемое значение равно nil.

Функция: file-selinux-context имя_файла

Эта функция возвращает контекст SELinux файла имя_файла в виде списка вида (user role type range). Элементы списка — пользователь, роль, тип и область контекста соответственно, как строки Lisp; см. документацию SELinux для получения подробностей о том, что они на самом деле означают. Возвращаемое значение имеет тот же формат, что и то, что set-file-selinux-context принимает в качестве аргумента context (см. Изменение файлов).

Если SELinux не поддерживается или файл не существует, то возвращаемое значение равно (nil nil nil nil).

Функция: file-extended-attributes имя_файла

Эта функция возвращает список атрибутов расширенных атрибутов файла имя_файла, распознаваемых Emacs. В настоящее время он служит удобным способом получения ACL и контекста SELinux; затем вы можете вызвать функцию set-file-extended-attributes, используя возвращенный список в качестве второго аргумента, чтобы применить те же атрибуты доступа к файлам к другому файлу (см. Изменение файлов).

Один из элементов — (acl . acl), где acl имеет тот же формат, что и возвращаемое значение функции file-acl.

Другой элемент — (selinux-context . context), где context — контекст SELinux в том же формате, что и возвращаемое значение функции file-selinux-context.

Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Extended-Attributes.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API