![如何让所有 USB 存储设备以只读方式安装或根本不提供安装选项?](https://linux22.com/image/1117680/%E5%A6%82%E4%BD%95%E8%AE%A9%E6%89%80%E6%9C%89%20USB%20%E5%AD%98%E5%82%A8%E8%AE%BE%E5%A4%87%E4%BB%A5%E5%8F%AA%E8%AF%BB%E6%96%B9%E5%BC%8F%E5%AE%89%E8%A3%85%E6%88%96%E6%A0%B9%E6%9C%AC%E4%B8%8D%E6%8F%90%E4%BE%9B%E5%AE%89%E8%A3%85%E9%80%89%E9%A1%B9%EF%BC%9F.png)
这是我的查询的两个部分:
有没有办法将所有 USB 存储/闪存/可移动存储设备挂载为只读IE将默认挂载策略设置为只读? 回到 Windows 操作系统,我可以实现写保护适用于 USB 存储设备,只需进行一些注册表调整即可。如何在 Ubuntu 中做到这一点?
使用dconf-编辑器我可以控制自动挂载、自动挂载打开、自动运行……(模式:org.cinnamon.desktop.media-handling), 但Nautilus 始终允许单击安装设备!我不想这样!那么我可以控制 nautilus 中出现的挂载选项吗?设备侧边栏菜单?或者有没有更好的方法,以便只有 Root 才能挂载此类设备? 我尝试设置权限,但
/dev/bus/usb
毫无进展。
答案1
大多数 USB 闪存驱动器都采用 FAT32 格式。这是一个简单的文件系统,没有日志记录或其他花哨的功能。除非您将挂载策略设置为只读,否则只有在修改元数据或文件内容时才会写入数据。对于 Linux 发行版,您可以通过ro
在使用程序手动挂载分区时添加选项来执行此操作mount
。
您现在正在查看的桌面程序(Nautilus)不直接使用mount
(它甚至没有权限这样做)。它很可能使用移动U盘而不是(实际上是 udisks2)。在手册页中u 盘(8)您可以找到一些可以与 udev 一起使用的变量。例如,要从 Nautilus 隐藏分区,请查看此回答。
我不知道设置默认挂载策略的选项,但是您可以在以 root 身份手动挂载时指定挂载选项:
udisksctl mount --options ro ...
更改的权限/dev/bus/XXX/YYY
是无稽之谈。普通用户能够挂载外部存储,因为有一个特权守护程序正在运行(udisksd
),它代表用户运行。