首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何以根用户身份卸载gphoto2设备

如何以根用户身份卸载gphoto2设备
EN

Stack Overflow用户
提问于 2020-02-27 07:48:02
回答 1查看 243关注 0票数 0

作为普通用户,我可以看到安装了gio mount的摄像头,

代码语言:javascript
复制
user@localhost $ gio mount -l
Volume(0): NIKON DSC D3200
  Type: GProxyVolume (GProxyVolumeMonitorGPhoto2)
  Mount(0): NIKON DSC D3200 -> gphoto2://%5Busb%3A002,007%5D/
    Type: GProxyShadowMount (GProxyVolumeMonitorGPhoto2)
Mount(1): NIKON DSC D3200 -> gphoto2://%5Busb%3A002,007%5D/
  Type: GDaemonMount

但是切换到root,它就变得不可见了

代码语言:javascript
复制
root@localhost $ gio mount -l
Volume(0): Filesystem root
  Type: GUnixVolume
  Mount(0): Filesystem root -> file:///
    Type: GUnixMount

因此,以root身份运行脚本,我无法使用以下命令卸载摄像头。

代码语言:javascript
复制
gio mount -s gphoto2
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-27 18:22:42

这是因为在作为根用户运行时,GIO使用不同的后端来枚举挂载,因为提供(例如) gphoto2支持的GVFS守护进程在用户会话(在D-Bus会话总线上)而不是系统范围内运行。所以root不能和他们说话。

以非root用户身份运行您的脚本,否则您将不得不执行一些管道操作,以便让您的脚本显式访问D-Bus会话总线(但只有在您的用户会话处于活动状态时,它才能工作)。

您不应该需要root权限来列出或卸载GIO挂载:权限由polkit控制,如果默认情况下不允许,您应该获得授权提示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60424287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档