如何向 nautilus 添加脚本以以管理员身份运行选定的文件(而不是以管理员身份打开)?如果可能的话,我想以管理员身份运行此文件而不输入密码。
答案1
有关在脚本上使用 sudo 或 gksudo 而无需密码的信息
您需要执行以下操作,在终端上输入sudo visudo
并在文件末尾添加如下行,指定您想要运行的命令而无需输入 sudo 密码:
<yourusername> hostname=NOPASSWD: <command1>, <command2>
现在,只要使用 输入 ,即可运行指定的命令,无需密码sudo
。
shutdown -r now
即:让您无需每次都输入 sudo 密码即可运行,您的用户名是“joedoe”
sudo visudo
在终端上输入joedoe hostname=NOPASSWD: shutdown -r now
在文件末尾添加新行您可以在脚本上使用它而
sudo shutdown -r now
不必输入 sudo 密码。
要创建脚本,请使用您最喜欢的编辑器创建<nameofyourscript>.sh
以下内容:
#! /bin/bash
sudo <commandsyouwanttorun1>
<commandsyouwanttorun2>
sudo<commandsyouwanttorun3>
使用 sudo 调用需要它的命令,只要在 行中添加该密码,它就不会要求输入NOPASSWD: <commmand1>, <command2>, etc
密码visudo
。
之后,您需要使用以下命令使其可执行:sudo chmod 755 <nameofyourscript>.sh
。
现在您可以在终端上运行您的脚本sh <nameofyourscript>.sh
,通过双击它并选择run
对话框或将它们放入您的脚本中,然后当您右键单击 nautilus 时~/.gnome2/nautilus-scripts/
它将在您的菜单中可用:scripts
创建一个无需密码的右键“以管理员身份打开”
要创建一个脚本,通过右键单击文件并使用管理员权限打开文件,并使文件不被要求输入密码,请创建包含以下内容的脚本:
#! /bin/bash
for file in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
gksudo "gnome-open $file" &
done
将其保存在您的 上~/.gnome2/nautilus-scripts/
,使用 使其可执行sudo chmod 755 ~/.gnome2/nautilus-scripts/<nameofyourscript>.sh
,使用sudo visudo
添加行<yourusername> ALL=NOPASSWD: /usr/bin/gnome-open
并保存文件。
您应该能够右键单击一个文件,移动到您的脚本文件夹并选择您刚刚创建的脚本以使用 root 权限打开该文件。gnome-open
将尽可能好地处理文件类型。
答案2
Nautilus 脚本通常被放置在$HOME/.gnome2/nautilus-scripts/
需要可执行的位置。话虽如此,以下脚本应该可以满足您的要求:
#!/bin/bash
IFS='
'
for file in $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS; do
gksudo -k "sh -c 'chmod +x $file; $file'"
done
您可以通过右键单击文件、将鼠标悬停在脚本菜单上,然后单击脚本的文件名来从 nautilus 访问该脚本$HOME/.gonme2/nautilus-scritps/
。不过,您仍然需要输入密码。
没有安全的您可以使用这种方式对任意文件执行此操作而无需输入密码。对于特殊命令,该过程描述于brunopereira81 的帖子这里使用 sudo,但取决于命令会导致系统易受攻击。如果您不介意(我强烈建议不要这样做),您可以设置ALL
要使用的命令NOPASSWD
,并将其替换gksudo
为sudo
。
答案3
您可以使用此 Nautilus 扩展。Nautilus-gksu 。
sudo apt-get install nautilus-gksu
安装它会在你的 nautilus 右键菜单中添加“以管理员身份打开”条目。
当您需要以 root 权限打开任何文件时,您只需右键单击该文件,选择“以管理员身份打开”,就这么简单。
欲了解更多酷炫的扩展,请访问:http://www.techdrivein.com/2010/09/6-useful-nautilus-extensions-and.html