我启动 x 服务器后,尝试以 root 用户身份从 gvfs 目录读取文件sudo xinit ./myscript -- :1
。
我一直收到权限被拒绝的错误。我尝试允许其他用户并允许 root 进入/etc/fuse.conf
,切换到具有 的用户su user
。它们不起作用。这是 Ubuntu 18.04 的全新安装。
有没有办法我可以以 root 用户身份访问已安装的设备,或者我可以之后以用户身份登录xinit
?
如果我执行,即使在之后whoami
我仍然可以看到。root
su user
#!/bin/sh
su user &
whoami &
cd ../../run/user/1000
ls gvfs
似乎无法通过 shell 脚本更改用户。可以使用-c
flag 以其他用户身份运行命令。
所以就su user -c /path/to/script.py
。
答案1
的替代方法su user -c /path/to/script.py
是禁用自动挂载并使用jmtpfs
或类似工具将设备挂载到另一个目录。