如何在 Linux 上以非 root 所有权挂载 vfat 驱动器?

如何在 Linux 上以非 root 所有权挂载 vfat 驱动器?

我在新升级的 Debian Squeeze 上安装 iPod 时遇到了麻烦。我怀疑协议发生了变化,或者我遇到了错误,但我不知道该向哪里报告。

我正在尝试安装 iPod,以便我有权读取和写入它。但我的努力毫无成果:

    $ sudo mount -v -t vfat -o uid=32074,gid=6202 /dev/sde2 /mnt/dev/sde2 on /mnt type vfat (rw,uid=32074,gid=6202)
    $ ls -l /mnt
    total 80
    drwxr-xr-x 2 root root 16384 Jan  1  2000 Calendars
    drwxr-xr-x 2 root root 16384 Jan  1  2000 Contacts
    drwxr-xr-x 2 root root 16384 Jan  1  2000 Notes
    drwxr-xr-x 3 root root 16384 Jun 23  2007 Photos
    drwxr-xr-x 6 root root 16384 Jun 19  2007 iPod_Control
    $ sudo umount /mnt
    $ sudo mount -v -t vfat -o uid=nr,gid=nr /dev/sde2 /mnt     
    /dev/sde2 on /mnt type vfat (rw,uid=32074,gid=6202)
    $ ls -l /mnt
    total 80
    drwxr-xr-x 2 root root 16384 Jan  1  2000 Calendars
    drwxr-xr-x 2 root root 16384 Jan  1  2000 Contacts
    drwxr-xr-x 2 root root 16384 Jan  1  2000 Notes
    drwxr-xr-x 3 root root 16384 Jun 23  2007 Photos
    drwxr-xr-x 6 root root 16384 Jun 19  2007 iPod_Control

如您所见,我尝试了符号和数字 ID,但文件仍然归 root 所有(并且只能由 root 写入)。

这些 ID 确实是我的;我从 1993 年起就拥有 UID。

$ id
uid=32074(nr) gid=6202(nr) groups=6202(nr),0(root),2(bin),4(adm),...

我已经在http://pastebin.com/Xue2u9FZ,并且 mount(2) 调用看起来不错:

mount("/dev/sde2", "/mnt", "vfat", MS_MGC_VAL, "uid=32074,gid=6202") = 0

最后,这是我的内核版本uname -a

Linux homedog 2.6.32-5-686 #1 SMP Mon Jun 13 04:13:06 UTC 2011 i686 GNU/Linux

有谁知道

  • 我应该做些不同的事情,或者
  • 如果有解决方法,或者
  • 如果这是一个错误,应该在哪里报告?

答案1

重新启动机器后问题消失。

我想我会保留这个问题,因为它似乎确实展示了如何在 Linux 上以非 root 所有权安装 vfat 驱动器。但如果有人认为我应该删除这个问题,请告诉我。

相关内容