如何通过脚本在 Ubuntu 中禁用 media_automount_open

发布于 2024-12-28 03:04:43 字数 1034 浏览 2 评论 0 原文

我编写了一个可以快速安装和卸载多个 USB 设备的脚本。当安装新设备时,Ubuntu 默认情况下会打开该设备的文件浏览器窗口。当安装多个设备时,这种行为会变得非常烦人。 我在网上查找,找到了一个教程,解释如何通过 gui 禁用该功能(http://www.liberiangeek.net/2010/09/disableenable-auto-mount-ubuntu-10-0410-10-maverick-meerkat/),但我希望找到一个从脚本中执行此操作的方法。

这就是我目前安装设备的方式:

 def mount_all(self):
        paths = self._get_partitions()
        vfat_path = paths[0][0]
        vfat = self.sysbus.get_object(SD.udisks_bus, vfat_path) 
        vfat_props = dbus.Interface(vfat, dbus_interface=SD.prop_bus)
        if vfat_props.Get(vfat_path, 'DeviceIsMounted'):
           self.fat = vfat_props.Get(vfat_path, 'DeviceMountPaths')[0]
        else:
           while True:
               try:
                   self.fat = vfat.FilesystemMount('vfat', {}, dbus_interface=SD.device_bus)
                   break
               except dbus.exceptions.DBusException:
                   time.sleep(0.1)

I writing a script that mounts and unmounts several USB devices quickly. When a new device is mounted, Ubuntu, by default, opens up a file browser window for that device. That behavior gets very annoying when it is mounting multiple devices.
I looked online, and found a tutorial explaining how to disable that feature through the gui (http://www.liberiangeek.net/2010/09/disableenable-auto-mount-ubuntu-10-0410-10-maverick-meerkat/) , but I wish to find a way to do that from within the script.

This is how I am currently mounting the devices:

 def mount_all(self):
        paths = self._get_partitions()
        vfat_path = paths[0][0]
        vfat = self.sysbus.get_object(SD.udisks_bus, vfat_path) 
        vfat_props = dbus.Interface(vfat, dbus_interface=SD.prop_bus)
        if vfat_props.Get(vfat_path, 'DeviceIsMounted'):
           self.fat = vfat_props.Get(vfat_path, 'DeviceMountPaths')[0]
        else:
           while True:
               try:
                   self.fat = vfat.FilesystemMount('vfat', {}, dbus_interface=SD.device_bus)
                   break
               except dbus.exceptions.DBusException:
                   time.sleep(0.1)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

橘味果▽酱 2025-01-04 03:04:43

事实证明这比我想象的要简单得多。您可以使用工具 gconftool-2 编辑 .gconf 属性,如下所述这里

This turned out to be way simpler than I had thought. You can edit the .gconf properties with the tool gconftool-2 as explained here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文