Как получить дамп всех расширенных атрибутов для файла?


16

Getfattr выводит список расширенных атрибутов для выбранного файла.

Тем не менее, getfattr --dump filename только выводит user.*пространство имен , а не security.*, system.*и trusted.*пространства имен. Как правило, атрибуты пространства имен пользователя отсутствуют, если вы не прикрепили их к файлу вручную.

Да, я знаю, что могу получить информацию о SELinux с помощью getfattr -n security.selinux filename. В этом случае я знаю конкретную идентификацию расширенного атрибута.

Я пробовал это как пользователь root. Я бы предположил, что пользователь root с полными возможностями может получить доступ к этой информации. Но вы получаете только дамп пространства имен пользователя. *.

Вопрос в том, как легко получить полный дамп всех расширенных пространств имен атрибутов файла, не зная имен всех ключей во всех пространствах имен?


а "lsattr" не хватает? (см. «man chattr» для расшифровки длинной строки атрибута)
Феофраст

Ответы:


12

Я ненавижу делать это, но ответ (после дополнительных исследований):

 getfattr -d -m - file

Я очевидно пропустил это в моем чтении справочной страницы :

-m шаблон , --match = шаблон

   Включайте только атрибуты с именами, соответствующими шаблону регулярного выражения . [...] Укажите «-» для включения всех атрибутов.


Я использовал getfattr -d -m '' fileдля этого, я не знал, что -это особый случай, но похоже, что так было с тех пор, как функция была добавлена ​​(изначально как -rопция). Позор. Нужно использовать -m '[-]'для поиска атрибутов, которые содержат -.
Стефан
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.