For one of our Linux servers running CentOS 6.0, if I do lsattr /home, I get something like this (as root):

$lsattr /home
lsattr: Inappropriate ioctl for device While reading flags on /home/user
lsattr: Inappropriate ioctl for device While reading flags on /home/user
lsattr: Inappropriate ioctl for device While reading flags on /home/DIR

Now, I try to change something with chattr

$chattr -R -i /home
chattr: Inappropriate ioctl for device while reading flags on /home

Mount returns:

/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda3 on /boot type ext3 (rw)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
nfsd on /proc/fs/nfsd type nfsd (rw)

I have no clue how to fix this. Could somebody help?

  • Could you please post the output of cat /proc/mounts? – quanta Oct 27 '11 at 4:11
  • 1
    That was it. I had used automount to mount home directories for LDAP logins in /home/DIR and had removed it later- but it was still mounting /home/DIR as automount. That fixed it. Anyway, why would mount not return automount mount points? – rchhe Oct 27 '11 at 14:08

The filesystem where /home is located has to support Extended Attributes. Since /home is most likely located on your LogVol00 partition (and not an NFS mount or something), you have to mount the filesystem with the user_xattr mount option:

mount -o remount,user_xattr /

Note that for ext4 both user_xattr and acl are enabled by default. This varies for other filesystems.

| improve this answer | |

I realize this is an old thread, but it looks likely the directories under /home are automounted nfs exports and nfs does not support chattr, lsattr etc.. You would have to set this on the nfs server's filesystem (if possible) to make the files immutable.

| improve this answer | |

I am going to presume that /home is under your root volume. What you have to do is to change your /etc/fstab file for the root volume to add the 'acl' option. This activates ACLs on the filesystem.

To then activate ACLs either remount the root volume (mount -o remount,acl /) , or reboot the system (as the acl option is now in the options field for the root volume).

| improve this answer | |
  • Thanks. I tried your approach but I get the same error message. – rchhe Oct 26 '11 at 21:29
  • While somewhat related, ACLs are not to be confused with extended attributes. – ckujau Dec 10 '18 at 22:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.