Quote mount point when resizing nilfs2 (#782681)
The current nilfs2 resizing code is safe because it never passes a user influenced mount point into a command line. Regardless, apply the same simple rule to always quote mount points when used in command lines. WARNING: Nilfs-resize is broken and can't actually resize a file system mounted with spaces in the mount point anyway! # mkdir "/tmp/File System Label" # mount -v -t nilfs2 /dev/sdb3 "/tmp/File System Label" mount.nilfs2: started nilfs_cleanerd # nilfs-resize -v -y /dev/sdb3 Error: cannot open NILFS on /dev/sdb3. # echo $? 1 # strace nilfs-resize -v -y /dev/sdb3 ... stat("/dev/sdb3", {st_mode=S_IFBLK|0660, st_rdev=makedev(8, 19), ...}) = 0 open("/dev/sdb3", O_RDONLY) = 3 ... open("/proc/mounts", O_RDONLY) = 4 read(4, "sysfs /sys sysfs rw,seclabel,nos"..., 1024) = 1024 ... close(4) = 0 open("/tmp/File\\040System\\040Label", O_RDONLY) = -1 ENOENT (No such file or directory) ... # fgrep /dev/sd /proc/mounts /dev/sda3 / ext4 rw,seclabel,relatime,data=ordered 0 0 /dev/sda1 /boot ext4 rw,seclabel,relatime,data=ordered 0 0 /dev/sdb3 /tmp/File\040System\040Label nilfs2 rw,relatime 0 0 So it looks like nilfs-resize (or a library it uses) can't decode the octal characters '\040' used to encode spaces in the mount point as reported in /proc/mounts. Bug 782681 - btrfs partitions mounted with whitespace cannot be resized
parent
3a10e30c
Please register or sign in to comment