Can't unmount UUID= volume as a user
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
util-linux (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned | ||
Bug Description
I have the following entry in /etc/fstab:
UUID=00a1665a-
- to allow a nonprivileged user (ie, me) to mount a firewire disk with the specified UUID.
mounting works fine, but unmounting (as the same user) doesn't:
[jk@pokey ~]$ umount /media/extdisk
umount: /media/extdisk mount disagrees with the fstab
When this disk is mounted, /proc/mounts shows:
/dev/disk/
however, /etc/mtab shows:
/dev/sda1 /media/extdisk ext3 rw,nosuid,
If I strace the umount:
[jk@pokey ~]$ sudo strace -etrace=file -u jk umount /media/extdisk/
execve(
access(
access(
access(
open("/
access(
open("/
readlink("/media", 0x7fa625fb, 4096) = -1 EINVAL (Invalid argument)
readlink(
open("/etc/mtab", O_RDONLY|
open("/etc/fstab", O_RDONLY|
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink("/proc", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink("/home", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink("/media", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
getcwd("/home/jk", 4095) = 9
readlink(
readlink("/media", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink("/home", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink("/media", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink(
readlink(
readlink(
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink(
readlink(
readlink(
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink(
readlink(
readlink(
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink(
readlink(
readlink(
readlink("/dev", 0x7fa625cb, 4096) = -1 EINVAL (Invalid argument)
readlink(
readlink(
readlink(
umount: /media/extdisk mount disagrees with the fstab
Process 10417 detached
- umount has managed to resolve the symlink from /dev/disk/
Changed in util-linux: | |
status: | Unconfirmed → Confirmed |
I can confirm this bug.
# /dev/hda6 noauto, utf8,umask= 007,gid= 46,user, noauto 0 1
UUID=4386-3B67 /media/backup vfat defaults,
mount /media/backup
in /proc/mounts by-uuid/ 4386-3B67 /media/backup vfat rw,nosuid, nodev,noexec, uid=1000, gid=46, fmask=0007, dmask=0007, codepage= cp437,iocharset =iso8859- 1,utf8 0 0
/dev/disk/
in /etc/mtab nosuid, nodev,utf8, umask=007, gid=46, user=brian 0 0
/dev/hda6 /media/backup vfat rw,noexec,
umount /media/backup
umount: /media/backup mount disagrees with the fstab
strace umount /media/backup "/bin/umount" , ["umount", "/media/backup"], [/* 31 vars */]) = 0 "/etc/ld. so.nohwcap" , F_OK) = -1 ENOENT (No such file or directory) PROT_WRITE, MAP_PRIVATE| MAP_ANONYMOUS, -1, 0) = 0xb7f91000 "/etc/ld. so.preload" , R_OK) = -1 ENOENT (No such file or directory) etc/ld. so.cache" , O_RDONLY) = 3 S_IFREG| 0644, st_size=50023, ...}) = 0 "/etc/ld. so.nohwcap" , F_OK) = -1 ENOENT (No such file or directory) lib/tls/ i686/cmov/ libc.so. 6", O_RDONLY) = 3 1\1\1\0\ 0\0\0\0\ 0\0\0\0\ 3\0\3\0\ 1\0\0\0\ 20Z\1\000" ..., 512) = 512 S_IFREG| 0755, st_size=1248904, ...}) = 0 PROT_WRITE, MAP_PRIVATE| MAP_ANONYMOUS, -1, 0) = 0xb7f83000 PROT_EXEC, MAP_PRIVATE| MAP_DENYWRITE, 3, 0) = 0xb7e4f000 PROT_WRITE, MAP_PRIVATE| MAP_FIXED| MAP_DENYWRITE, 3, 0x12c) = 0xb7f7c000 PROT_WRITE, MAP_PRIVATE| MAP_FIXED| MAP_ANONYMOUS, -1, 0) = 0xb7f80000 PROT_WRITE, MAP_PRIVATE| MAP_ANONYMOUS, -1, 0) = 0xb7e4e000 area({entry_ number: -1 -> 6, base_addr: 0xb7e4e6b0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 0xb7f7c000, 8192, PROT_READ) = 0 "/media/ backup" , 0xbf8ad037, 4096) = -1 EINVAL (Invalid argument) O_LARGEFILE) = 3 S_IFREG| 0644, st_size=623, ...}) = 0 PROT_WRITE, MAP_PRIVATE| MAP_ANONYMOUS, -1, 0) = 0xb7d3f000 remou". .., 4096) = 623 "/sbin/ umount. vfat", 0xbf8aef6c) = -1 ENOENT (No such file or directory) "/media/ backup" ) = -1 E...
execve(
brk(0) = 0x805b000
access(
mmap2(NULL, 4096, PROT_READ|
access(
open("/
fstat64(3, {st_mode=
mmap2(NULL, 50023, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f84000
close(3) = 0
access(
open("/
read(3, "\177ELF\
fstat64(3, {st_mode=
mmap2(NULL, 4096, PROT_READ|
mmap2(NULL, 1258876, PROT_READ|
mmap2(0xb7f7c000, 16384, PROT_READ|
mmap2(0xb7f80000, 9596, PROT_READ|
close(3) = 0
mmap2(NULL, 4096, PROT_READ|
set_thread_
mprotect(
munmap(0xb7f84000, 50023) = 0
brk(0) = 0x805b000
brk(0x807c000) = 0x807c000
...
close(3) = 0
umask(022) = 022
getuid32() = 1000
geteuid32() = 1000
readlink("/media", 0xbf8ad037, 4096) = -1 EINVAL (Invalid argument)
readlink(
umask(077) = 022
open("/etc/mtab", O_RDONLY|
umask(022) = 077
fstat64(3, {st_mode=
mmap2(NULL, 4096, PROT_READ|
read(3, "/dev/hdb1 / ext3 rw,errors=
read(3, "", 4096) = 0
close(3) = 0
munmap(0xb7d3f000, 4096) = 0
stat64(
oldumount(