setxattr(2) System Calls Manual setxattr(2) setxattr, lsetxattr, fsetxattr - C (libc, -lc) #include int setxattr(size_t size; const char *path, const char *name, const void value[size], size_t size, int flags); int lsetxattr(size_t size; const char *path, const char *name, const void value[size], size_t size, int flags); int fsetxattr(size_t size; int fd, const char *name, const void value[size], size_t size, int flags); : inode (, , ..). , inode (, stat(2)). xattr(7). setxattr() value , name path . size ( ) value; . lsetxattr() setxattr(), ; , , . fsetxattr() setxattr(), , , fd ( open(2)), path. , null. name ; , inode. value . (. ., flags ), , , , . , flags : XATTR_CREATE , -- . XATTR_REPLACE , -- . . -1, errno . EDQUOT ; . EEXIST XATTR_CREATE, . ENODATA XATTR_REPLACE, . ENOSPC . ENOTSUP name. ENOTSUP . EPERM (immutable) ( FS_IOC_SETFLAGS(2const)). , stat(2). ERANGE name value , . Linux. Linux 2.4, glibc 2.3. getfattr(1), setfattr(1), getxattr(2), listxattr(2), open(2), removexattr(2), stat(2), symlink(7), xattr(7) () Alexander Golubev , Azamat Hackimov , Hotellook, Nikita , Spiros Georgaras , Vladislav , Yuri Kozlov ; GNU (GNU General Public License - GPL, 3 ) , - . - , , () () () . Linux man-pages 6.18 8 2026 . setxattr(2)