目前,我在一堆脚本中使用了很多sudo,因为有些脚本不允许交互输入(例如Makefiles),这就有点麻烦了。
与其完全禁用sudo密码,我还在想,如果gnome-keyring或类似的密钥环软件可以用来回忆密码的话,那就太好了。这是个好主意吗有可能吗?有更好的解决办法吗?
发布于 2013-01-09 16:48:12
sudo提供了一个超时选项。
/etc/sudoers:
Defaults:username timestamp_timeout=time_in_minutes如果希望保留根权限,只需将脚本作为root启动即可。我同意,这不是最理想的,但这实际上是你已经在做的事情。
相反,我宁愿把所有无需根特权就能做的事情组合在一起,把请求根特权的东西放在一起,然后在两个不同的时间启动它们.这是通常所做的工作:
./configure
make
sudo make install顺便说一句,如果你在Xorg的盒子上,你可以用gksudo代替sudo。但是,在剧本中埋葬"sudo"s并不是一个好做法。
发布于 2013-05-22 13:55:02
您所要求的声音是可行的,结合-A选项的sudo和程序gnome-keyring-query。
基本上,如果您使用选项-A,而不是从stdin读取密码,sudo将从可以使用SUDO_ASKPASS环境变量指定的外部程序读取密码。
这个外部程序可以是gnome-keyring-query,一个从gnome-keyring存储/获取密码的命令行工具。下面是gnome-keyring-query的帮助:
Usage:
gnome-keyring-query <mode> <name>
Parameters:
mode - either 'get' or 'set' (without quotes)
name - a name to identify the key
Notes:
If mode is 'get', then the password is dumped to stdout.
If mode is 'set', then the password is read from stdin.这里是您如何继续(我刚刚尝试,它的工作)。
gnome-keyring-query get sudoexport SUDO_ASKPASS=/usr/bin/sudo_askpasssudo -A而不是sudo。话虽如此,但请注意,如果您将密码保存在密钥环中并保持此密钥环打开,任何人都可以非常容易地读取您的sudo密码,或者使用这个gnome- keyring查询工具,或者仅仅通过启动海马。所以要非常小心。
https://unix.stackexchange.com/questions/60748
复制相似问题