从 Nautilus 脚本菜单启动时,无法使用 sudo 命令启动任何脚本

从 Nautilus 脚本菜单启动时,无法使用 sudo 命令启动任何脚本

有没有一种新方法可以通过基本脚本启动 nautilus?

#!/bin/bash
echo "Open File Manager as Root"
sudo nautilus

如果存在 sudo,则从 Nautilus 脚本上下文菜单打开不会启动 Nautilus(如果删除了 sudo,则从脚本上下文菜单打开 Nautilus),但是,如果作为程序运行,则会打开 Nautilus 并提示密码。

尝试过:

nautilus admin:///home/

尝试过这个,但对我不起作用,Nautilus 启动时只会生成一个错误。Policykit1 错误,没有设置 uid

建议这里但这些都不起作用,或者答案不明确而且我遗漏了一些东西。

笔记:当尝试从 Nautilus 脚本菜单使用 sudo 启动任何脚本时,这些脚本都不会启动。

尝试过:

sudo apt-get install nautilus-admin

这不起作用,Policykit1 错误

发现这个在这里以管理员身份打开上班这里

sudo add-apt-repository ppa:ubuntuhandbook1/gvfs
sudo apt install gvfs-fuse
sudo apt install gvfs

重启

如何将 GVfs 恢复为原始版本:

sudo apt install ppa-purge && sudo ppa-purge ppa:ubuntuhandbook1/gvfs

我发现这对我有用:

#!/bin/bash 
gnome-terminal -- sh -c 'echo "sudo nautilus" | bash'

现在,当我使用 Nautilus 脚本菜单时,我可以启动根 Nautilus 会话。

这也按以下建议起作用:

#!/bin/bash
pkexec env DISPLAY="$DISPLAY" XAUTHORITY="$XAUTHORITY" nautilus

答案1

我相信您正在寻找pkexec。这在我的系统上有效,以 root 身份启动nautilus并显示图形密码提示:

#!/bin/bash

pkexec env DISPLAY="$DISPLAY" XAUTHORITY="$XAUTHORITY" nautilus

您需要设置 DISPLAY 和 XAUTHORITY 变量才能启动 GUI 程序pkexec,但它应该像gksu以前一样工作。

答案2

尝试

sudo -E nautilus

我没有鹦鹉螺,但我自己的填充器就是这样工作的。

相关内容