Permission denied to resize filesystem
Im attempting to resize a filesystem on a mulipathed volume that I've grown, rescanned all the disks, and resized the multipath map.
# resize2fs /dev/mapper/my_vol
resize2fs 1.43-WIP (20-Jun-2013)
Filesystem at /dev/mapper/my_vol is mounted on /var/lib/myvol; on-line resizing required
old_desc_blocks = 6, new_desc_blocks = 12
resize2fs: Permission denied to resize filesystem
# strace -f resize2fs /dev/mapper/my_vol
(finishes with)
....snip....
write(1, "Filesystem at /dev/mapper/my_vol"..., 101Filesystem at /dev/mapper/my_vol is mounted on /var/lib/myvol; on-line resizing required
) = 101
write(1, "old_desc_blocks = 6, new_desc_bl"..., 42old_desc_blocks = 6, new_desc_blocks = 12
) = 42
access("/sys/fs/ext4/features/meta_bg_resize", R_OK) = 0
open("/var/lib/my_vol", O_RDONLY) = 4
ioctl(4, 0x40086610, 0x7fffb729c2e8) = -1 EPERM (Operation not permitted)
write(2, "resize2fs", 9resize2fs) = 9
write(2, ": ", 2: ) = 2
write(2, "Permission denied to resize file"..., 38Permission denied to resize filesystem) = 38
ioctl(2, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(2, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
write(2, "\n", 1
) = 1
exit_group(1) = ?
I would like to keep this server up as it hosts many virtual machines, and I've not experienced permission denied when running a resizefs as root before, what could be denying root a simple resize? Any help greatly appreciated.
The server has selinux disabled, and the multipath -ll shows the volume in a read-write state. (wp=rw)
myvol (3600c0ff00013d24d8c20725301000000) dm-12 HP,P2000 G3 iSCSI
size=186G features='1 queue_if_no_path' hwhandler='0' wp=rw
I have noticed that ls -ld on the mount point shows
drwxr-xr-x 5 root root 4096 Jan 27 12:49 myvol
and not
drwxr-xr-x. 5 root root 4096 Jan 27 12:49 myvol
#ls -Zd myvol
drwxr-xr-x root root ? myvol
Related?
Solution 1:
/dev/mapper/
may contain block devices instead of symlinks. If so, remove them, run udevadm trigger
. Worked for Debian 7.8.
Solution 2:
Same problem -- turned out my FS had some inconsistencies:
# resize2fs /dev/blah/lvol0
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/blah/lvol0 is mounted on /mnt/lvol0; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
resize2fs: Permission denied to resize filesystem
# umount /mnt/lvol0
# resize2fs /dev/blah/lvol0
resize2fs 1.42.9 (28-Dec-2013)
Please run 'e2fsck -f /dev/blah/lvol0' first.
# fsck /dev/blah/lvol0
fsck from util-linux 2.23.2
e2fsck 1.42.9 (28-Dec-2013)
/dev/mapper/blah-lvol0 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/mapper/blah-lvol0: 513/3072 files (2.9% non-contiguous), 12288/12288 blocks
# mount /dev/blah/lvol0 /mnt/lvol0
# resize2fs /dev/blah/lvol0
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/blah/lvol0 is mounted on /mnt/lvol0; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/blah/lvol0 is now 225280 blocks long.