使用 sudo 并以密码作为参数[关闭]
- 2024-10-11 08:36:00
- admin 原创
- 203
问题描述:
我想使用我的密码作为参数来运行 sudo,这样我就可以将其用于脚本。我试过了
sudo -S mypassword execute_command
但没有任何成功。有什么建议吗?
解决方案 1:
-S 开关使 sudo 从 STDIN 读取密码。这意味着你可以这样做
echo mypassword | sudo -S command
将密码传递给 sudo
但是,出于安全原因,其他人的建议不涉及将密码作为命令的一部分传递,例如检查用户是否是 root 用户,这可能是更好的想法
解决方案 2:
您可以s
为脚本设置位,以便它不需要sudo
以 root 身份运行(并且您不需要在脚本中写入 root 密码):
sudo chmod +s myscript
解决方案 3:
echo -e "YOURPASSWORD
" | sudo -S yourcommand
解决方案 4:
一个选项是使用 -A 标志执行 sudo。这会运行一个程序来询问密码。除了询问之外,您还可以编写一个脚本,让其直接输出密码,以便程序可以继续运行。
解决方案 5:
# Make sure only root can run our script
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root" 1>&2
exit 1
fi
相关推荐
热门文章
项目管理软件有哪些?
热门标签
云禅道AD