On this page
community.general.xattr – Manage user defined extended attributes
Note
This plugin is part of the community.general collection (version 3.8.1).
You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.
To install it, use: ansible-galaxy collection install community.general.
To use it in a playbook, specify: community.general.xattr.
Synopsis
- Manages filesystem user defined extended attributes.
 - Requires that extended attributes are enabled on the target filesystem and that the setfattr/getfattr utilities are present.
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| follow
        
        boolean
         | 
      
       
  | 
      
        
        If  yes, dereferences symlinks and sets/gets attributes on symlink target, otherwise acts on symlink itself.
        | 
     
| key
        
        string
         | 
      
        
        The name of a specific Extended attribute key to set/retrieve.
         | 
     |
| namespace
        
        string
         | 
      Default: 
        "user"
         | 
      
        
        Namespace of the named name/key.
         | 
     
| path
        
        path / required
         | 
      
        
        The full path of the file/object to get the facts of.
        
       
        Before 2.3 this option was only usable as name.
        
       aliases: name  | 
     |
| state
        
        string
         | 
      
       
  | 
      
        
        defines which state you want to do.  read retrieves the current value for a key (default) present sets name to value, default if value is set all dumps all data keys retrieves all keys absent deletes the key
        | 
     
| value
        
        string
         | 
      
        
        The value to set the named name/key to, it automatically sets the  state to 'set'.
        | 
     
Notes
Note
- As of Ansible 2.3, the name option has been changed to path as default, but name still works as well.
 
Examples
- name: Obtain the extended attributes  of /etc/foo.conf
  community.general.xattr:
    path: /etc/foo.conf
- name: Set the key 'user.foo' to value 'bar'
  community.general.xattr:
    path: /etc/foo.conf
    key: foo
    value: bar
- name: Set the key 'trusted.glusterfs.volume-id' to value '0x817b94343f164f199e5b573b4ea1f914'
  community.general.xattr:
    path: /mnt/bricks/brick1
    namespace: trusted
    key: glusterfs.volume-id
    value: "0x817b94343f164f199e5b573b4ea1f914"
- name: Remove the key 'user.foo'
  community.general.xattr:
    path: /etc/foo.conf
    key: foo
    state: absent
- name: Remove the key 'trusted.glusterfs.volume-id'
  community.general.xattr:
    path: /mnt/bricks/brick1
    namespace: trusted
    key: glusterfs.volume-id
    state: absent
  Authors
- Brian Coca (@bcoca)
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/community/general/xattr_module.html