从 Wubi 安装 (12.10 x64) 迁移后,我无法安装 USB 闪存驱动器

从 Wubi 安装 (12.10 x64) 迁移后,我无法安装 USB 闪存驱动器

使用 Wubi 迁移脚本并启动我的 Ubuntu 安装后,当我插入 USB 闪存驱动器时,我收到一条提示,提示“无法打开 PENDRIVE 的文件夹。没有注册应用程序来处理此文件。”如果我尝试从启动器打开驱动器,什么也不会发生。

知道为什么会发生这种情况吗?

答案1

这与 ACL(访问控制列表)有关。我不确定问题何时开始(我认为是版本 12.10),但具有讽刺意味的是,上周我遇到了这个问题,所以我知道该寻找什么。

无论如何,下面是详细信息...如果你检查 Wubi 安装上的访问控制列表,它看起来像这样:

# file: media/bcbc
# owner: root
# group: root
user::rwx
user:bcbc:r-x
group::---
mask::r-x
other::---

而在迁移安装中它看起来像这样:

bcbc@23:34:50:~$ getfacl /media/bcbc
getfacl: Removing leading '/' from absolute path names
# file: media/bcbc
# owner: root
# group: root
user::rwx
group::r-x
other::---

正如你所见,它缺少这个:user:bcbc:r-x

解决方案

最简单的解决方案是删除目录,因为它会自动重新创建(用您的用户名代替bcbc):

sudo rmdir /media/bcbc

或者您可以通过运行以下命令简单地恢复 ACL(再次替换您的用户名,两次):

sudo setfacl -m u:bcbc:rx /media/bcbc

它看起来是这样的:

bcbc@23:34:53:~$ sudo setfacl -m u:bcbc:rx /media/bcbc
[sudo] password for bcbc: 
bcbc@23:35:42:~$ getfacl /media/bcbc
getfacl: Removing leading '/' from absolute path names
# file: media/bcbc
# owner: root
# group: root
user::rwx
user:bcbc:r-x
group::r-x
mask::r-x
other::---

bcbc@23:35:44:~$ 

我已将其标记为迁移脚本中的一个问题(维基百科github),并将在下一版本中修复它,可能需要向命令-A中添加选项rsync以跨访问控制列表进行复制。

相关内容