只能使用 sudo 挂载外部驱动器

只能使用 sudo 挂载外部驱动器

我有一个 2TB 的外部驱动器,带有 NTFS 分区。如果我将它连接到我的主桌面,它可以在 Dolphin 中正常安装 - 当驱动器出现在侧边栏时,我只需单击它,就可以看到所有文件、导航、使用它们等。这台计算机运行的是 Kubuntu 22.04,知道这是我使用此驱动器的第一台计算机可能会很有用。

当我将驱动器连接到运行新安装的 Kubuntu 23.10 的笔记本电脑时,驱动器会出现,但在 Dolphin 的侧边栏上单击它会显示一条错误消息:

Error mounting /dev/sdb1: GDBus.Error:org.freedesktop.UDisks2.Error.Failed: Error mounting /dev/sdb1 at /media/root/TOSHIBA EXT: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error

我担心磁盘/分区出现故障,但这是一个全新的外部驱动器;我把它带回台式机,运行良好。

然后我把它带回笔记本电脑并尝试用 udiskctl 安装它,它不仅不起作用而且还给了我相同的错误消息 - 所以我知道 Dolphin 可能将它用作后端,这意味着它不是 KDE 问题而是 udisks 或权限问题。

最后我使用了一个简单的 mount 命令。终端告诉我我必须是 root。然后我运行

sudo mount /dev/sdb1 /media/mountpoint

一切运行正常!我甚至可以操作里面的文件,没有任何权限方面的抱怨。

我在另一台笔记本电脑上测试了外置硬盘,也运行 23.10(尽管这是一个升级的系统)。我遇到了同样的错误,并应用了同样的解决方案。

我在 Google 和 AskUbuntu 上搜索答案。我找到的最接近的场景给了我一些想法;我尝试了:

  • 删除 /media/“username”以便系统可以重新创建它;
  • 将 /media/"username" 更改为 username:username ,然后再更改为 username:root;并且
  • 将 /media 的所有者更改为用户名:用户名,然后再更改为用户名:root。

什么都不起作用,我将 /media 返回到完全 root 所有权,删除了里面的用户名文件夹(此后通过新的尝试安装驱动器重新创建了它,但根据上面的错误消息失败了。它总是相同的错误消息)。

请注意,当我使用“sudo mount”安装它时,Dolphin 会将驱动器的侧边栏条目变成已安装的类型,我可以在里面看到它的可用空间等 - 并且它允许我以图形方式卸载驱动器,它要求我输入密码。虽然这不是最佳行为,但我不明白为什么它不能要求我输入密码首先这该死的东西……

我知道我可以将分区的 UUID 添加到两台笔记本电脑的 fstab 中,但这并不能真正解决问题 - 这不应该发生!此外,我正在为一个不是如果她无法插入朋友的外部驱动器,则会弄乱终端。

我还应该补充一点,fat32 笔式驱动器不会出现类似的问题,它们安装得很好。

提前致谢!

答案1

我在另一个论坛(使用另一种语言)上问了这个问题,他们在那里给我指明了正确的方向。我将描述这个问题的路径,以便其他遇到类似问题的人知道这个解决方案是否适合他们。

显然,在 2021 年,有一件事需要更改文件 /etc/udisks2/mount_options.conf(默认情况下,我认为新安装的 Ubuntu 中不存在该文件;我必须创建它)。它应该填充以下内容:

[defaults]
ntfs_defaults=uid=$UID,gid=$GID

这个(以及变体,例如在 $s 前加一个反斜杠,在行首加一个“ntfs:”)确实不是工作。

但是等一下:我意识到这个提示是 2021 年的。我的 22.04 Dolphin 可以正常安装 HD;它也应该受到该错误的影响,但事实并非如此。怎么回事?然后我发现有人在 2021 年或 2022 年的某个地方抱怨 Ubuntu仍然尽管内核中提供了 ntfs3,但我还是使用 ntfs-3g。这让我开始寻找强制 23.10 udisk 使用 ntfs-3g 的方法,我推测(但从未发现是否真的如此)我的 22.04 机器正在这样做。显然,我只需要从内核中删除 ntfs3 模块,这样就可以使用替代方案(ntfs-3g)。

但我从来没有做过任何事,因为我找到了别的东西。

udisks github 上有人抱怨ntfs3 与 ntfs-3g 不同,它拒绝挂载任何标记为损坏的分区,即使它显然没有损坏(因为 ntfs-3g 能够正常处理它)。解决方案很简单:运行

ntfsfix -d

在受影响的分区上(以 root / 使用 sudo 身份)

我照做了,而且成功了!现在,两台运行 Kubuntu 23.10 的笔记本电脑都可以完美地在 Dolphin 中安装 HD。

我没有检查 KDE 的分区管理器是否可以做到这一点,但如果有人在 Ubuntu/Gnome 中遇到此问题,我知道 Gnome Disks 有一个菜单选项可以修复分区,对于 ntfs 分区,我猜它的作用是一样的。它起作用了对于 AskUbuntu 上的这个人,由于它是关于 U 盘的,所以我错过了这篇帖子。

以下是我得出的结论:

  1. 我没有检查文件系统因为它在另一台 Linux 机器上运行得很好,但我想不应该指望这一点。分区可能仍被标记为已损坏,ntfs3 将无法挂载它...或者,udisks 不会,因为 mount 命令运行良好。
  2. 我也有足够的信心使用 ntfsfix,因为我知道分区是好的,所以我并不觉得存在任何严重的数据丢失风险。
  3. 因此这仍然是一个问题;这台笔记本电脑将由外行使用,如果他们尝试访问实际损坏的 ntfs 文件系统(例如,朋友或同事的),我不会告诉他们尝试修复它以安装它。但我想这是最好的...

相关内容